This event has ended. View the official site or create your own event → Check it out
This event has ended. Create your own
View analytic
Thursday, November 3 • 10:30am - 11:15am
Intrinsics, Metadata, and Attributes: The story continues!

Sign up or log in to save this to your schedule and see who's attending!

This talk is a sequel to my talk at the 2014 LLVM Developers' Meeting, in which I discussed @llvm.assume; scoped-noalias metadata; and parameter attributes that specify pointer alignment, dereferenceability, and more. The past two years have seen changes to the metadata representation itself (e.g. distinct vs. uniqued metadata), as well as new metadata that specify pointer alignment, dereferenceability, control loop optimizations, and more. Several new attributes and intrinsics allow for more-detailed control over pointer-aliasing and control-flow properties, and new intrinsics to support masked and scatter/gather memory accesses have been added. Support for older features, such as fast-math flags and the returned attribute, have been significantly extended. I'll explain the semantics of many of these new features, their intended uses, and a few ways they shouldn't be used. Finally, I'll discuss how Clang exposes and leverages these new features to encourage the generation of higher-performance code.


Hal Finkel

Argonne National Laboratory

Thursday November 3, 2016 10:30am - 11:15am
1 - General Session (Rm LL20ABC)

Attendees (53)