Any ELF target that overrides ASM_GENERATE_INTERNAL_LABEL is at risk of not building any more due to the recent elfos.h changes.
Those changes require that the label format generated by ASM_GENERATE_INTERNAL_LABEL and TARGET_ASM_INTERNAL_LABEL are in sync, but that is only being ensured for targets that use elfos.h as-is. It turns out that Linux/sparc's override is unnecessary, so just getting rid of it is the best thing to do. Eric, it seems that most if not all of the other ELF sparc targets will need something like this as well but I was only able to validate Linux at the moment. Committed to trunk. gcc/ * config/sparc/linux.h (ASM_GENERATE_INTERNAL_LABEL): Delete. * config/sparc/linux64.h (ASM_GENERATE_INTERNAL_LABEL): Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181307 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/config/sparc/linux.h | 9 --------- gcc/config/sparc/linux64.h | 9 --------- 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 73bec22..62ae4a1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2011-11-11 David S. Miller <da...@davemloft.net> + + * config/sparc/linux.h (ASM_GENERATE_INTERNAL_LABEL): Delete. + * config/sparc/linux64.h (ASM_GENERATE_INTERNAL_LABEL): Delete. + 2011-11-11 Jakub Jelinek <ja...@redhat.com> * config/i386/i386-protos.h (ix86_maybe_emit_epilogue_vzeroupper): diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h index 443c796..60dc869 100644 --- a/gcc/config/sparc/linux.h +++ b/gcc/config/sparc/linux.h @@ -118,15 +118,6 @@ do { \ #undef LOCAL_LABEL_PREFIX #define LOCAL_LABEL_PREFIX "." -/* This is how to store into the string LABEL - the symbol_ref name of an internal numbered label where - PREFIX is the class of label and NUM is the number within the class. - This is suitable for output with `assemble_name'. */ - -#undef ASM_GENERATE_INTERNAL_LABEL -#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \ - sprintf (LABEL, "*.L%s%ld", PREFIX, (long)(NUM)) - /* Define for support of TFmode long double. SPARC ABI says that long double is 4 words. */ diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h index bec279d..14966b9 100644 --- a/gcc/config/sparc/linux64.h +++ b/gcc/config/sparc/linux64.h @@ -236,15 +236,6 @@ do { \ #undef LOCAL_LABEL_PREFIX #define LOCAL_LABEL_PREFIX "." -/* This is how to store into the string LABEL - the symbol_ref name of an internal numbered label where - PREFIX is the class of label and NUM is the number within the class. - This is suitable for output with `assemble_name'. */ - -#undef ASM_GENERATE_INTERNAL_LABEL -#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \ - sprintf (LABEL, "*.L%s%ld", PREFIX, (long)(NUM)) - /* DWARF bits. */ /* Follow Irix 6 and not the Dwarf2 draft in using 64-bit offsets. -- 1.7.6.401.g6a319