[vta] fix ifcvt thinko in earlier vta patch

Alexandre Oliva aoliva@redhat.com
Fri Dec 5 07:30:00 GMT 2008


While arranging for debug insns to be skipped during ifcvt processing,
I ended up introducing an error: rather than scan for changes to the
src of an insn after the insn itself, as we should, I started scanning
one past it.  (modified_between_p starts after the given insn)

Fortunately a sequence such as:

(insn (set ... src))
(debug_insn ...)
(insn (set src ...))
...

exposed the error in -fcompare-debug testsuite runs.  Without the
debug_insn, the modification wasn't be noticed, and we mis-optimized
the testcase.

This patch fixes the error, restoring the expected behavior.  I'm
installing it in the branch.

With this patch, no regressions remain in i686 and x86_64 (-linux-gnu)
-fcompare-debug testsuite runs.  There are 5 regressions on ppc64 that
I'm yet to look into, and 2 on ia64, one of which is also present on
ppc64.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: vta-ifcvt-notes-between-debug-insns-adjust.patch
Type: text/x-patch
Size: 1362 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20081205/e0669ac1/attachment.bin>
-------------- next part --------------


-- 
Alexandre Oliva           http://www.lsd.ic.unicamp.br/~oliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist      Red Hat Brazil Compiler Engineer


More information about the Gcc-patches mailing list