On Wed, Jul 06, 2011 at 04:02:57PM +0100, Paulo J. Matos wrote: > I have finally ported my backend to the latest 4.6.1 after years of > trying to play catch with the latest release version. > > I am now fixing some details. > > A source file has a function called: lm_change_to_active which, when > compiled with -Os is inlined. > When I compile it with -fno-inline-functions > -fno-inline-small-functions, I get a label for the function in the > final assembler which looks like: > lm_change_to_active.isra?0?.constprop?1? > > Seems to be that GCC is adding .isra?0? and later .constprop?1? to > the name of the function as it goes. However, my assembler doesn't > like the two dots and the '?' in the middle of the label name very > much. > > Have I forgotten to define a hook or how I can tell GCC how to > create this name?
Look at clone_function_name in cgraph.c. If you assembler doesn't like the dots in the function names, you want to define NO_DOT_IN_LABEL, if it doesn't like dollars in names, you want to also define NO_DOLLAR_IN_LABEL. And, double check your ASM_FORMAT_PRIVATE_NAME definition and ASM_PN_FORMAT. Jakub