This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Static inline functions disappearing in new port


Hi,

I have a problem in my port of GCC to a custom
architecture, where functions declared static inline
are sometimes not inlined, and their code is not
emitted. My port now works for basic test programs as
long as that type of function declaration is not used.

Any ideas where I can start debugging this? I'm pretty
stumped. Compiling with -Winline for a file from bzip2
gives these messages:

dop-gcc -Wall -Winline -O2 -fomit-frame-pointer
-fno-strength-reduce -D_FILE_OFFSET_BITS=64 -c
blocksort.c
blocksort.c: In function `fallbackQSort3':
blocksort.c:83: warning: inlining failed in call to
`fallbackSimpleSort'
blocksort.c:162: warning: called from here
blocksort.c: In function `mainSimpleSort':
blocksort.c:400: warning: inlining failed in call to
`mainGtU'
blocksort.c:561: warning: called from here
blocksort.c:400: warning: inlining failed in call to
`mainGtU'
blocksort.c:575: warning: called from here
blocksort.c:400: warning: inlining failed in call to
`mainGtU'
blocksort.c:589: warning: called from here

If that is at all helpful. If compiled to assembly
language, the code for mainGtU, etc. is not there,
though a call instruction is generated to that code.
Increasing the inline limit 'solves' the problem by
forcing the functions inline.

(The port has a web page at
http://panic.cs.bris.ac.uk/dop).

TIA,

-Julian

________________________________________________________________________
Want to chat instantly with your online friends?  Get the FREE Yahoo!
Messenger http://mail.messenger.yahoo.co.uk


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]