About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
Publication
GCC and GNU Toolchain Developers' Summit 2005
Conference paper
Structure aliasing in GCC
Abstract
GCC has a well known deficiency in the ability to detect and optimize structure accesses (a.b) and pointer-to structure accesses (a - >b). We present a structure overlap determination algorithm and a structure access disambiguation algorithm for the SSA middle-end of GCC. We also present an algorithm for field sensitive points-to analysis. This paper also describes the changes necessary to make this information available to the tree optimizations. These algorithms can be applied both intrapro-cedurally and interprocedurally. They are efficient enough to be applied to whole programs. With these algorithms implemented, the GCC tree-SSA optimizers automatically take advantage of the new information and produce significantly better code when faced with structure accesses, and pointer to structure accesses, which are heavily used in both C and C++.