[Bug middle-end/113921] Output register of an "asm volatile goto" is incorrectly clobbered/discarded
torvalds@linux-foundation.org
gcc-bugzilla@gcc.gnu.org
Wed Feb 14 18:13:02 GMT 2024
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113921
--- Comment #2 from Linus Torvalds <torvalds@linux-foundation.org> ---
(In reply to Jakub Jelinek from comment #1)
> Bisection points to r12-5301-g045206450386bcd774db3bde0c696828402361c6
> making the problem go away,
Well, that certainly explains why I can't see the problem with my gcc 13.2.1.
It looks like that commit is in gcc-12.1.o and later:
git log --oneline --all --grep="tree-optimization/102880 - improve CD-DCE"
only returns that one commit, and
git name-rev --refs '*releases*' 045206450386b
says "gcc-12.1.0~3038".
So we could make our workaround option be something like
config GCC_ASM_GOTO_WORKAROUND
def_bool y
depends on CC_IS_GCC && GCC_VERSION < 120100
but maybe there is some backporting policy with gcc that my quick git check
missed?
More information about the Gcc-bugs
mailing list