return default_elf_select_rtx_section (mode, x, align);
}
-/* Implement TARGET_ASM_FUNCTION_RODATA_SECTION.
-
- The complication here is that, with the combination TARGET_ABICALLS
- && !TARGET_ABSOLUTE_ABICALLS && !TARGET_GPWORD, jump tables will use
- absolute addresses, and should therefore not be included in the
- read-only part of a DSO. Handle such cases by selecting a normal
- data section instead of a read-only one. The logic apes that in
- default_function_rodata_section. */
-
-static section *
-mips_function_rodata_section (tree decl, bool)
-{
- if (!TARGET_ABICALLS || TARGET_ABSOLUTE_ABICALLS || TARGET_GPWORD)
- return default_function_rodata_section (decl, false);
-
- if (decl && DECL_SECTION_NAME (decl))
- {
- const char *name = DECL_SECTION_NAME (decl);
- if (DECL_COMDAT_GROUP (decl) && startswith (name, ".gnu.linkonce.t."))
- {
- char *rname = ASTRDUP (name);
- rname[14] = 'd';
- return get_section (rname, SECTION_LINKONCE | SECTION_WRITE, decl);
- }
- else if (flag_function_sections
- && flag_data_sections
- && startswith (name, ".text."))
- {
- char *rname = ASTRDUP (name);
- memcpy (rname + 1, "data", 4);
- return get_section (rname, SECTION_WRITE, decl);
- }
- }
- return data_section;
-}
-
/* Implement TARGET_IN_SMALL_DATA_P. */
static bool
#define TARGET_ASM_FUNCTION_EPILOGUE mips_output_function_epilogue
#undef TARGET_ASM_SELECT_RTX_SECTION
#define TARGET_ASM_SELECT_RTX_SECTION mips_select_rtx_section
-#undef TARGET_ASM_FUNCTION_RODATA_SECTION
-#define TARGET_ASM_FUNCTION_RODATA_SECTION mips_function_rodata_section
#undef TARGET_SCHED_INIT
#define TARGET_SCHED_INIT mips_sched_init