5 .comm _ZN14__interception11real_setjmpE,8,8
7 .type setjmp, @function
10 // save env parameters
17 // calculate and save pointer to GOT
18 lui $gp,%hi(%neg(%gp_rel(setjmp)))
20 daddiu $gp,$gp,%lo(%neg(%gp_rel(setjmp)))
29 // call tsan interceptor
39 // load pointer of libc setjmp to t9
40 dla $t9,(_ZN14__interception11real_setjmpE)
42 // restore env parameters
49 // tail jump to libc setjmp
54 .size setjmp, .-setjmp
58 .comm _ZN14__interception12real__setjmpE,8,8
59 .type _setjmp, @function
62 // Save env parameters
69 // calculate and save pointer to GOT
70 lui $gp,%hi(%neg(%gp_rel(_setjmp)))
72 daddiu $gp,$gp,%lo(%neg(%gp_rel(_setjmp)))
81 // call tsan interceptor
91 // load pointer of libc _setjmp to t9
92 dla $t9,(_ZN14__interception12real__setjmpE)
94 // restore env parameters
101 // tail jump to libc _setjmp
106 .size _setjmp, .-_setjmp
108 .hidden __tsan_setjmp
110 .comm _ZN14__interception14real_sigsetjmpE,8,8
111 .type sigsetjmp, @function
114 // Save env parameters
121 // calculate and save pointer to GOT
122 lui $gp,%hi(%neg(%gp_rel(sigsetjmp)))
124 daddiu $gp,$gp,%lo(%neg(%gp_rel(sigsetjmp)))
127 // save jmp_buf and savesig
134 // call tsan interceptor
138 // restore jmp_buf and savesig
145 // load pointer of libc sigsetjmp to t9
146 dla $t9,(_ZN14__interception14real_sigsetjmpE)
148 // restore env parameters
155 // tail jump to libc sigsetjmp
160 .size sigsetjmp, .-sigsetjmp
162 .hidden __tsan_setjmp
163 .comm _ZN14__interception16real___sigsetjmpE,8,8
165 .type __sigsetjmp, @function
168 // Save env parameters
175 // calculate and save pointer to GOT
176 lui $gp,%hi(%neg(%gp_rel(__sigsetjmp)))
178 daddiu $gp,$gp,%lo(%neg(%gp_rel(__sigsetjmp)))
181 // save jmp_buf and savesig
188 // call tsan interceptor
192 // restore jmp_buf and savesig
199 // load pointer to libc __sigsetjmp in t9
200 dla $t9,(_ZN14__interception16real___sigsetjmpE)
202 // restore env parameters
209 // tail jump to libc __sigsetjmp
214 .size __sigsetjmp, .-__sigsetjmp