diff options
Diffstat (limited to 'gcc/config/i386/i386.h')
-rw-r--r-- | gcc/config/i386/i386.h | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index b90f590b98a..009ef8fae57 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -34,6 +34,9 @@ Boston, MA 02111-1307, USA. */ ADDR_BEG, ADDR_END, PRINT_IREG, PRINT_SCALE, PRINT_B_I_S, and many that start with ASM_ or end in ASM_OP. */ +/* APPLE LOCAL fat builds */ +#define DEFAULT_TARGET_ARCH "i386" + /* Define the specific costs for a given cpu */ struct processor_costs { @@ -207,6 +210,11 @@ extern int target_flags; #endif #endif +/* APPLE LOCAL begin hot/cold partitioning */ +#define HAS_LONG_COND_BRANCH 1 +#define HAS_LONG_UNCOND_BRANCH 1 +/* APPLE LOCAL end hot/cold partitioning */ + /* Avoid adding %gs:0 in TLS references; use %gs:address directly. */ #define TARGET_TLS_DIRECT_SEG_REFS (target_flags & MASK_TLS_DIRECT_SEG_REFS) @@ -774,7 +782,8 @@ extern int x86_prefetch_sse; #define PARM_BOUNDARY BITS_PER_WORD /* Boundary (in *bits*) on which stack pointer should be aligned. */ -#define STACK_BOUNDARY BITS_PER_WORD +/* APPLE LOCAL 3232990 - compiler should obey -mpreferred-stack-boundary */ +#define STACK_BOUNDARY ((ix86_preferred_stack_boundary > 128) ? 128 : ix86_preferred_stack_boundary) /* Boundary (in *bits*) on which the stack pointer prefers to be aligned; the compiler cannot rely on having this alignment. */ @@ -825,7 +834,8 @@ extern int x86_prefetch_sse; #define BIGGEST_FIELD_ALIGNMENT 32 #endif #else -#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED) \ +/* APPLE LOCAL Macintosh alignment */ +#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED, FIRST_FIELD_P) \ x86_field_alignment (FIELD, COMPUTED) #endif @@ -1069,6 +1079,10 @@ do { \ : VALID_MMX_REG_MODE (MODE) && TARGET_MMX ? 1 \ : VALID_MMX_REG_MODE_3DNOW (MODE) && TARGET_3DNOW ? 1 : 0) +/* ??? Shouldn't be needed... */ +#define UNITS_PER_SIMD_WORD \ + (TARGET_SSE ? 16 : TARGET_MMX || TARGET_3DNOW ? 8 : 0) + #define VALID_FP_MODE_P(MODE) \ ((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode \ || (MODE) == SCmode || (MODE) == DCmode || (MODE) == XCmode) \ @@ -2485,7 +2499,10 @@ enum ix86_builtins IX86_BUILTIN_MONITOR, IX86_BUILTIN_MWAIT, - IX86_BUILTIN_MAX + /* APPLE LOCAL begin constant cfstrings */ + IX86_BUILTIN_MAX, + TARGET_BUILTIN_MAX = IX86_BUILTIN_MAX + /* APPLE LOCAL end constant cfstrings */ }; /* Max number of args passed in registers. If this is more than 3, we will |