| 1 | .global _longjmp |
| 2 | .global longjmp |
| 3 | .type _longjmp,@function |
| 4 | .type longjmp,@function |
| 5 | _longjmp: |
| 6 | longjmp: |
| 7 | 	ld.d $ra, $a0, 0 |
| 8 | 	ld.d $sp, $a0, 8 |
| 9 | 	ld.d $r21,$a0, 16 |
| 10 | 	ld.d $fp, $a0, 24 |
| 11 | 	ld.d $s0, $a0, 32 |
| 12 | 	ld.d $s1, $a0, 40 |
| 13 | 	ld.d $s2, $a0, 48 |
| 14 | 	ld.d $s3, $a0, 56 |
| 15 | 	ld.d $s4, $a0, 64 |
| 16 | 	ld.d $s5, $a0, 72 |
| 17 | 	ld.d $s6, $a0, 80 |
| 18 | 	ld.d $s7, $a0, 88 |
| 19 | 	ld.d $s8, $a0, 96 |
| 20 | #ifndef __loongarch_soft_float |
| 21 | 	fld.d $fs0, $a0, 104 |
| 22 | 	fld.d $fs1, $a0, 112 |
| 23 | 	fld.d $fs2, $a0, 120 |
| 24 | 	fld.d $fs3, $a0, 128 |
| 25 | 	fld.d $fs4, $a0, 136 |
| 26 | 	fld.d $fs5, $a0, 144 |
| 27 | 	fld.d $fs6, $a0, 152 |
| 28 | 	fld.d $fs7, $a0, 160 |
| 29 | #endif |
| 30 | 	sltui $a0, $a1, 1 |
| 31 | 	add.d $a0, $a0, $a1 |
| 32 | 	jr $ra |