$ cat sections.c extern void f( char const* ); __attribute__(( section( ".text.g" ))) void g( void ) { f( "test" ); } __attribute__(( section( ".text.h" ))) void h( void ) { f( "test" ); }
$ /opt/gcc43/bin/gcc -S -Os -fno-merge-constants sections.c .section .rodata .LC0: .string "test" (...) .section .text.h,"ax",@progbits h: movl $.LC0, %edi jmp f (...) .section .text.g,"ax",@progbits g: movl $.LC0, %edi jmp f -- Summary: -fno-merge-constants doesn't work. Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pluto at agmk dot net GCC host triplet: x86_64-gnu-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34925