[Bug target/67750] undefined local label
pangbw at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Sep 28 17:30:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67750
--- Comment #3 from baoshan <pangbw at gmail dot com> ---
(In reply to Andrew Pinski from comment #2)
> Can you try 5.x?
With the test case this issue can not be reproduced.
But I still think the same problem is also existed in 5.x, it works by
coincidence:
In 4.9.0, the code(pseudo) is like this:
set r0, LCL0
...
set r0, rx
...
debug_insn var X (... r0)
The pass "shrink wrap" would move "set r0, rx" after the debug instruction
which eventually make GCC think the "r0" defined in "set r0, LCL0" is used by
the debug instruction.
But in 5.x, the two 'set' instructions don't use the same register, so even the
"set r0, rx" also has been moved after debug instruction, it would result the
undefined local label issue.
More information about the Gcc-bugs
mailing list