summaryrefslogtreecommitdiffstats
path: root/gcc/config/pa/som.h
diff options
context:
space:
mode:
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-20 15:11:43 +0000
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-20 15:11:43 +0000
commit99c11254007ee9ded08e8aa42614e65b21fc7e59 (patch)
tree1817e2bb34df511800db73c9357763e37d6819a7 /gcc/config/pa/som.h
parenta9cfe67f14f290a263904ecf9e7b1f79e4a86f1d (diff)
downloadppe42-gcc-99c11254007ee9ded08e8aa42614e65b21fc7e59.tar.gz
ppe42-gcc-99c11254007ee9ded08e8aa42614e65b21fc7e59.zip
* config/pa/pa-protos.h (readonly_data, one_only_readonly_data_section,
one_only_data_section): Rename to som_readonly_data_section, som_one_only_readonly_data_section and som_one_only_data_section. * config/pa/pa.c (ONE_ONLY_TEXT_SECTION_ASM_OP, NEW_TEXT_SECTION_ASM_OP, DEFAULT_TEXT_SECTION_ASM_OP): Delete conditional defines. (som_text_section_asm_op): Replace ONE_ONLY_TEXT_SECTION_ASM_OP, NEW_TEXT_SECTION_ASM_OP and DEFAULT_TEXT_SECTION_ASM_OP with actual string values. (pa_select_section): Use renamed section functions. * config/pa/pa.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, SOM_READONLY_DATA_SECTION_FUNCTION, SOM_ONE_ONLY_READONLY_DATA_SECTION_FUNCTION, SOM_ONE_ONLY_DATA_SECTION_FUNCTION, FORGET_SECTION_FUNCTION): Define here ... * config/pa/som.h: ... not here. (DEFAULT_TEXT_SECTION_ASM_OP, NEW_TEXT_SECTION_ASM_OP, ONE_ONLY_TEXT_SECTION_ASM_OP, READONLY_DATA_ASM_OP, ONE_ONLY_READONLY_DATA_SECTION_ASM_OP, ONE_ONLY_DATA_SECTION_ASM_OP): Delete. (READONLY_DATA_SECTION): Use som_readonly_data_section. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86325 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/pa/som.h')
-rw-r--r--gcc/config/pa/som.h78
1 files changed, 5 insertions, 73 deletions
diff --git a/gcc/config/pa/som.h b/gcc/config/pa/som.h
index a87b2fda174..ff152aecf96 100644
--- a/gcc/config/pa/som.h
+++ b/gcc/config/pa/som.h
@@ -206,84 +206,15 @@ do { \
#define TARGET_ASM_FILE_START pa_som_file_start
-/* Select and return a TEXT_SECTION_ASM_OP string. */
+/* String to output before text. */
#define TEXT_SECTION_ASM_OP som_text_section_asm_op ()
-/* Output before code in the default text section. */
-#define DEFAULT_TEXT_SECTION_ASM_OP "\t.SPACE $TEXT$\n\t.SUBSPA $CODE$"
-
-/* Output before text in a new subspace. This allows the linker to
- place stubs between functions. */
-#define NEW_TEXT_SECTION_ASM_OP "\t.SPACE $TEXT$\n\t.NSUBSPA $CODE$"
-
-/* Output before text in a new one-only subspace. */
-#define ONE_ONLY_TEXT_SECTION_ASM_OP "\t.SPACE $TEXT$\n\
-\t.NSUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=24,COMDAT"
-
-/* Output before read-only data. */
-#define READONLY_DATA_ASM_OP "\t.SPACE $TEXT$\n\t.SUBSPA $LIT$\n"
-
-/* Output before one-only readonly data. We make readonly data one only
- by creating a new $LIT$ subspace in $TEXT$ with the comdat flag. */
-#define ONE_ONLY_READONLY_DATA_SECTION_ASM_OP "\t.SPACE $TEXT$\n\
-\t.NSUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=16,COMDAT\n"
-
-/* Output before writable data. */
+/* String to output before writable data. */
#define DATA_SECTION_ASM_OP "\t.SPACE $PRIVATE$\n\t.SUBSPA $DATA$\n"
-/* Output before one-only data. We make data one only by creating
- a new $DATA$ subspace in $PRIVATE$ with the comdat flag. */
-#define ONE_ONLY_DATA_SECTION_ASM_OP "\t.SPACE $PRIVATE$\n\
-\t.NSUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31,SORT=24,COMDAT\n"
-
-/* Output before uninitialized data. */
+/* String to output before uninitialized data. */
#define BSS_SECTION_ASM_OP "\t.SPACE $PRIVATE$\n\t.SUBSPA $BSS$\n"
-#define EXTRA_SECTIONS \
- in_readonly_data, \
- in_one_only_readonly_data, \
- in_one_only_data
-
-#define EXTRA_SECTION_FUNCTIONS \
- READONLY_DATA_FUNCTION \
- ONE_ONLY_READONLY_DATA_SECTION_FUNCTION \
- ONE_ONLY_DATA_SECTION_FUNCTION \
- FORGET_SECTION_FUNCTION
-
-#define READONLY_DATA_FUNCTION \
-void \
-readonly_data (void) \
-{ \
- if (in_section != in_readonly_data) \
- { \
- in_section = in_readonly_data; \
- fputs (READONLY_DATA_ASM_OP, asm_out_file); \
- } \
-} \
-
-#define ONE_ONLY_READONLY_DATA_SECTION_FUNCTION \
-void \
-one_only_readonly_data_section (void) \
-{ \
- in_section = in_one_only_readonly_data; \
- fputs (ONE_ONLY_READONLY_DATA_SECTION_ASM_OP, asm_out_file); \
-} \
-
-#define ONE_ONLY_DATA_SECTION_FUNCTION \
-void \
-one_only_data_section (void) \
-{ \
- in_section = in_one_only_data; \
- fputs (ONE_ONLY_DATA_SECTION_ASM_OP, asm_out_file); \
-}
-
-#define FORGET_SECTION_FUNCTION \
-void \
-forget_section (void) \
-{ \
- in_section = no_section; \
-} \
-
/* FIXME: HPUX ld generates incorrect GOT entries for "T" fixups
which reference data within the $TEXT$ space (for example constant
strings in the $LIT$ subspace).
@@ -296,7 +227,8 @@ forget_section (void) \
$TEXT$ space during PIC generation. Instead place all constant
data into the $PRIVATE$ subspace (this reduces sharing, but it
works correctly). */
-#define READONLY_DATA_SECTION (flag_pic ? data_section : readonly_data)
+#define READONLY_DATA_SECTION \
+ (flag_pic ? data_section : som_readonly_data_section)
/* We must not have a reference to an external symbol defined in a
shared library in a readonly section, else the SOM linker will
OpenPOWER on IntegriCloud