Iteration of transformation passes over attributed program trees

From MaRDI portal





Transformations of attributed program trees form an essential part of compiler optimizations. A strategy of repeatedly applying alternate attribute evaluation and tree transformation phases is discussed. An attribute evaluation phase consists of a sequence of passes over the tree. A tree transformation phase consists of a single pass, which is never interrupted to carry out a re-evaluation. Both passes can be performed in parallel. This strategy requires a distinction between consistent (i.e., correct) and approximate attribute values. Tree transformations can be considered safe if they guarantee that the attribute values everywhere in the program tree will remain consistent or will become at least approximations of the consistent values, so that subsequent transformations can be applied correctly. This attribute evaluation and tree transformation strategy shows similarities with the evaluation methods for circular attribute grammars.











This page was built for publication: Iteration of transformation passes over attributed program trees

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q1111030)