]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
rs6000.h (EXCEPTION_SECTION): Move to...
authorGeoffrey Keating <geoffk@redhat.com>
Mon, 14 May 2001 03:40:04 +0000 (03:40 +0000)
committerGeoffrey Keating <geoffk@gcc.gnu.org>
Mon, 14 May 2001 03:40:04 +0000 (03:40 +0000)
* config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
* config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
* config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
(ASM_PREFERRED_EH_DATA_FORMAT): Define.
(EXCEPTION_SECTION): Define.

From-SVN: r42058

gcc/ChangeLog
gcc/config/rs6000/aix.h
gcc/config/rs6000/rs6000.h
gcc/config/rs6000/sysv4.h

index 205893e3f148c739d90606391817fd99d13432f1..a6929b444f6640685eec5a68f6afeb87c411fa35 100644 (file)
@@ -1,3 +1,11 @@
+2001-05-13  Geoff Keating  <geoffk@redhat.com>
+
+       * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
+       * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
+       * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
+       (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+       (EXCEPTION_SECTION): Define.
+
 2001-05-13  Zack Weinberg  <zackw@stanford.edu>
 
        * libgcc2.c, libgcc2.h: Restore __eprintf.  Label as used for
index 82c8744fc99cb55036935561141609560edfae45..4b0d28aaaf4406dfde0df6dd76bd2e21913d337b 100644 (file)
@@ -594,6 +594,12 @@ toc_section ()                                             \
        putc ('\n', ASM_OUT_FILE);                              \
   } while (0)
 
+/* Define the name of the section to use for the exception tables.
+   TODO: test and see if we can use read_only_data_section, if so,
+   remove this.  */
+
+#define EXCEPTION_SECTION data_section
+
 /* __throw will restore its own return address to be the same as the
    return address of the function that the throw is being made to.
    This is unfortunate, because we want to check the original
index fe48c0afc6a30c2b1270f500fad4043ddb4a4a5e..39c79c148ad766c91ba94d05f734248787de53f7 100644 (file)
@@ -2318,12 +2318,6 @@ extern int rs6000_compare_fp_p;
 
 #define TARGET_MEM_FUNCTIONS
 
-/* Define the name of the section to use for the exception tables.
-   TODO: test and see if we can use read_only_data_section, if so,
-   remove this.  */
-
-#define EXCEPTION_SECTION data_section
-
 /* Flag to say the TOC is initialized */
 extern int toc_initialized;
 
index 6cf6379805da9a012f0ab63cc14b9286c2f96ecd..64d41312f1853f4cc9baad9ae07c0585a5b183d6 100644 (file)
@@ -433,13 +433,6 @@ do {                                                                       \
 #define        MINIMAL_TOC_SECTION_ASM_OP \
   ((TARGET_RELOCATABLE || flag_pic) ? "\t.section\t\".got2\",\"aw\"" : "\t.section\t\".got1\",\"aw\"")
 
-/* Put relocatable data in .data, not .rodata so initialized pointers can be updated.  */
-/* Override elfos.h definition.  */
-#undef CONST_SECTION_ASM_OP
-#define        CONST_SECTION_ASM_OP \
-  ((TARGET_RELOCATABLE || flag_pic) ? "\t.section\t\".data\"\t# .rodata" : "\t.section\t\".rodata\"")
-
-
 #define        SDATA_SECTION_ASM_OP "\t.section\t\".sdata\",\"aw\""
 #define        SDATA2_SECTION_ASM_OP "\t.section\t\".sdata2\",\"a\""
 #define        SBSS_SECTION_ASM_OP \
@@ -1602,3 +1595,13 @@ do {                                                                     \
            = init_one_libfunc (SQRTTF_LIBCALL);                        \
       }                                                                        \
   } while (0)
+
+/* Select a format to encode pointers in exception handling data.  CODE
+   is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
+   true if the symbol may be affected by dynamic relocations.  */
+#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL)                                   \
+  (flag_pic                                                                 \
+   ? (((GLOBAL) ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4) \
+   : DW_EH_PE_absptr)
+#define EXCEPTION_SECTION readonly_data_section