Loading…
Attending this event?
View analytic
Thursday, September 27 • 15:50 - 16:20
Dealing with aliasing using contracts

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

Telling the compiler when aliasing can or cannot happen is an important problem to solve. Lots of the crucial compiler optimizations such as load and store elimination, and less crucial such as vectorization rely on alias analysis. I will showcase some examples where alias analysis is playing an important role to get decent performance. Unfortunately, there is no standard way in C++ to give hints to the compiler about aliasing. There is the C restrict keyword which is supported by some compilers but it has its own shortcomings. In this talk, I will show some of the past approaches to move restrict keyword to C++ and propose a new solution which is based on contracts. I will also show some basic tricks how to use type based alias analysis and value types to help the compiler reason about aliasing until the related new features being accepted into the language.

Speakers
avatar for Gabor Horvath

Gabor Horvath

PhD Student, Eotvos Lorand University
Gabor started a Ph.D. in 2016. He is a contributor to research projects related to static analysis since 2012. He is a clang contributor, participated in Google Summer of Code twice as a student and twice as a mentor, interned for Apple and Microsoft. He teaches C++ and compiler construction... Read More →


Thursday September 27, 2018 15:50 - 16:20
F
  • Level Intermediate, Advanced, Expert
  • Tags C++20

Attendees (48)