diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2014-06-13 12:38:00 -0700 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2014-06-13 12:38:00 -0700 |
commit | 54f1b3cf509cd889905287cb8ce6c5ae33911a21 (patch) | |
tree | e39b1a7fa04db86a8215b7f9d4656d74e394aec0 /binutils-2.25/ld/testsuite/ld-frv/tls-1.s | |
parent | 2a6558a8ecfb81d75215b4ec7dc61113e12cfd5f (diff) | |
download | toolchain_binutils-54f1b3cf509cd889905287cb8ce6c5ae33911a21.tar.gz toolchain_binutils-54f1b3cf509cd889905287cb8ce6c5ae33911a21.tar.bz2 toolchain_binutils-54f1b3cf509cd889905287cb8ce6c5ae33911a21.zip |
Add upstream binutils-2.25 snapshot 4/4 2014
For MIPS -mmsa support
Change-Id: I08c4f002fa7b33dec85ed75956e6ab551bb03c96
Diffstat (limited to 'binutils-2.25/ld/testsuite/ld-frv/tls-1.s')
-rw-r--r-- | binutils-2.25/ld/testsuite/ld-frv/tls-1.s | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/binutils-2.25/ld/testsuite/ld-frv/tls-1.s b/binutils-2.25/ld/testsuite/ld-frv/tls-1.s new file mode 100644 index 00000000..a13c91bc --- /dev/null +++ b/binutils-2.25/ld/testsuite/ld-frv/tls-1.s @@ -0,0 +1,85 @@ + .section .tbss,"awT",@nobits + .align 4 + .globl i + .type i, @object + .size i, 4 +i: + .zero 4 + .align 4 + .type l, @object + .size l, 4 +l: + .zero 4 + .text + .globl _start +_start: + call #gettlsoff(x) + + sethi.p #gottlsdeschi(x), gr14 + setlo #gottlsdesclo(x), gr14 + ldd #tlsdesc(x)@(gr15, gr14), gr8 + calll #gettlsoff(x)@(gr8, gr0) + + lddi.p @(gr15, #gottlsdesc12(x)), gr8 + setlos #gottlsdesclo(x), gr14 + calll #gettlsoff(x)@(gr8, gr0) + + call #gettlsoff(i) + + sethi.p #gottlsdeschi(i), gr14 + setlo #gottlsdesclo(i), gr14 + ldd #tlsdesc(i)@(gr15, gr14), gr8 + calll #gettlsoff(i)@(gr8, gr0) + + lddi.p @(gr15, #gottlsdesc12(i)), gr8 + setlos #gottlsdesclo(i), gr14 + calll #gettlsoff(i)@(gr8, gr0) + + call #gettlsoff(l) + + sethi.p #gottlsdeschi(l), gr14 + setlo #gottlsdesclo(l), gr14 + ldd #tlsdesc(l)@(gr15, gr14), gr8 + calll #gettlsoff(l)@(gr8, gr0) + + lddi.p @(gr15, #gottlsdesc12(l)), gr8 + setlos #gottlsdesclo(l), gr14 + calll #gettlsoff(l)@(gr8, gr0) + + call #gettlsoff(0) + + sethi.p #gottlsdeschi(0), gr14 + setlo #gottlsdesclo(0), gr14 + ldd #tlsdesc(0)@(gr15, gr14), gr8 + calll #gettlsoff(0)@(gr8, gr0) + + lddi.p @(gr15, #gottlsdesc12(0)), gr8 + setlos #gottlsdesclo(0), gr14 + calll #gettlsoff(0)@(gr8, gr0) + + sethi.p #tlsmoffhi(l), gr8 + setlo #tlsmofflo(l), gr8 + + sethi.p #tlsmoffhi(i), gr9 + setlo #tlsmofflo(i), gr9 + + ldi @(gr15, #gottlsoff12(x)), gr9 + ldi @(gr15, #gottlsoff12(i)), gr9 + ldi @(gr15, #gottlsoff12(l)), gr9 + ldi @(gr15, #gottlsoff12(0)), gr9 + + sethi.p #gottlsoffhi(x), gr14 + setlo #gottlsofflo(x), gr14 + ld #tlsoff(x)@(gr15, gr14), gr9 + + sethi.p #gottlsoffhi(i), gr14 + setlo #gottlsofflo(i), gr14 + ld #tlsoff(i)@(gr15, gr14), gr9 + + sethi.p #gottlsoffhi(l), gr14 + setlo #gottlsofflo(l), gr14 + ld #tlsoff(l)@(gr15, gr14), gr9 + + sethi.p #gottlsoffhi(0), gr14 + setlo #gottlsofflo(0), gr14 + ld #tlsoff(0)@(gr15, gr14), gr9 |