aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1994-11-23 02:39:37 +0000
committerDoug Evans <dje@gnu.org>1994-11-23 02:39:37 +0000
commit601774ce085c9e492abc26534e36676066bcc887 (patch)
tree64ea1d4020aba444bf18dff0cb8b9f8d985b530a
parenta8dd0e73ba186d6ce398077b7bc69a01ca2ff5f9 (diff)
downloadgcc-601774ce085c9e492abc26534e36676066bcc887.zip
gcc-601774ce085c9e492abc26534e36676066bcc887.tar.gz
gcc-601774ce085c9e492abc26534e36676066bcc887.tar.bz2
(ASM_OUTPUT_SECTION_NAME): Define.
From-SVN: r8553
-rw-r--r--gcc/config/mips/elf64.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/config/mips/elf64.h b/gcc/config/mips/elf64.h
index 4540d83..8a6736e 100644
--- a/gcc/config/mips/elf64.h
+++ b/gcc/config/mips/elf64.h
@@ -71,3 +71,18 @@ do { \
extern FILE *asm_out_text_file; \
fprintf (asm_out_text_file, "\t.etype\t0x%x;", (a)); \
} while (0)
+
+/* A C statement to output something to the assembler file to switch to section
+ NAME for object DECL which is either a FUNCTION_DECL, a VAR_DECL or
+ NULL_TREE. Some target formats do not support arbitrary sections. Do not
+ define this macro in such cases. */
+
+#define ASM_OUTPUT_SECTION_NAME(FILE, DECL, NAME) \
+do { \
+ if (TREE_CODE (DECL) == FUNCTION_DECL) \
+ fprintf (FILE, "\t.section %s,\"ax\",@progbits\n", (NAME)); \
+ else if (TREE_READONLY (DECL)) \
+ fprintf (FILE, "\t.section %s,\"a\",@progbits\n", (NAME)); \
+ else \
+ fprintf (FILE, "\t.section %s,\"aw\",@progbits\n", (NAME)); \
+} while (0)