Thread (9 messages) 9 messages, 3 authors, 2008-05-13

Re: Build error: `.exit.text' referenced in section `.rodata'

From: Ivan Kokshaysky <hidden>
Date: 2008-05-13 14:31:12
Also in: linux-scsi

On Mon, May 12, 2008 at 09:01:44AM -0500, James Bottomley wrote:
quoted
With gcc 4.2.3 I get the same error. The noinline patch fixes it again.

   text    data     bss     dec     hex filename
6721720  624416  397508 7743644  76289c vmlinux-gcc-4.2.3
OK, so it's an unfixed bug in gcc, and it looks to be specific to the
alpha backend.
No, other architectures are just lucky that the compiler decides
a) not to generate a jump table for switch statement in sd_major() and/or
b) not to inline this function.

I have a similar test case that fails on x86 as well.
if the compiler chooses to inline a function, it has to
respect the sectional (and other constraints) of the outer function.
Can someone file a bug report with the relevant compiler people?
It would be good, but in the meantime the 'noinline' fix seems to be
a most sensible option...

Ivan.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help