about summary refs log tree commit diff
path: root/arch/microblaze/reloc.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012-10-15 21:01:48 -0400
committerRich Felker <dalias@aerifal.cx>2012-10-15 21:01:48 -0400
commit21284ec75db064d3f27fcd1d6ae37b613db61c43 (patch)
treefef641e851c42e43f5cca5d482b3b7b08377e7e9 /arch/microblaze/reloc.h
parent9ec4283b28cf676292fd5c6f681bef1e90e30c18 (diff)
downloadmusl-21284ec75db064d3f27fcd1d6ae37b613db61c43.tar.gz
musl-21284ec75db064d3f27fcd1d6ae37b613db61c43.tar.xz
musl-21284ec75db064d3f27fcd1d6ae37b613db61c43.zip
microblaze TLS relocation support, completely untested
Diffstat (limited to 'arch/microblaze/reloc.h')
-rw-r--r--arch/microblaze/reloc.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/microblaze/reloc.h b/arch/microblaze/reloc.h
index 67cb3c2e..81add5e9 100644
--- a/arch/microblaze/reloc.h
+++ b/arch/microblaze/reloc.h
@@ -24,6 +24,12 @@ static inline void do_single_reloc(
 	case R_MICROBLAZE_COPY:
 		memcpy(reloc_addr, (void *)sym_val, sym_size);
 		break;
+	case R_MICROBLAZE_TLSDTPMOD32:
+		*reloc_addr = def.dso ? def.dso->tls_id : self->tls_id;
+		break;
+	case R_MICROBLAZE_TLSDTPREL32:
+		*reloc_addr = def.sym->st_value + addend;
+		break;
 	}
 }