X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfig%2Ftc-mn10300.c;h=4029c641b62a4f61b2554e7f275d708968a52c6e;hb=0a22ae8eb56103aec42f9263aa0e6737228d52d8;hp=0a4f26cb59c9a8b00ab64562b45bc3eca16bb83a;hpb=0c13fc49f4b89453b656caf9675010ddcb9fe3ad;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-mn10300.c b/gas/config/tc-mn10300.c index 0a4f26cb59..4029c641b6 100644 --- a/gas/config/tc-mn10300.c +++ b/gas/config/tc-mn10300.c @@ -281,6 +281,8 @@ static const struct reg_name other_registers[] = { "pc", AM33 }, { "psw", 0 }, { "sp", 0 }, + { "ssp", 0 }, + { "usp", 0 }, }; #define OTHER_REG_NAME_CNT ARRAY_SIZE (other_registers) @@ -2063,6 +2065,12 @@ keep_going: && fixups[i].reloc != BFD_RELOC_32_GOT_PCREL && fixups[i].reloc != BFD_RELOC_32_GOTOFF && fixups[i].reloc != BFD_RELOC_32_PLT_PCREL + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_GD + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_LD + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_LDO + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_GOTIE + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_IE + && fixups[i].reloc != BFD_RELOC_MN10300_TLS_LE && fixups[i].reloc != BFD_RELOC_MN10300_GOT32) { reloc_howto_type *reloc_howto; @@ -2501,6 +2509,18 @@ mn10300_parse_name (char const *name, reloc_type = BFD_RELOC_MN10300_GOT32; else if ((next_end = mn10300_end_of_match (next + 1, "PLT"))) reloc_type = BFD_RELOC_32_PLT_PCREL; + else if ((next_end = mn10300_end_of_match (next + 1, "tlsgd"))) + reloc_type = BFD_RELOC_MN10300_TLS_GD; + else if ((next_end = mn10300_end_of_match (next + 1, "tlsldm"))) + reloc_type = BFD_RELOC_MN10300_TLS_LD; + else if ((next_end = mn10300_end_of_match (next + 1, "dtpoff"))) + reloc_type = BFD_RELOC_MN10300_TLS_LDO; + else if ((next_end = mn10300_end_of_match (next + 1, "gotntpoff"))) + reloc_type = BFD_RELOC_MN10300_TLS_GOTIE; + else if ((next_end = mn10300_end_of_match (next + 1, "indntpoff"))) + reloc_type = BFD_RELOC_MN10300_TLS_IE; + else if ((next_end = mn10300_end_of_match (next + 1, "tpoff"))) + reloc_type = BFD_RELOC_MN10300_TLS_LE; else goto no_suffix;