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]

Re: gcc/resource.c mark_target_live_regs Question


>>>>> "Jeffrey" == Jeffrey A Law <law@redhat.com> writes:

    Jeffrey>   In message <10102150239.AA27811@vlsi1.ultra.nyu.edu>you
    Jeffrey> write:
    >> It is accurate now.  But as I mentioned elsewhere, reorg
    >> destroys the cfg, so it doesn't matter.
    >> 
    >> I'm not sure that's right.  Yes, it affects flows, but I don't
    >> think enough to require that backtracking.

    Jeffrey> rth is right.  reorg completely scroggs the cfg.

Why is it still safe, then, to go back all the way to the previous
BARRIER and then use the global_live_at_start information for the
basic block that starts at this point?

We're making some assumption that reorg confuses everything, but not
across BARRIERs?  Is that it?

Jeffrey, if this turns out to be true, I suggest simply making
mark_target_live_regs mark all registers live if find_basic_block goes
back, say, more than 1000 instructions (use the new --param stuff) and
doesn't find a BARRIER.  Far better to bail out on these huge programs
than take forever compiling them.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com


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