Lines 30-48
longjmp_msg:
Link Here
|
30 |
|
30 |
|
31 |
#define __longjmp ____longjmp_chk |
31 |
#define __longjmp ____longjmp_chk |
32 |
|
32 |
|
33 |
#ifdef PIC |
|
|
34 |
# define CALL_FAIL __GI___fortify_fail |
35 |
#else |
36 |
# define CALL_FAIL __fortify_fail |
37 |
#endif |
38 |
|
39 |
#define CHECK_RSP(reg) \ |
33 |
#define CHECK_RSP(reg) \ |
40 |
cmp.ltu p0, p8 = reg, r12; \ |
34 |
cmp.ltu p0, p8 = reg, r12; \ |
41 |
(p8) br.cond.dpnt .Lok;; \ |
35 |
(p8) br.cond.dpnt .Lok;; \ |
42 |
addl r28 = @ltoffx(longjmp_msg#), r1;; \ |
36 |
addl r28 = @ltoffx(longjmp_msg#), r1;; \ |
43 |
ld8.mov r28 = [r28], longjmp_msg#;; \ |
37 |
ld8.mov r28 = [r28], longjmp_msg#;; \ |
44 |
ld8 out0 = [r28]; \ |
38 |
ld8 out0 = [r28]; \ |
45 |
br.call.sptk.many b0 = CALL_FAIL#;; \ |
39 |
br.call.sptk.many b0 = HIDDEN_JUMPTARGET(__fortify_fail)#;; \ |
46 |
.Lok: |
40 |
.Lok: |
47 |
|
41 |
|
48 |
#include "__longjmp.S" |
42 |
#include "__longjmp.S" |