Commit b6193c94 by Rainer Orth Committed by Rainer Orth

re PR debug/49887 (.debug_macro breaks many Solaris/SPARC tests)

	PR debug/49887
	* config/sol2.c (solaris_code_end): Rename to solaris_file_end.
	* config/sol2-protos.h: Likewise.
	* config/i386/i386.c (ix86_code_end) [TARGET_SOLARIS]: Don't call
	solaris_code_end.
	* config/i386/sol2.h [!USE_GAS] (TARGET_ASM_FILE_END): Redefine.
	* config/sparc/sparc.c (sparc_file_end) [TARGET_SOLARIS]: Call
	solaris_file_end.
	* config/sparc/sol2.h (TARGET_ASM_CODE_END): Remove.

From-SVN: r177020
parent 247eb06f
2011-08-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR debug/49887
* config/sol2.c (solaris_code_end): Rename to solaris_file_end.
* config/sol2-protos.h: Likewise.
* config/i386/i386.c (ix86_code_end) [TARGET_SOLARIS]: Don't call
solaris_code_end.
* config/i386/sol2.h [!USE_GAS] (TARGET_ASM_FILE_END): Redefine.
* config/sparc/sparc.c (sparc_file_end) [TARGET_SOLARIS]: Call
solaris_file_end.
* config/sparc/sol2.h (TARGET_ASM_CODE_END): Remove.
2011-08-01 Julian Brown <julian@codesourcery.com> 2011-08-01 Julian Brown <julian@codesourcery.com>
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST. * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST.
......
...@@ -8318,10 +8318,6 @@ ix86_code_end (void) ...@@ -8318,10 +8318,6 @@ ix86_code_end (void)
rtx xops[2]; rtx xops[2];
int regno; int regno;
#ifdef TARGET_SOLARIS
solaris_code_end ();
#endif
for (regno = AX_REG; regno <= SP_REG; regno++) for (regno = AX_REG; regno <= SP_REG; regno++)
{ {
char name[32]; char name[32];
...@@ -160,6 +160,12 @@ along with GCC; see the file COPYING3. If not see ...@@ -160,6 +160,12 @@ along with GCC; see the file COPYING3. If not see
#undef TARGET_ASM_NAMED_SECTION #undef TARGET_ASM_NAMED_SECTION
#define TARGET_ASM_NAMED_SECTION i386_solaris_elf_named_section #define TARGET_ASM_NAMED_SECTION i386_solaris_elf_named_section
#ifndef USE_GAS
/* Emit COMDAT group signature symbols for Sun as. */
#undef TARGET_ASM_FILE_END
#define TARGET_ASM_FILE_END solaris_file_end
#endif
/* Unlike GNU ld, Sun ld doesn't coalesce .ctors.N/.dtors.N sections, so /* Unlike GNU ld, Sun ld doesn't coalesce .ctors.N/.dtors.N sections, so
inhibit their creation. Also cf. sparc/sysv4.h. */ inhibit their creation. Also cf. sparc/sysv4.h. */
#ifndef USE_GLD #ifndef USE_GLD
......
/* Operating system specific prototypes to be used when targeting GCC for any /* Operating system specific prototypes to be used when targeting GCC for any
Solaris 2 system. Solaris 2 system.
Copyright 2004, 2007, 2010 Free Software Foundation, Inc. Copyright 2004, 2007, 2010, 2011 Free Software Foundation, Inc.
This file is part of GCC. This file is part of GCC.
...@@ -23,4 +23,4 @@ extern void solaris_register_pragmas (void); ...@@ -23,4 +23,4 @@ extern void solaris_register_pragmas (void);
extern void solaris_output_init_fini (FILE *, tree); extern void solaris_output_init_fini (FILE *, tree);
extern void solaris_assemble_visibility (tree, int); extern void solaris_assemble_visibility (tree, int);
extern void solaris_elf_asm_comdat_section (const char *, unsigned int, tree); extern void solaris_elf_asm_comdat_section (const char *, unsigned int, tree);
extern void solaris_code_end (void); extern void solaris_file_end (void);
...@@ -228,7 +228,7 @@ solaris_elf_asm_comdat_section (const char *name, unsigned int flags, tree decl) ...@@ -228,7 +228,7 @@ solaris_elf_asm_comdat_section (const char *name, unsigned int flags, tree decl)
for Sun as. With a few exceptions, this is already the case. To for Sun as. With a few exceptions, this is already the case. To
identify the missing ones without changing the affected frontents, identify the missing ones without changing the affected frontents,
remember the signature symbols and emit those not marked remember the signature symbols and emit those not marked
TREE_SYMBOL_REFERENCED in solaris_code_end. */ TREE_SYMBOL_REFERENCED in solaris_file_end. */
if (solaris_comdat_htab == NULL) if (solaris_comdat_htab == NULL)
solaris_comdat_htab = htab_create_alloc (37, comdat_hash, comdat_eq, NULL, solaris_comdat_htab = htab_create_alloc (37, comdat_hash, comdat_eq, NULL,
xcalloc, free); xcalloc, free);
...@@ -275,7 +275,7 @@ solaris_define_comdat_signature (void **slot, void *aux ATTRIBUTE_UNUSED) ...@@ -275,7 +275,7 @@ solaris_define_comdat_signature (void **slot, void *aux ATTRIBUTE_UNUSED)
/* Emit unreferenced COMDAT group signature symbols for Sun as. */ /* Emit unreferenced COMDAT group signature symbols for Sun as. */
void void
solaris_code_end (void) solaris_file_end (void)
{ {
if (solaris_comdat_htab == NULL) if (solaris_comdat_htab == NULL)
return; return;
......
...@@ -314,10 +314,6 @@ along with GCC; see the file COPYING3. If not see ...@@ -314,10 +314,6 @@ along with GCC; see the file COPYING3. If not see
#undef TARGET_ASM_NAMED_SECTION #undef TARGET_ASM_NAMED_SECTION
#define TARGET_ASM_NAMED_SECTION sparc_solaris_elf_asm_named_section #define TARGET_ASM_NAMED_SECTION sparc_solaris_elf_asm_named_section
/* Emit COMDAT group signature symbols for Sun as. */
#undef TARGET_ASM_CODE_END
#define TARGET_ASM_CODE_END solaris_code_end
/* Sun as requires doublequoted section names on SPARC. While GNU as /* Sun as requires doublequoted section names on SPARC. While GNU as
supports that, too, we prefer the standard variant. */ supports that, too, we prefer the standard variant. */
#undef SECTION_NAME_FORMAT #undef SECTION_NAME_FORMAT
......
...@@ -10019,6 +10019,10 @@ sparc_file_end (void) ...@@ -10019,6 +10019,10 @@ sparc_file_end (void)
if (NEED_INDICATE_EXEC_STACK) if (NEED_INDICATE_EXEC_STACK)
file_end_indicate_exec_stack (); file_end_indicate_exec_stack ();
#ifdef TARGET_SOLARIS
solaris_file_end ();
#endif
} }
#ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING #ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment