[Bug target/98667] gcc generates endbr32 invalid opcode on -march=i486
tedheadster at gmail dot com
gcc-bugzilla@gcc.gnu.org
Thu Jan 14 13:22:41 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98667
--- Comment #4 from Matthew Whitehead <tedheadster at gmail dot com> ---
It looks like /usr/bin/gdb 10.1 also has this opcode in it:
objdump -D /usr/bin/gdb | grep -B6 -A6 endbr32
60d7b5: 3f aas
60d7b6: 1a 3b sbb (%ebx),%bh
60d7b8: 2a 32 sub (%edx),%dh
60d7ba: 24 22 and $0x22,%al
60d7bc: 00 00 add %al,(%eax)
60d7be: 00 00 add %al,(%eax)
60d7c0: f3 0f 1e fb endbr32
60d7c4: ff a3 00 00 00 00 jmp *0x0(%ebx)
60d7ca: 66 0f 1f 44 00 00 nopw 0x0(%eax,%eax,1)
60d7d0: f3 0f 1e fb endbr32
60d7d4: ff 25 00 00 00 00 jmp *0x0
60d7da: 66 0f 1f 44 00 00 nopw 0x0(%eax,%eax,1)
60d7e0: ff b3 04 00 00 00 pushl 0x4(%ebx)
60d7e6: ff a3 08 00 00 00 jmp *0x8(%ebx)
60d7ec: 0f 1f 40 00 nopl 0x0(%eax)
60d7f0: f3 0f 1e fb endbr32
60d7f4: 68 00 00 00 00 push $0x0
60d7f9: e9 00 00 00 00 jmp 60d7fe
<_IO_stdin_used@@Base+0xd77fa>
60d7fe: 66 90 xchg %ax,%ax
60d800: ff 35 00 00 00 00 pushl 0x0
60d806: ff 25 00 00 00 00 jmp *0x0
60d80c: 0f 1f 40 00 nopl 0x0(%eax)
i686-pentium4-mpentium4-lenovo /usr/lib/debug/usr/bin # /usr/bin/gdb --version
GNU gdb (Gentoo 10.1 vanilla) 10.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
I will provide the gcc compile switches if asked, but it is long: 2156 items.
More information about the Gcc-bugs
mailing list