This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Live range Analysis based on tree representations


All:

The Live ranges info on tree SSA representation is important step towards the SSA based code motion optimizations.
As the code motion optimization based on the SSA representation effects the register pressure and reasons for performance
Bottleneck.

I am proposing the Live range Analysis based on the SSA representation. The Live range analysis traverses the dominator
Tree. The SSA and phi variables are represented based on dominance frontier info and the SSA representation reflects
The dominance info. Based on such dominance info Live range Overlapping Analysis can be derived.

Variable V intersects W if Vdef dominates the Wdef. The variable v intersects at point p if Vdef dominates P and Wdef
Dominates the P. If Vdef dominates Wdef and Wdef dominates Udef , then the Vdef dominates Udef and thus Live range
Of V intersect W and live range W intersect U, thus the live range V intersects the U. Such dominance info can be used to
Represent the Overlapping Live range Analysis and the register pressure is derived from Overlapping Live ranges based 
On the dominator info inherited from the SSA representation. The SSA representation is derived based on dominance
Frontier and the traversal of dominator tree based on SSA can derive the Overlapping Live ranges.

The above Overlapping Live range info can be used to derive the register pressure and the optimization based out of tree
Representation can use the above overlapping live ranges to take register pressure into account.

Thanks & Regards
Ajit


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]