diff options
Diffstat (limited to 'contrib/gcc/config/i386/i386.h')
-rw-r--r-- | contrib/gcc/config/i386/i386.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/contrib/gcc/config/i386/i386.h b/contrib/gcc/config/i386/i386.h index b00b0e5..efc956a 100644 --- a/contrib/gcc/config/i386/i386.h +++ b/contrib/gcc/config/i386/i386.h @@ -1286,6 +1286,22 @@ do \ } \ while (0) +/* Define this macro if a SYMBOL_REF representing a non-global + address must be marked specially. This is called for + compiler-generated local symbols, such as "__EXCEPTION_TABLE__". + + On i386, if using PIC, we use this to set the rtx's + SYMBOL_REF_FLAG, so that we may access it directly as + an offset from the GOT register. */ + +#define MARK_LOCAL_ADDRESS(X) \ +do \ + { \ + if (flag_pic && GET_CODE (X) == SYMBOL_REF) \ + SYMBOL_REF_FLAG (X) = 1; \ + } \ +while (0) + /* Initialize data used by insn expanders. This is called from init_emit, once for each function, before code is generated. For 386, clear stack slot assignments remembered from previous |