summaryrefslogtreecommitdiff
path: root/gcc/config/mips/linux.h
diff options
context:
space:
mode:
authorclm <clm@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-14 10:46:50 +0000
committerclm <clm@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-14 10:46:50 +0000
commit10e7b2a210551aada690f62ba70602976a3332b3 (patch)
tree1e5592b544936dacfc7a9952467ed24b511b0c29 /gcc/config/mips/linux.h
parentcc215844dfb1f215e2c2db0adb0e14349074379b (diff)
downloadgcc-10e7b2a210551aada690f62ba70602976a3332b3.tar.gz
Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com>
* config/mips/elf.h, config/mips/elf64.h (CTORS_SECTION_ASM_OP): Define. (DTORS_SECTION_ASM_OP): Define. (EXTRA_SECTIONS): Define. (INVOKE__main): Define. (NAME__MAIN): Define. (SYMBOL__MAIN): Define. (EXTRA_SECTIONS_FUNCTIONS): Define. (SECTION_FUNCTION_TEMPLATE): Define. (ASM_OUTPUT_CONSTRUCTOR): Define. (ASM_OUTPUT_DESTRUCTOR): Define. (CTOR_LIST_BEGIN): Define. (CTOR_LIST_END): Define. (DTOR_LIST_BEGIN): Define. (DTOR_LIST_END): Define. (LIB_SPEC): Define. (STARTFILE_SPEC): Define. (ENDFILE_SPEC): Define. * config/mips/linux.h: Undefine all of the above. * config/mips/rtems64.h: Likewise. * config/mips/t-r3900: Likewise. * config/mips/t-elf: New file. * config/mips/vxworks.h: New file. * configure.in (mips-wrs-vxworks): Use mips/vxworks.h. (mips*-*-*elf*): Use t-elf instead of t-ecoff. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26446 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mips/linux.h')
-rw-r--r--gcc/config/mips/linux.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
index e780a4bb3b8..f4ed424a605 100644
--- a/gcc/config/mips/linux.h
+++ b/gcc/config/mips/linux.h
@@ -68,3 +68,32 @@ Boston, MA 02111-1307, USA. */
#undef SUBTARGET_ASM_SPEC
#define SUBTARGET_ASM_SPEC "-KPIC"
+
+/* Undefine the following which were defined in elf.h. This will cause the linux
+ port to continue to use collect2 for constructors/destructors. These may be removed
+ when .ctor/.dtor section support is desired. */
+
+#undef CTORS_SECTION_ASM_OP
+#undef DTORS_SECTION_ASM_OP
+
+#undef EXTRA_SECTIONS
+#define EXTRA_SECTIONS in_sdata, in_rdata
+
+#undef INVOKE__main
+#undef NAME__MAIN
+#undef SYMBOL__MAIN
+
+#undef EXTRA_SECTION_FUNCTIONS
+#define EXTRA_SECTION_FUNCTIONS \
+ SECTION_FUNCTION_TEMPLATE(sdata_section, in_sdata, SDATA_SECTION_ASM_OP) \
+ SECTION_FUNCTION_TEMPLATE(rdata_section, in_rdata, RDATA_SECTION_ASM_OP)
+
+#undef ASM_OUTPUT_CONSTRUCTOR
+#undef ASM_OUTPUT_DESTRUCTOR
+
+#undef CTOR_LIST_BEGIN
+#undef CTOR_LIST_END
+#undef DTOR_LIST_BEGIN
+#undef DTOR_LIST_END
+
+/* End of undefines to turn off .ctor/.dtor section support */