+2010-02-17 Mikael Pettersson <mikpe@it.uu.se>
+
+ * config/sparc/gas.h: New file. Restore
+ TARGET_ASM_NAMED_SECTION to its ELF default.
+ * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
+ check !HAVE_GNU_AS.
+ * config/sparc/sparc.c (sparc_elf_asm_named_section):
+ Likewise. Add ATTRIBUTE_UNUSED to prototype.
+ * config.gcc (sparc*-*-linux*): Include sparc/gas.h
+ after sparc/sysv4.h.
+
2010-02-16 Paolo Bonzini <bonzini@gnu.org>
PR rtl-optimization/41917
use_fixproto=yes
;;
sparc-*-linux*) # SPARC's running GNU/Linux, libc6
- tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/gas.h sparc/linux.h"
extra_options="${extra_options} sparc/long-double-switch.opt"
tmake_file="${tmake_file} sparc/t-linux sparc/t-crtfm"
;;
need_64bit_hwint=yes
;;
sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux
- tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
+ tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/gas.h sparc/linux64.h"
extra_options="${extra_options} sparc/long-double-switch.opt"
tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm"
;;
--- /dev/null
+/* Definitions of target machine for GCC, for SPARC
+ using the GNU assembler. */
+
+/* Switch into a generic section. */
+#undef TARGET_ASM_NAMED_SECTION
+#define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
static void emit_save_or_restore_regs (int);
static void sparc_asm_function_prologue (FILE *, HOST_WIDE_INT);
static void sparc_asm_function_epilogue (FILE *, HOST_WIDE_INT);
-#if defined (OBJECT_FORMAT_ELF) && !HAVE_GNU_AS
-static void sparc_elf_asm_named_section (const char *, unsigned int, tree);
+#if defined (OBJECT_FORMAT_ELF)
+static void sparc_elf_asm_named_section (const char *, unsigned int, tree)
+ ATTRIBUTE_UNUSED;
#endif
static int sparc_adjust_cost (rtx, rtx, rtx, int);
emit_library_call (fun, LCT_NORMAL, VOIDmode, 1, lab, Pmode);
}
\f
-#if defined (OBJECT_FORMAT_ELF) && !HAVE_GNU_AS
+#if defined (OBJECT_FORMAT_ELF)
static void
sparc_elf_asm_named_section (const char *name, unsigned int flags,
tree decl)
#undef DTORS_SECTION_ASM_OP
#define DTORS_SECTION_ASM_OP "\t.section\t\".dtors\",#alloc,#write"
-#if !HAVE_GNU_AS
/* Switch into a generic section. */
#undef TARGET_ASM_NAMED_SECTION
#define TARGET_ASM_NAMED_SECTION sparc_elf_asm_named_section
-#endif
#undef ASM_OUTPUT_ALIGNED_BSS
#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \