https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95671
Martin Liška <marxin at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW --- Comment #8 from Martin Liška <marxin at gcc dot gnu.org> --- I've got a reduced test-case: $ cat lbr.i int a, c, d; long b; void fn1() { for (; c; c++) { int e, f = 0; if (a) { e = !(d & 1ULL << 63); f = e; } d = fn1; b = f; } } $ gcc lbr.i -c -O2 -march=bdver2 -c && ~/Programming/linux/tools/objtool/objtool check --uaccess lbr.o lbr.i: In function ‘fn1’: lbr.i:12:7: warning: assignment to ‘int’ from ‘void (*)()’ makes integer from pointer without a cast [-Wint-conversion] 12 | d = fn1; | ^ lbr.o: warning: objtool: fn1()+0x26: can't find jump dest instruction at .text+0x36 disassembly: 26: 74 0e je 36 <fn1+0x36> 28: 48 0f ba fa 1f btc $0x1f,%rdx 2d: 8f ea f8 10 ca 1f 01 bextr $0x11f,%rdx,%rcx 34: 00 00 36: ff c0 inc %eax It seems to me bextr is not supported (parsed) by objtool?