diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2010-07-23 16:49:19 -0500 |
---|---|---|
committer | Mark Hatle <mark.hatle@windriver.com> | 2010-07-23 16:49:19 -0500 |
commit | 909470ee441237563d6236c505cb2d02ddc48704 (patch) | |
tree | cbff05467d98e8dd7ac05c13317003bfadafb7ef | |
parent | ec0ae1e0af629728ec83d2c5d543316d5a310e63 (diff) | |
download | prelink-cross-909470ee441237563d6236c505cb2d02ddc48704.tar.gz prelink-cross-909470ee441237563d6236c505cb2d02ddc48704.tar.bz2 prelink-cross-909470ee441237563d6236c505cb2d02ddc48704.zip |
MIPS64 TLS PLT relocs don't appear to be handled in the rtldcross_prelink_r185
Found during code inspection, other paths check for both 32 and 64 bit
TLS PLT relocs on EM_MIPS, except this path. So it should be reasonable
to make this change, even without a reproducer...
2010-07-23 Mark Hatle <mark.hatle@windriver.com>
* src/ld-libs.c: (reloc_type_class) Handle MIPS64 TLS PLT relocs
-rw-r--r-- | trunk/ChangeLog.cross | 3 | ||||
-rw-r--r-- | trunk/src/ld-libs.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/trunk/ChangeLog.cross b/trunk/ChangeLog.cross index 12ff11b..b69c3c1 100644 --- a/trunk/ChangeLog.cross +++ b/trunk/ChangeLog.cross @@ -1,3 +1,6 @@ +2010-07-23 Mark Hatle <mark.hatle@windriver.com> + * src/ld-libs.c: Handle MIPS64 TLS PLT relocs + 2010-07-22 Mark Hatle <mark.hatle@windriver.com> * src/dso.c: Add DSO_READONLY conditionals * src/dso-readonly.c: remove diff --git a/trunk/src/ld-libs.c b/trunk/src/ld-libs.c index fe758b8..5526b2f 100644 --- a/trunk/src/ld-libs.c +++ b/trunk/src/ld-libs.c @@ -180,8 +180,11 @@ reloc_type_class (int type, int machine) return ELF_RTYPE_CLASS_COPY; case R_MIPS_JUMP_SLOT: case R_MIPS_TLS_DTPMOD32: + case R_MIPS_TLS_DTPMOD64: case R_MIPS_TLS_DTPREL32: + case R_MIPS_TLS_DTPREL64: case R_MIPS_TLS_TPREL32: + case R_MIPS_TLS_TPREL64: return ELF_RTYPE_CLASS_PLT; default: return 0; |