This is the mail archive of the
mailing list for the GCC project.
Re: Live range Analysis based on tree representations
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Ajit Kumar Agarwal <ajit dot kumar dot agarwal at xilinx dot com>
- Cc: Jeff Law <law at redhat dot com>, "vmakarov at redhat dot com" <vmakarov at redhat dot com>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, Vinod Kathail <vinodk at xilinx dot com>, Shail Aditya Gupta <shailadi at xilinx dot com>, Vidhumouli Hunsigida <vidhum at xilinx dot com>, Nagaraju Mekala <nmekala at xilinx dot com>
- Date: Wed, 2 Sep 2015 14:50:42 +0200
- Subject: Re: Live range Analysis based on tree representations
- Authentication-results: sourceware.org; auth=none
- References: <37378DC5BCD0EE48BA4B082E0B55DFAA429746E3 at XAP-PVEXMBX02 dot xlnx dot xilinx dot com>
On Tue, Sep 1, 2015 at 7:56 PM, Ajit Kumar Agarwal
> 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
> 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.
See tree-ssa-live.c (which computes a conflict graph for SSA coalescing).
> Thanks & Regards