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] |
On Mon, May 31, 2010 at 12:31 PM, Vladimir Makarov<vmakarov@redhat.com> wrote:If you mean what part of hard register lives, then as I know there is no such infrastructure code. As I remember Ken Zadeck tried to implement something analogous in the old RA. You could try to find this code in archives.
H.J. Lu wrote:My impression is hard_regno_nregs tells me that number of
Hi,
I am working on generating vzeroupper to avoid AVX->SSE transition penalty.
I have generated vzeroupper on function return as well as function call. I am working on a backend pass to eliminate those vzeroupper instructions when I can prove that the upper 128bits of AVX registers are dead at the point where vzeroupper is added. To do that, I need to find out if a register is live at the beginning of a basic block as well as its size. I thought dataflow might give me such info. But I couldn't find a way to access such information. Does anyone have any pointers?
DF_LR_IN (bb) returns bitmap of livings prseudo regnos. DF_LIVE_IN (bb) takes availability info into account.
Size of hard registers is defined by hard_regno_nregs.
hard registers given machine mode occupy. It doesn't tell me
the live size of a hard register at the beginning of a basic
block. How do I get this information?
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |