diff options
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-i386.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 1a9a30e..8bc88f7 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1228,6 +1228,8 @@ tc_i386_fix_adjustable (fixP) || fixP->fx_r_type == BFD_RELOC_386_TLS_LDM || fixP->fx_r_type == BFD_RELOC_386_TLS_LDO_32 || fixP->fx_r_type == BFD_RELOC_386_TLS_IE_32 + || fixP->fx_r_type == BFD_RELOC_386_TLS_IE + || fixP->fx_r_type == BFD_RELOC_386_TLS_GOTIE || fixP->fx_r_type == BFD_RELOC_386_TLS_LE_32 || fixP->fx_r_type == BFD_RELOC_386_TLS_LE || fixP->fx_r_type == BFD_RELOC_X86_64_PLT32 @@ -1254,6 +1256,8 @@ tc_i386_fix_adjustable (fixP) #define BFD_RELOC_386_TLS_LDM 0 #define BFD_RELOC_386_TLS_LDO_32 0 #define BFD_RELOC_386_TLS_IE_32 0 +#define BFD_RELOC_386_TLS_IE 0 +#define BFD_RELOC_386_TLS_GOTIE 0 #define BFD_RELOC_386_TLS_LE_32 0 #define BFD_RELOC_386_TLS_LE 0 #define BFD_RELOC_X86_64_PLT32 0 @@ -3485,6 +3489,8 @@ lex_got (reloc, adjust) { "TPOFF", { BFD_RELOC_386_TLS_LE_32, 0, 0 } }, { "NTPOFF", { BFD_RELOC_386_TLS_LE, 0, 0 } }, { "DTPOFF", { BFD_RELOC_386_TLS_LDO_32, 0, 0 } }, + { "GOTNTPOFF",{ BFD_RELOC_386_TLS_GOTIE, 0, 0 } }, + { "INDNTPOFF",{ BFD_RELOC_386_TLS_IE, 0, 0 } }, { "GOT", { BFD_RELOC_386_GOT32, 0, BFD_RELOC_X86_64_GOT32 } } }; char *cp; @@ -4658,6 +4664,8 @@ md_apply_fix3 (fixP, valP, seg) case BFD_RELOC_386_TLS_GD: case BFD_RELOC_386_TLS_LDM: case BFD_RELOC_386_TLS_IE_32: + case BFD_RELOC_386_TLS_IE: + case BFD_RELOC_386_TLS_GOTIE: case BFD_RELOC_X86_64_GOT32: value = 0; /* Fully resolved at runtime. No addend. */ break; @@ -5138,6 +5146,8 @@ tc_gen_reloc (section, fixp) case BFD_RELOC_386_TLS_LDM: case BFD_RELOC_386_TLS_LDO_32: case BFD_RELOC_386_TLS_IE_32: + case BFD_RELOC_386_TLS_IE: + case BFD_RELOC_386_TLS_GOTIE: case BFD_RELOC_386_TLS_LE_32: case BFD_RELOC_386_TLS_LE: case BFD_RELOC_X86_64_32S: |