fix debugger tracking of shared libraries on mips with PIE main program
[musl] / src / signal / sh / sigsetjmp.s
1 .global sigsetjmp
2 .global __sigsetjmp
3 .type sigsetjmp,@function
4 .type __sigsetjmp,@function
5 sigsetjmp:
6 __sigsetjmp:
7         tst r5, r5
8         bt 9f
9
10         mov r4, r6
11         add #60, r6
12         sts pr, r0
13         mov.l r0, @r6
14         mov.l r8, @(4+8,r6)
15
16         mov.l 1f, r0
17 2:      bsrf r0
18          mov r4, r8
19
20         mov r0, r5
21         mov r8, r4
22         mov r4, r6
23         add #60, r6
24
25         mov.l @r6, r0
26         lds r0, pr
27
28         mov.l 3f, r0
29 4:      braf r0
30          mov.l @(4+8,r4), r8
31
32 9:      mov.l 5f, r0
33 6:      braf r0
34          nop
35
36 .align 2
37 .hidden ___setjmp
38 1:      .long ___setjmp@PLT-(2b+4-.)
39 .hidden __sigsetjmp_tail
40 3:      .long __sigsetjmp_tail@PLT-(4b+4-.)
41 5:      .long ___setjmp@PLT-(6b+4-.)