On Thu, 27 Mar 2014 09:41:28 -0600 Jeff Law <l...@redhat.com> wrote: > On 03/27/14 07:50, Felix Yang wrote: > > Hello, > > > > I find DCE in sched2 is disabled for C6X backend. Is this a > > performance consideration? Or a GCC BUG? > > And under what situations should we disable DCE in sched2? > > Can anyone explain this? Many thanks. > In general, if a port is disabling an optimization like this, then > there's something wrong with the port. > > As to this specific issue, git/svn blame ought to point you at > whomever wrote this code and you can ping them directly.
IIRC, sched2 is run from md-reorg for C6X. The same trick is used by the ia-64 backend -- it is to avoid late passes moving instructions around after scheduling (breaking the arrangement of insns into dispatch packets). The md-reorg pass is one of the last things the compiler does before emitting assembly. HTH, Julian