summaryrefslogtreecommitdiff
path: root/gcc/config/i386/i386-interix.h
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-12 19:47:45 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-12 19:47:45 +0000
commitf4518eb40747ddb093927e2f315ae83b8d467424 (patch)
treea905f7a78f91acab78a89554e6ab6dee47475959 /gcc/config/i386/i386-interix.h
parent48c8eb33c428dffc0d06921805bd70a5d791efe5 (diff)
downloadgcc-f4518eb40747ddb093927e2f315ae83b8d467424.tar.gz
* config/i386/i386-interix.h (EH_FRAME_IN_DATA_SECTION): Define.
(TARGET_ASM_NAMED_SECTION, RETURN_IN_MEMORY) Define. (DEFAULT_PCC_STRUCT_RETURN): Define as 0. * config/i386/t-interix (USER_H): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@52237 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/i386/i386-interix.h')
-rw-r--r--gcc/config/i386/i386-interix.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/config/i386/i386-interix.h b/gcc/config/i386/i386-interix.h
index a97646c5472..2b703f3beda 100644
--- a/gcc/config/i386/i386-interix.h
+++ b/gcc/config/i386/i386-interix.h
@@ -232,6 +232,7 @@ Boston, MA 02111-1307, USA. */
#undef LD_INIT_SWITCH
#undef LD_FINI_SWITCH
+#define EH_FRAME_IN_DATA_SECTION
/* Note that there appears to be two different ways to support const
sections at the moment. You can either #define the symbol
@@ -405,10 +406,10 @@ extern void i386_pe_unique_section ();
#define UNIQUE_SECTION(DECL,RELOC) i386_pe_unique_section (DECL, RELOC)
#define SUPPORTS_ONE_ONLY 1
+#endif /* 0 */
/* Switch into a generic section. */
#define TARGET_ASM_NAMED_SECTION default_pe_asm_named_section
-#endif /* 0 */
/* DWARF2 Unwinding doesn't work with exception handling yet. */
#define DWARF2_UNWIND_INFO 0
@@ -416,3 +417,11 @@ extern void i386_pe_unique_section ();
/* Don't assume anything about the header files. */
#define NO_IMPLICIT_EXTERN_C
+/* MSVC returns structs of up to 8 bytes via registers. */
+
+#define DEFAULT_PCC_STRUCT_RETURN 0
+
+#undef RETURN_IN_MEMORY
+#define RETURN_IN_MEMORY(TYPE) \
+ (TYPE_MODE (TYPE) == BLKmode || \
+ (AGGREGATE_TYPE_P (TYPE) && int_size_in_bytes(TYPE) > 8 ))