Restructuring of how compiler phases are organized, use of pre/post conditions

Description

This issue supersedes RFE 1147138.

Currently compiler phases may call phases within themselves. Compiler phases are also wrapped in optimizations plan elements which is beneficial in creating composite elements (in particular for producing high-level compiler phase timing information). This wrapping and calling of phases makes it confusing as to where certain properties of IR hold. It means also that we may recompute side data structures for the IR, such as dominator information, when there is no need. We should create a scheme where we can organize compiler phases and have phases inserted into compiler plans when we know we require certain side data structures to be present. Examples of properties that can be conditions are:

  • SSA flavor

  • liveness

  • dominators

  • register lists

Environment

None

Activity

Show:

Ian RogersSeptember 19, 2007 at 11:05 AM

There are also useful comments in the sourceforge RFE tracker 1571187.

Details

Assignee

Reporter

Fix versions

Affects versions

Priority

Created September 19, 2007 at 10:50 AM
Updated March 30, 2015 at 8:25 PM