aboutsummaryrefslogtreecommitdiff
path: root/benchmarks/common/crt.S
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks/common/crt.S')
-rw-r--r--benchmarks/common/crt.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/benchmarks/common/crt.S b/benchmarks/common/crt.S
index e35608e..24e3580 100644
--- a/benchmarks/common/crt.S
+++ b/benchmarks/common/crt.S
@@ -114,8 +114,11 @@ _start:
sll sp, sp, STKSHIFT
add sp, sp, tp
+ # offset thread pointer by thread pointer bias
lui t0, %tprel_hi(tls_start)
+ add t0, t0, tp, %tprel_add(tls_start)
add t0, t0, %tprel_lo(tls_start)
+ sub t0, t0, tp
sub tp, tp, t0
la t0, _init