Re: objtool warning for wanxl_pci_init_one with gcc-7
From: Josh Poimboeuf
Date: Fri Jan 06 2017 - 12:34:36 EST
On Wed, Jan 04, 2017 at 12:19:20PM +0100, Arnd Bergmann wrote:
> Hi Josh,
>
> I'm getting a new warning with the latest gcc-7 snapshot, I think this
> is a false positive:
>
> drivers/net/wan/wanxl.o: warning: objtool: wanxl_pci_init_one()+0x9d2: sibling call from callable instruction with changed frame pointer
>
> # /git/arm-soc/drivers/net/wan/wanxl.c:133: switch((value >> STATUS_CABLE_PM_SHIFT) & 0x7) {
> movl %eax, %ecx # value, _314
> movl %eax, %r10d # value, _224
> movq (%r15), %rdi # MEM[base: _546, offset: 0B], pretmp_490
> shrl $5, %ecx #, _314
> andl $8, %r10d #, _224
> movl %ecx, %edx # _314, tmp377
> andl $7, %edx #, tmp377
> jmp *(%r14,%rdx,8) #
> .section .rodata
> .align 8
> .align 4
> .L280:
> .quad .L278
> .quad .L278
> .quad .L279
> .quad .L281
> .quad .L282
> .quad .L305
> .quad .L278
> .quad .L306
> .text
Thanks Arnd, will take a look at it. This reminds me that I need to
ping the gcc guys about better annotations of switch statement jump
tables.
--
Josh