openbsd-ports/lang/egcs-snapshot/patches/patch-core-pa-symb
espie 8d3240fe35 Get symbolic constants from cvs-current, in order to prepare openbsd
configuration for inclusion into egcs mainstream.
1999-02-06 21:34:44 +00:00

165 lines
6.1 KiB
Plaintext

--- gcc/config/pa/pa.h.orig Sat Feb 6 22:30:36 1999
+++ gcc/config/pa/pa.h Sat Feb 6 22:32:08 1999
@@ -62,14 +62,16 @@
/* compile code for HP-PA 1.1 ("Snake") */
-#define TARGET_SNAKE (target_flags & 1)
+#define MASK_SNAKE 1
+#define TARGET_SNAKE (target_flags & MASK_SNAKE)
/* Disable all FP registers (they all become fixed). This may be necessary
for compiling kernels which perform lazy context switching of FP regs.
Note if you use this option and try to perform floating point operations
the compiler will abort! */
-#define TARGET_DISABLE_FPREGS (target_flags & 2)
+#define MASK_DISABLE_FPREGS 2
+#define TARGET_DISABLE_FPREGS (target_flags & MASK_DISABLE_FPREGS)
/* Generate code which assumes that calls through function pointers will
never cross a space boundary. Such assumptions are generally safe for
@@ -78,18 +80,21 @@
or uses nested functions!
This is also used to trigger aggressive unscaled index addressing. */
-#define TARGET_NO_SPACE_REGS (target_flags & 4)
+#define MASK_NO_SPACE_REGS 4
+#define TARGET_NO_SPACE_REGS (target_flags & MASK_NO_SPACE_REGS)
/* Allow unconditional jumps in the delay slots of call instructions. */
-#define TARGET_JUMP_IN_DELAY (target_flags & 8)
+#define MASK_JUMP_IN_DELAY 8
+#define TARGET_JUMP_IN_DELAY (target_flags & MASK_JUMP_IN_DELAY)
/* Optimize for space. Currently this only turns on out of line
prologues and epilogues. */
-#define TARGET_SPACE (target_flags & 16)
+#define MASK_SPACE 16
+#define TARGET_SPACE (target_flags & MASK_SPACE)
/* Disable indexed addressing modes. */
-
-#define TARGET_DISABLE_INDEXING (target_flags & 32)
+#define MASK_DISABLE_INDEXING 32
+#define TARGET_DISABLE_INDEXING (target_flags & MASK_DISABLE_INDEXING)
/* Emit code which follows the new portable runtime calling conventions
HP wants everyone to use for ELF objects. If at all possible you want
@@ -97,29 +102,32 @@
Note TARGET_PORTABLE_RUNTIME also forces all calls to use inline
long-call stubs which is quite expensive. */
-
-#define TARGET_PORTABLE_RUNTIME (target_flags & 64)
+#define MASK_PORTABLE_RUNTIME 64
+#define TARGET_PORTABLE_RUNTIME (target_flags & MASK_PORTABLE_RUNTIME)
/* Emit directives only understood by GAS. This allows parameter
relocations to work for static functions. There is no way
to make them work the HP assembler at this time. */
-
-#define TARGET_GAS (target_flags & 128)
+#define MASK_GAS 128
+#define TARGET_GAS (target_flags & MASK_GAS)
/* Emit code for processors which do not have an FPU. */
-
-#define TARGET_SOFT_FLOAT (target_flags & 256)
+#define MASK_SOFT_FLOAT 256
+#define TARGET_SOFT_FLOAT (target_flags & MASK_SOFT_FLOAT)
/* Use 3-insn load/store sequences for access to large data segments
in shared libraries on hpux10. */
-#define TARGET_LONG_LOAD_STORE (target_flags & 512)
+#define MASK_LONG_LOAD_STORE 512
+#define TARGET_LONG_LOAD_STORE (target_flags & MASK_LONG_LOAD_STORE)
/* Use a faster sequence for indirect calls. */
-#define TARGET_FAST_INDIRECT_CALLS (target_flags & 1024)
+#define MASK_FAST_INDIRECT_CALLS 1024
+#define TARGET_FAST_INDIRECT_CALLS (target_flags & MASK_FAST_INDIRECT_CALLS)
/* Generate code with big switch statements to avoid out of range branches
occurring within the switch table. */
-#define TARGET_BIG_SWITCH (target_flags & 2048)
+#define MASK_BIG_SWITCH 2048
+#define TARGET_BIG_SWITCH (target_flags & MASK_BIG_SWITCH)
/* Macro to define tables used to set the flags.
This is a list in braces of pairs in braces,
@@ -128,37 +136,37 @@
An empty string NAME is used to identify the default VALUE. */
#define TARGET_SWITCHES \
- {{"snake", 1}, \
- {"nosnake", -1}, \
- {"pa-risc-1-0", -1}, \
- {"pa-risc-1-1", 1}, \
- {"disable-fpregs", 2}, \
- {"no-disable-fpregs", -2}, \
- {"no-space-regs", 4}, \
- {"space-regs", -4}, \
- {"jump-in-delay", 8}, \
- {"no-jump-in-delay", -8}, \
- {"space", 16}, \
- {"no-space", -16}, \
- {"disable-indexing", 32}, \
- {"no-disable-indexing", -32},\
- {"portable-runtime", 64}, \
- {"no-portable-runtime", -64},\
- {"gas", 128}, \
- {"no-gas", -128}, \
- {"soft-float", 256}, \
- {"no-soft-float", -256}, \
- {"long-load-store", 512}, \
- {"no-long-load-store", -512},\
- {"fast-indirect-calls", 1024},\
- {"no-fast-indirect-calls", -1024},\
- {"big-switch", 2048}, \
- {"no-big-switch", -2048}, \
+ {{"snake", MASK_SNAKE}, \
+ {"nosnake", -MASK_SNAKE}, \
+ {"pa-risc-1-0", -MASK_SNAKE}, \
+ {"pa-risc-1-1", MASK_SNAKE}, \
+ {"disable-fpregs", MASK_DISABLE_FPREGS}, \
+ {"no-disable-fpregs", -MASK_DISABLE_FPREGS}, \
+ {"no-space-regs", MASK_NO_SPACE_REGS}, \
+ {"space-regs", -MASK_NO_SPACE_REGS}, \
+ {"jump-in-delay", MASK_JUMP_IN_DELAY}, \
+ {"no-jump-in-delay", -MASK_JUMP_IN_DELAY}, \
+ {"space", MASK_SPACE}, \
+ {"no-space", -MASK_SPACE}, \
+ {"disable-indexing", MASK_DISABLE_INDEXING}, \
+ {"no-disable-indexing", -MASK_DISABLE_INDEXING},\
+ {"portable-runtime", MASK_PORTABLE_RUNTIME}, \
+ {"no-portable-runtime", -MASK_PORTABLE_RUNTIME},\
+ {"gas", MASK_GAS}, \
+ {"no-gas", -MASK_GAS}, \
+ {"soft-float", MASK_SOFT_FLOAT}, \
+ {"no-soft-float", -MASK_SOFT_FLOAT}, \
+ {"long-load-store", MASK_LONG_LOAD_STORE}, \
+ {"no-long-load-store", -MASK_LONG_LOAD_STORE},\
+ {"fast-indirect-calls", MASK_FAST_INDIRECT_CALLS},\
+ {"no-fast-indirect-calls", -MASK_FAST_INDIRECT_CALLS},\
+ {"big-switch", MASK_BIG_SWITCH}, \
+ {"no-big-switch", -MASK_BIG_SWITCH}, \
{"linker-opt", 0}, \
{ "", TARGET_DEFAULT | TARGET_CPU_DEFAULT}}
#ifndef TARGET_DEFAULT
-#define TARGET_DEFAULT 0x88 /* TARGET_GAS + TARGET_JUMP_IN_DELAY */
+#define TARGET_DEFAULT (MASK_GAS | MASK_JUMP_IN_DELAY)
#endif
#ifndef TARGET_CPU_DEFAULT
@@ -238,7 +246,7 @@
fprintf (FILE, \
"\t.stabs \"\",%d,0,0,L$text_end0000\nL$text_end0000:\n", N_SO)
-#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & 1) == 0
+#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_SNAKE) == 0
#define CPP_SPEC "%{msnake:-D__hp9000s700 -D_PA_RISC1_1}\
%{mpa-risc-1-1:-D__hp9000s700 -D_PA_RISC1_1}\
%{!ansi: -D_HPUX_SOURCE -D_HIUX_SOURCE}\