3 .comm _ZN14__interception11real_setjmpE,8,8
5 .type setjmp, @function
15 // calculate and save pointer to GOT
16 lui $gp,%hi(%neg(%gp_rel(setjmp)))
18 daddiu $gp,$gp,%lo(%neg(%gp_rel(setjmp)))
27 // call tsan interceptor
37 // load pointer of libc setjmp to t9
38 dla $t9,(_ZN14__interception11real_setjmpE)
40 // restore env parameters
47 // tail jump to libc setjmp
52 .size setjmp, .-setjmp
56 .comm _ZN14__interception12real__setjmpE,8,8
57 .type _setjmp, @function
60 // Save env parameters
67 // calculate and save pointer to GOT
68 lui $gp,%hi(%neg(%gp_rel(_setjmp)))
70 daddiu $gp,$gp,%lo(%neg(%gp_rel(_setjmp)))
79 // call tsan interceptor
89 // load pointer of libc _setjmp to t9
90 dla $t9,(_ZN14__interception12real__setjmpE)
92 // restore env parameters
99 // tail jump to libc _setjmp
104 .size _setjmp, .-_setjmp
106 .hidden __tsan_setjmp
108 .comm _ZN14__interception14real_sigsetjmpE,8,8
109 .type sigsetjmp, @function
112 // Save env parameters
119 // calculate and save pointer to GOT
120 lui $gp,%hi(%neg(%gp_rel(sigsetjmp)))
122 daddiu $gp,$gp,%lo(%neg(%gp_rel(sigsetjmp)))
125 // save jmp_buf and savesig
132 // call tsan interceptor
136 // restore jmp_buf and savesig
143 // load pointer of libc sigsetjmp to t9
144 dla $t9,(_ZN14__interception14real_sigsetjmpE)
146 // restore env parameters
153 // tail jump to libc sigsetjmp
158 .size sigsetjmp, .-sigsetjmp
160 .hidden __tsan_setjmp
161 .comm _ZN14__interception16real___sigsetjmpE,8,8
163 .type __sigsetjmp, @function
166 // Save env parameters
173 // calculate and save pointer to GOT
174 lui $gp,%hi(%neg(%gp_rel(__sigsetjmp)))
176 daddiu $gp,$gp,%lo(%neg(%gp_rel(__sigsetjmp)))
179 // save jmp_buf and savesig
186 // call tsan interceptor
190 // restore jmp_buf and savesig
197 // load pointer to libc __sigsetjmp in t9
198 dla $t9,(_ZN14__interception16real___sigsetjmpE)
200 // restore env parameters
207 // tail jump to libc __sigsetjmp
212 .size __sigsetjmp, .-__sigsetjmp