inline-unit-growth trouble
Christopher Jefferson
caj@cs.york.ac.uk
Fri Apr 15 19:05:00 GMT 2005
Richard Guenther wrote:
> On 4/15/05, Andreas Krebbel <krebbel1@de.ibm.com> wrote:
>
>>Hi,
>>
>>on S/390 we have currently a plenty of testsuite failures
>>due to inlining effects.
>>
>>ld complains about testcases which try to link two files containing the same function
>>in .gnu.linkonce sections but with different code sizes. The sizes differ due
>>to different inlining decisions. The problem is that inlining maybe
>>prevented by global limits which maybe exceeded for one file but not for
>>the other.
>>The actual problem occurred with the "inline-unit-growth" limit which
>>may prevent inlining for a function in one file and allow it for the same
>>function in another.
>>
>>I'm not sure how to fix that issue. To my mind the whole concept of per unit
>>limits influencing local inlining decisions seems a bit questionable.
>
>
> Why does the linker not just pick either of the functions? The size
> difference should not matter.
>
Is it really the job of the linker to choose between different
implementations of a function? It seems to me that this might lead to
very, very difficult to track down bugs....
More information about the Gcc
mailing list