From 273a62842dcfaf024c33cfdef627663a5c4f18c6 Mon Sep 17 00:00:00 2001 From: Hidetatz Yaginuma Date: Mon, 23 May 2022 23:45:54 +0900 Subject: [PATCH] almost rv64ui-v tests now pass --- e2e_test.go | 52 ++ tests/rv64ui-v-add | Bin 0 -> 20176 bytes tests/rv64ui-v-add.dump | 1177 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-addi | Bin 0 -> 19152 bytes tests/rv64ui-v-addi.dump | 999 +++++++++++++++++++++++++++ tests/rv64ui-v-addiw | Bin 0 -> 19144 bytes tests/rv64ui-v-addiw.dump | 996 +++++++++++++++++++++++++++ tests/rv64ui-v-addw | Bin 0 -> 20160 bytes tests/rv64ui-v-addw.dump | 1172 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-and | Bin 0 -> 19928 bytes tests/rv64ui-v-and.dump | 1180 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-andi | Bin 0 -> 18648 bytes tests/rv64ui-v-andi.dump | 938 +++++++++++++++++++++++++ tests/rv64ui-v-auipc | Bin 0 -> 17880 bytes tests/rv64ui-v-auipc.dump | 812 ++++++++++++++++++++++ tests/rv64ui-v-beq | Bin 0 -> 19072 bytes tests/rv64ui-v-beq.dump | 1002 +++++++++++++++++++++++++++ tests/rv64ui-v-bge | Bin 0 -> 19264 bytes tests/rv64ui-v-bge.dump | 1032 ++++++++++++++++++++++++++++ tests/rv64ui-v-bgeu | Bin 0 -> 19480 bytes tests/rv64ui-v-bgeu.dump | 1086 +++++++++++++++++++++++++++++ tests/rv64ui-v-blt | Bin 0 -> 19072 bytes tests/rv64ui-v-blt.dump | 1002 +++++++++++++++++++++++++++ tests/rv64ui-v-bltu | Bin 0 -> 19272 bytes tests/rv64ui-v-bltu.dump | 1052 +++++++++++++++++++++++++++++ tests/rv64ui-v-bne | Bin 0 -> 19072 bytes tests/rv64ui-v-bne.dump | 1003 +++++++++++++++++++++++++++ tests/rv64ui-v-fence_i | Bin 0 -> 19072 bytes tests/rv64ui-v-fence_i.dump | 888 ++++++++++++++++++++++++ tests/rv64ui-v-jal | Bin 0 -> 17952 bytes tests/rv64ui-v-jal.dump | 815 ++++++++++++++++++++++ tests/rv64ui-v-jalr | Bin 0 -> 18304 bytes tests/rv64ui-v-jalr.dump | 867 ++++++++++++++++++++++++ tests/rv64ui-v-lb | Bin 0 -> 19688 bytes tests/rv64ui-v-lb.dump | 985 +++++++++++++++++++++++++++ tests/rv64ui-v-lbu | Bin 0 -> 19688 bytes tests/rv64ui-v-lbu.dump | 985 +++++++++++++++++++++++++++ tests/rv64ui-v-ld | Bin 0 -> 19720 bytes tests/rv64ui-v-ld.dump | 1089 +++++++++++++++++++++++++++++ tests/rv64ui-v-lh | Bin 0 -> 19696 bytes tests/rv64ui-v-lh.dump | 993 +++++++++++++++++++++++++++ tests/rv64ui-v-lhu | Bin 0 -> 19696 bytes tests/rv64ui-v-lhu.dump | 998 +++++++++++++++++++++++++++ tests/rv64ui-v-lui | Bin 0 -> 17992 bytes tests/rv64ui-v-lui.dump | 820 ++++++++++++++++++++++ tests/rv64ui-v-lw | Bin 0 -> 19704 bytes tests/rv64ui-v-lw.dump | 1002 +++++++++++++++++++++++++++ tests/rv64ui-v-lwu | Bin 0 -> 19704 bytes tests/rv64ui-v-lwu.dump | 1020 ++++++++++++++++++++++++++++ tests/rv64ui-v-or | Bin 0 -> 20056 bytes tests/rv64ui-v-or.dump | 1213 +++++++++++++++++++++++++++++++++ tests/rv64ui-v-ori | Bin 0 -> 18632 bytes tests/rv64ui-v-ori.dump | 935 +++++++++++++++++++++++++ tests/rv64ui-v-sb | Bin 0 -> 20000 bytes tests/rv64ui-v-sb.dump | 1121 ++++++++++++++++++++++++++++++ tests/rv64ui-v-sd | Bin 0 -> 24168 bytes tests/rv64ui-v-sd.dump | 1273 ++++++++++++++++++++++++++++++++++ tests/rv64ui-v-sh | Bin 0 -> 24104 bytes tests/rv64ui-v-sh.dump | 1150 +++++++++++++++++++++++++++++++ tests/rv64ui-v-simple | Bin 0 -> 17664 bytes tests/rv64ui-v-simple.dump | 780 +++++++++++++++++++++ tests/rv64ui-v-sll | Bin 0 -> 20712 bytes tests/rv64ui-v-sll.dump | 1263 ++++++++++++++++++++++++++++++++++ tests/rv64ui-v-slli | Bin 0 -> 19352 bytes tests/rv64ui-v-slli.dump | 1030 ++++++++++++++++++++++++++++ tests/rv64ui-v-slliw | Bin 0 -> 19408 bytes tests/rv64ui-v-slliw.dump | 1039 ++++++++++++++++++++++++++++ tests/rv64ui-v-sllw | Bin 0 -> 20744 bytes tests/rv64ui-v-sllw.dump | 1265 ++++++++++++++++++++++++++++++++++ tests/rv64ui-v-slt | Bin 0 -> 20136 bytes tests/rv64ui-v-slt.dump | 1166 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-slti | Bin 0 -> 19120 bytes tests/rv64ui-v-slti.dump | 991 +++++++++++++++++++++++++++ tests/rv64ui-v-sltiu | Bin 0 -> 19120 bytes tests/rv64ui-v-sltiu.dump | 991 +++++++++++++++++++++++++++ tests/rv64ui-v-sltu | Bin 0 -> 20200 bytes tests/rv64ui-v-sltu.dump | 1183 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-sra | Bin 0 -> 20504 bytes tests/rv64ui-v-sra.dump | 1229 +++++++++++++++++++++++++++++++++ tests/rv64ui-v-srai | Bin 0 -> 19200 bytes tests/rv64ui-v-srai.dump | 1010 +++++++++++++++++++++++++++ tests/rv64ui-v-sraiw | Bin 0 -> 19576 bytes tests/rv64ui-v-sraiw.dump | 1068 +++++++++++++++++++++++++++++ tests/rv64ui-v-sraw | Bin 0 -> 20792 bytes tests/rv64ui-v-sraw.dump | 1277 +++++++++++++++++++++++++++++++++++ tests/rv64ui-v-srl | Bin 0 -> 20616 bytes tests/rv64ui-v-srl.dump | 1256 ++++++++++++++++++++++++++++++++++ tests/rv64ui-v-srli | Bin 0 -> 19256 bytes tests/rv64ui-v-srli.dump | 1025 ++++++++++++++++++++++++++++ tests/rv64ui-v-srliw | Bin 0 -> 19440 bytes tests/rv64ui-v-srliw.dump | 1046 ++++++++++++++++++++++++++++ tests/rv64ui-v-srlw | Bin 0 -> 20768 bytes tests/rv64ui-v-srlw.dump | 1271 ++++++++++++++++++++++++++++++++++ tests/rv64ui-v-sub | Bin 0 -> 20112 bytes tests/rv64ui-v-sub.dump | 1166 ++++++++++++++++++++++++++++++++ tests/rv64ui-v-subw | Bin 0 -> 20096 bytes tests/rv64ui-v-subw.dump | 1162 +++++++++++++++++++++++++++++++ tests/rv64ui-v-sw | Bin 0 -> 24128 bytes tests/rv64ui-v-sw.dump | 1151 +++++++++++++++++++++++++++++++ tests/rv64ui-v-xor | Bin 0 -> 20040 bytes tests/rv64ui-v-xor.dump | 1208 +++++++++++++++++++++++++++++++++ tests/rv64ui-v-xori | Bin 0 -> 18624 bytes tests/rv64ui-v-xori.dump | 933 +++++++++++++++++++++++++ 103 files changed, 54167 insertions(+) create mode 100644 tests/rv64ui-v-add create mode 100644 tests/rv64ui-v-add.dump create mode 100644 tests/rv64ui-v-addi create mode 100644 tests/rv64ui-v-addi.dump create mode 100644 tests/rv64ui-v-addiw create mode 100644 tests/rv64ui-v-addiw.dump create mode 100644 tests/rv64ui-v-addw create mode 100644 tests/rv64ui-v-addw.dump create mode 100644 tests/rv64ui-v-and create mode 100644 tests/rv64ui-v-and.dump create mode 100644 tests/rv64ui-v-andi create mode 100644 tests/rv64ui-v-andi.dump create mode 100644 tests/rv64ui-v-auipc create mode 100644 tests/rv64ui-v-auipc.dump create mode 100644 tests/rv64ui-v-beq create mode 100644 tests/rv64ui-v-beq.dump create mode 100644 tests/rv64ui-v-bge create mode 100644 tests/rv64ui-v-bge.dump create mode 100644 tests/rv64ui-v-bgeu create mode 100644 tests/rv64ui-v-bgeu.dump create mode 100644 tests/rv64ui-v-blt create mode 100644 tests/rv64ui-v-blt.dump create mode 100644 tests/rv64ui-v-bltu create mode 100644 tests/rv64ui-v-bltu.dump create mode 100644 tests/rv64ui-v-bne create mode 100644 tests/rv64ui-v-bne.dump create mode 100644 tests/rv64ui-v-fence_i create mode 100644 tests/rv64ui-v-fence_i.dump create mode 100644 tests/rv64ui-v-jal create mode 100644 tests/rv64ui-v-jal.dump create mode 100644 tests/rv64ui-v-jalr create mode 100644 tests/rv64ui-v-jalr.dump create mode 100644 tests/rv64ui-v-lb create mode 100644 tests/rv64ui-v-lb.dump create mode 100644 tests/rv64ui-v-lbu create mode 100644 tests/rv64ui-v-lbu.dump create mode 100644 tests/rv64ui-v-ld create mode 100644 tests/rv64ui-v-ld.dump create mode 100644 tests/rv64ui-v-lh create mode 100644 tests/rv64ui-v-lh.dump create mode 100644 tests/rv64ui-v-lhu create mode 100644 tests/rv64ui-v-lhu.dump create mode 100644 tests/rv64ui-v-lui create mode 100644 tests/rv64ui-v-lui.dump create mode 100644 tests/rv64ui-v-lw create mode 100644 tests/rv64ui-v-lw.dump create mode 100644 tests/rv64ui-v-lwu create mode 100644 tests/rv64ui-v-lwu.dump create mode 100644 tests/rv64ui-v-or create mode 100644 tests/rv64ui-v-or.dump create mode 100644 tests/rv64ui-v-ori create mode 100644 tests/rv64ui-v-ori.dump create mode 100644 tests/rv64ui-v-sb create mode 100644 tests/rv64ui-v-sb.dump create mode 100644 tests/rv64ui-v-sd create mode 100644 tests/rv64ui-v-sd.dump create mode 100644 tests/rv64ui-v-sh create mode 100644 tests/rv64ui-v-sh.dump create mode 100644 tests/rv64ui-v-simple create mode 100644 tests/rv64ui-v-simple.dump create mode 100644 tests/rv64ui-v-sll create mode 100644 tests/rv64ui-v-sll.dump create mode 100644 tests/rv64ui-v-slli create mode 100644 tests/rv64ui-v-slli.dump create mode 100644 tests/rv64ui-v-slliw create mode 100644 tests/rv64ui-v-slliw.dump create mode 100644 tests/rv64ui-v-sllw create mode 100644 tests/rv64ui-v-sllw.dump create mode 100644 tests/rv64ui-v-slt create mode 100644 tests/rv64ui-v-slt.dump create mode 100644 tests/rv64ui-v-slti create mode 100644 tests/rv64ui-v-slti.dump create mode 100644 tests/rv64ui-v-sltiu create mode 100644 tests/rv64ui-v-sltiu.dump create mode 100644 tests/rv64ui-v-sltu create mode 100644 tests/rv64ui-v-sltu.dump create mode 100644 tests/rv64ui-v-sra create mode 100644 tests/rv64ui-v-sra.dump create mode 100644 tests/rv64ui-v-srai create mode 100644 tests/rv64ui-v-srai.dump create mode 100644 tests/rv64ui-v-sraiw create mode 100644 tests/rv64ui-v-sraiw.dump create mode 100644 tests/rv64ui-v-sraw create mode 100644 tests/rv64ui-v-sraw.dump create mode 100644 tests/rv64ui-v-srl create mode 100644 tests/rv64ui-v-srl.dump create mode 100644 tests/rv64ui-v-srli create mode 100644 tests/rv64ui-v-srli.dump create mode 100644 tests/rv64ui-v-srliw create mode 100644 tests/rv64ui-v-srliw.dump create mode 100644 tests/rv64ui-v-srlw create mode 100644 tests/rv64ui-v-srlw.dump create mode 100644 tests/rv64ui-v-sub create mode 100644 tests/rv64ui-v-sub.dump create mode 100644 tests/rv64ui-v-subw create mode 100644 tests/rv64ui-v-subw.dump create mode 100644 tests/rv64ui-v-sw create mode 100644 tests/rv64ui-v-sw.dump create mode 100644 tests/rv64ui-v-xor create mode 100644 tests/rv64ui-v-xor.dump create mode 100644 tests/rv64ui-v-xori create mode 100644 tests/rv64ui-v-xori.dump diff --git a/e2e_test.go b/e2e_test.go index a5de168..ae446a1 100644 --- a/e2e_test.go +++ b/e2e_test.go @@ -101,6 +101,58 @@ func TestE2E(t *testing.T) { "rv64um-p-divw", "rv64um-p-remuw", "rv64um-p-remw", + + "rv64ui-v-add", + "rv64ui-v-addi", + "rv64ui-v-addiw", + "rv64ui-v-addw", + "rv64ui-v-and", + "rv64ui-v-andi", + "rv64ui-v-auipc", + "rv64ui-v-beq", + "rv64ui-v-bge", + "rv64ui-v-bgeu", + "rv64ui-v-blt", + "rv64ui-v-bltu", + "rv64ui-v-bne", + "rv64ui-v-fence_i", + "rv64ui-v-jal", + "rv64ui-v-jalr", + "rv64ui-v-lb", + "rv64ui-v-lbu", + "rv64ui-v-ld", + "rv64ui-v-lh", + "rv64ui-v-lhu", + "rv64ui-v-lui", + "rv64ui-v-lw", + "rv64ui-v-lwu", + "rv64ui-v-or", + "rv64ui-v-ori", + //"rv64ui-v-sb", + //"rv64ui-v-sd", + //"rv64ui-v-sh", + "rv64ui-v-simple", + "rv64ui-v-sll", + "rv64ui-v-slli", + "rv64ui-v-slliw", + "rv64ui-v-sllw", + "rv64ui-v-slt", + "rv64ui-v-slti", + "rv64ui-v-sltiu", + "rv64ui-v-sltu", + "rv64ui-v-sra", + "rv64ui-v-srai", + "rv64ui-v-sraiw", + "rv64ui-v-sraw", + "rv64ui-v-srl", + "rv64ui-v-srli", + "rv64ui-v-srliw", + "rv64ui-v-srlw", + "rv64ui-v-sub", + "rv64ui-v-subw", + //"rv64ui-v-sw", + "rv64ui-v-xor", + "rv64ui-v-xori", } for _, tc := range tests { diff --git a/tests/rv64ui-v-add b/tests/rv64ui-v-add new file mode 100644 index 0000000000000000000000000000000000000000..f475ee10a04072a804816dc9447d39d12b5b5c7a GIT binary patch literal 20176 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 VxF~V&fRHVF?VI*R7`t@a{~uw#1`GfI literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-add.dump b/tests/rv64ui-v-add.dump new file mode 100644 index 0000000..9991894 --- /dev/null +++ b/tests/rv64ui-v-add.dump @@ -0,0 +1,1177 @@ + +rv64ui-v-add: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 9a450513 addi a0,a0,-1628 # 80002e78 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9d850513 addi a0,a0,-1576 # 80002ec0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: a0c50513 addi a0,a0,-1524 # 80002f08 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: a1050513 addi a0,a0,-1520 # 80002f20 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 96868693 addi a3,a3,-1688 # 80002f60 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 9b850513 addi a0,a0,-1608 # 80003000 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 90050513 addi a0,a0,-1792 # 80003028 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 89050513 addi a0,a0,-1904 # 80002fc8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 84450513 addi a0,a0,-1980 # 80002f90 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02100793 li a5,33 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0f1557b7 lui a5,0xf155 + 80002908: 00080637 lui a2,0x80 + 8000290c: 1b078793 addi a5,a5,432 # f1551b0 <_start-0x70eaae50> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 70850513 addi a0,a0,1800 # 80003058 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 00208733 add a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4e771063 bne a4,t2,80002e5c + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 00208733 add a4,ra,sp + 8000298c: 00200393 li t2,2 + 80002990: 00300193 li gp,3 + 80002994: 4c771463 bne a4,t2,80002e5c + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 00208733 add a4,ra,sp + 800029a4: 00a00393 li t2,10 + 800029a8: 00400193 li gp,4 + 800029ac: 4a771863 bne a4,t2,80002e5c + +00000000800029b0 : + 800029b0: 00000093 li ra,0 + 800029b4: ffff8137 lui sp,0xffff8 + 800029b8: 00208733 add a4,ra,sp + 800029bc: ffff83b7 lui t2,0xffff8 + 800029c0: 00500193 li gp,5 + 800029c4: 48771c63 bne a4,t2,80002e5c + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 00000113 li sp,0 + 800029d0: 00208733 add a4,ra,sp + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 00600193 li gp,6 + 800029dc: 48771063 bne a4,t2,80002e5c + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: ffff8137 lui sp,0xffff8 + 800029e8: 00208733 add a4,ra,sp + 800029ec: ffff03b7 lui t2,0xffff0 + 800029f0: fff3839b addiw t2,t2,-1 # fffffffffffeffff + 800029f4: 00f39393 slli t2,t2,0xf + 800029f8: 00700193 li gp,7 + 800029fc: 46771063 bne a4,t2,80002e5c + +0000000080002a00 : + 80002a00: 00000093 li ra,0 + 80002a04: 00008137 lui sp,0x8 + 80002a08: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a0c: 00208733 add a4,ra,sp + 80002a10: 000083b7 lui t2,0x8 + 80002a14: fff3839b addiw t2,t2,-1 # 7fff <_start-0x7fff8001> + 80002a18: 00800193 li gp,8 + 80002a1c: 44771063 bne a4,t2,80002e5c + +0000000080002a20 : + 80002a20: 800000b7 lui ra,0x80000 + 80002a24: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a28: 00000113 li sp,0 + 80002a2c: 00208733 add a4,ra,sp + 80002a30: 800003b7 lui t2,0x80000 + 80002a34: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a38: 00900193 li gp,9 + 80002a3c: 42771063 bne a4,t2,80002e5c + +0000000080002a40 : + 80002a40: 800000b7 lui ra,0x80000 + 80002a44: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a48: 00008137 lui sp,0x8 + 80002a4c: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a50: 00208733 add a4,ra,sp + 80002a54: 000103b7 lui t2,0x10 + 80002a58: 0013839b addiw t2,t2,1 # 10001 <_start-0x7ffeffff> + 80002a5c: 00f39393 slli t2,t2,0xf + 80002a60: ffe38393 addi t2,t2,-2 + 80002a64: 00a00193 li gp,10 + 80002a68: 3e771a63 bne a4,t2,80002e5c + +0000000080002a6c : + 80002a6c: 800000b7 lui ra,0x80000 + 80002a70: 00008137 lui sp,0x8 + 80002a74: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a78: 00208733 add a4,ra,sp + 80002a7c: 800083b7 lui t2,0x80008 + 80002a80: fff3839b addiw t2,t2,-1 # ffffffff80007fff + 80002a84: 00b00193 li gp,11 + 80002a88: 3c771a63 bne a4,t2,80002e5c + +0000000080002a8c : + 80002a8c: 800000b7 lui ra,0x80000 + 80002a90: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a94: ffff8137 lui sp,0xffff8 + 80002a98: 00208733 add a4,ra,sp + 80002a9c: 7fff83b7 lui t2,0x7fff8 + 80002aa0: fff3839b addiw t2,t2,-1 # 7fff7fff <_start-0x8001> + 80002aa4: 00c00193 li gp,12 + 80002aa8: 3a771a63 bne a4,t2,80002e5c + +0000000080002aac : + 80002aac: 00000093 li ra,0 + 80002ab0: fff00113 li sp,-1 + 80002ab4: 00208733 add a4,ra,sp + 80002ab8: fff00393 li t2,-1 + 80002abc: 00d00193 li gp,13 + 80002ac0: 38771e63 bne a4,t2,80002e5c + +0000000080002ac4 : + 80002ac4: fff00093 li ra,-1 + 80002ac8: 00100113 li sp,1 + 80002acc: 00208733 add a4,ra,sp + 80002ad0: 00000393 li t2,0 + 80002ad4: 00e00193 li gp,14 + 80002ad8: 38771263 bne a4,t2,80002e5c + +0000000080002adc : + 80002adc: fff00093 li ra,-1 + 80002ae0: fff00113 li sp,-1 + 80002ae4: 00208733 add a4,ra,sp + 80002ae8: ffe00393 li t2,-2 + 80002aec: 00f00193 li gp,15 + 80002af0: 36771663 bne a4,t2,80002e5c + +0000000080002af4 : + 80002af4: 00100093 li ra,1 + 80002af8: 80000137 lui sp,0x80000 + 80002afc: fff1011b addiw sp,sp,-1 # 7fffffff <_start-0x1> + 80002b00: 00208733 add a4,ra,sp + 80002b04: 0010039b addiw t2,zero,1 + 80002b08: 01f39393 slli t2,t2,0x1f + 80002b0c: 01000193 li gp,16 + 80002b10: 34771663 bne a4,t2,80002e5c + +0000000080002b14 : + 80002b14: 00d00093 li ra,13 + 80002b18: 00b00113 li sp,11 + 80002b1c: 002080b3 add ra,ra,sp + 80002b20: 01800393 li t2,24 + 80002b24: 01100193 li gp,17 + 80002b28: 32709a63 bne ra,t2,80002e5c + +0000000080002b2c : + 80002b2c: 00e00093 li ra,14 + 80002b30: 00b00113 li sp,11 + 80002b34: 00208133 add sp,ra,sp + 80002b38: 01900393 li t2,25 + 80002b3c: 01200193 li gp,18 + 80002b40: 30711e63 bne sp,t2,80002e5c + +0000000080002b44 : + 80002b44: 00d00093 li ra,13 + 80002b48: 001080b3 add ra,ra,ra + 80002b4c: 01a00393 li t2,26 + 80002b50: 01300193 li gp,19 + 80002b54: 30709463 bne ra,t2,80002e5c + +0000000080002b58 : + 80002b58: 00000213 li tp,0 + 80002b5c: 00d00093 li ra,13 + 80002b60: 00b00113 li sp,11 + 80002b64: 00208733 add a4,ra,sp + 80002b68: 00070313 mv t1,a4 + 80002b6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b70: 00200293 li t0,2 + 80002b74: fe5214e3 bne tp,t0,80002b5c + 80002b78: 01800393 li t2,24 + 80002b7c: 01400193 li gp,20 + 80002b80: 2c731e63 bne t1,t2,80002e5c + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 00e00093 li ra,14 + 80002b8c: 00b00113 li sp,11 + 80002b90: 00208733 add a4,ra,sp + 80002b94: 00000013 nop + 80002b98: 00070313 mv t1,a4 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fe5212e3 bne tp,t0,80002b88 + 80002ba8: 01900393 li t2,25 + 80002bac: 01500193 li gp,21 + 80002bb0: 2a731663 bne t1,t2,80002e5c + +0000000080002bb4 : + 80002bb4: 00000213 li tp,0 + 80002bb8: 00f00093 li ra,15 + 80002bbc: 00b00113 li sp,11 + 80002bc0: 00208733 add a4,ra,sp + 80002bc4: 00000013 nop + 80002bc8: 00000013 nop + 80002bcc: 00070313 mv t1,a4 + 80002bd0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bd4: 00200293 li t0,2 + 80002bd8: fe5210e3 bne tp,t0,80002bb8 + 80002bdc: 01a00393 li t2,26 + 80002be0: 01600193 li gp,22 + 80002be4: 26731c63 bne t1,t2,80002e5c + +0000000080002be8 : + 80002be8: 00000213 li tp,0 + 80002bec: 00d00093 li ra,13 + 80002bf0: 00b00113 li sp,11 + 80002bf4: 00208733 add a4,ra,sp + 80002bf8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bfc: 00200293 li t0,2 + 80002c00: fe5216e3 bne tp,t0,80002bec + 80002c04: 01800393 li t2,24 + 80002c08: 01700193 li gp,23 + 80002c0c: 24771863 bne a4,t2,80002e5c + +0000000080002c10 : + 80002c10: 00000213 li tp,0 + 80002c14: 00e00093 li ra,14 + 80002c18: 00b00113 li sp,11 + 80002c1c: 00000013 nop + 80002c20: 00208733 add a4,ra,sp + 80002c24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c28: 00200293 li t0,2 + 80002c2c: fe5214e3 bne tp,t0,80002c14 + 80002c30: 01900393 li t2,25 + 80002c34: 01800193 li gp,24 + 80002c38: 22771263 bne a4,t2,80002e5c + +0000000080002c3c : + 80002c3c: 00000213 li tp,0 + 80002c40: 00f00093 li ra,15 + 80002c44: 00b00113 li sp,11 + 80002c48: 00000013 nop + 80002c4c: 00000013 nop + 80002c50: 00208733 add a4,ra,sp + 80002c54: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c58: 00200293 li t0,2 + 80002c5c: fe5212e3 bne tp,t0,80002c40 + 80002c60: 01a00393 li t2,26 + 80002c64: 01900193 li gp,25 + 80002c68: 1e771a63 bne a4,t2,80002e5c + +0000000080002c6c : + 80002c6c: 00000213 li tp,0 + 80002c70: 00d00093 li ra,13 + 80002c74: 00000013 nop + 80002c78: 00b00113 li sp,11 + 80002c7c: 00208733 add a4,ra,sp + 80002c80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c84: 00200293 li t0,2 + 80002c88: fe5214e3 bne tp,t0,80002c70 + 80002c8c: 01800393 li t2,24 + 80002c90: 01a00193 li gp,26 + 80002c94: 1c771463 bne a4,t2,80002e5c + +0000000080002c98 : + 80002c98: 00000213 li tp,0 + 80002c9c: 00e00093 li ra,14 + 80002ca0: 00000013 nop + 80002ca4: 00b00113 li sp,11 + 80002ca8: 00000013 nop + 80002cac: 00208733 add a4,ra,sp + 80002cb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb4: 00200293 li t0,2 + 80002cb8: fe5212e3 bne tp,t0,80002c9c + 80002cbc: 01900393 li t2,25 + 80002cc0: 01b00193 li gp,27 + 80002cc4: 18771c63 bne a4,t2,80002e5c + +0000000080002cc8 : + 80002cc8: 00000213 li tp,0 + 80002ccc: 00f00093 li ra,15 + 80002cd0: 00000013 nop + 80002cd4: 00000013 nop + 80002cd8: 00b00113 li sp,11 + 80002cdc: 00208733 add a4,ra,sp + 80002ce0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce4: 00200293 li t0,2 + 80002ce8: fe5212e3 bne tp,t0,80002ccc + 80002cec: 01a00393 li t2,26 + 80002cf0: 01c00193 li gp,28 + 80002cf4: 16771463 bne a4,t2,80002e5c + +0000000080002cf8 : + 80002cf8: 00000213 li tp,0 + 80002cfc: 00b00113 li sp,11 + 80002d00: 00d00093 li ra,13 + 80002d04: 00208733 add a4,ra,sp + 80002d08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d0c: 00200293 li t0,2 + 80002d10: fe5216e3 bne tp,t0,80002cfc + 80002d14: 01800393 li t2,24 + 80002d18: 01d00193 li gp,29 + 80002d1c: 14771063 bne a4,t2,80002e5c + +0000000080002d20 : + 80002d20: 00000213 li tp,0 + 80002d24: 00b00113 li sp,11 + 80002d28: 00e00093 li ra,14 + 80002d2c: 00000013 nop + 80002d30: 00208733 add a4,ra,sp + 80002d34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d38: 00200293 li t0,2 + 80002d3c: fe5214e3 bne tp,t0,80002d24 + 80002d40: 01900393 li t2,25 + 80002d44: 01e00193 li gp,30 + 80002d48: 10771a63 bne a4,t2,80002e5c + +0000000080002d4c : + 80002d4c: 00000213 li tp,0 + 80002d50: 00b00113 li sp,11 + 80002d54: 00f00093 li ra,15 + 80002d58: 00000013 nop + 80002d5c: 00000013 nop + 80002d60: 00208733 add a4,ra,sp + 80002d64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d68: 00200293 li t0,2 + 80002d6c: fe5212e3 bne tp,t0,80002d50 + 80002d70: 01a00393 li t2,26 + 80002d74: 01f00193 li gp,31 + 80002d78: 0e771263 bne a4,t2,80002e5c + +0000000080002d7c : + 80002d7c: 00000213 li tp,0 + 80002d80: 00b00113 li sp,11 + 80002d84: 00000013 nop + 80002d88: 00d00093 li ra,13 + 80002d8c: 00208733 add a4,ra,sp + 80002d90: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d94: 00200293 li t0,2 + 80002d98: fe5214e3 bne tp,t0,80002d80 + 80002d9c: 01800393 li t2,24 + 80002da0: 02000193 li gp,32 + 80002da4: 0a771c63 bne a4,t2,80002e5c + +0000000080002da8 : + 80002da8: 00000213 li tp,0 + 80002dac: 00b00113 li sp,11 + 80002db0: 00000013 nop + 80002db4: 00e00093 li ra,14 + 80002db8: 00000013 nop + 80002dbc: 00208733 add a4,ra,sp + 80002dc0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc4: 00200293 li t0,2 + 80002dc8: fe5212e3 bne tp,t0,80002dac + 80002dcc: 01900393 li t2,25 + 80002dd0: 02100193 li gp,33 + 80002dd4: 08771463 bne a4,t2,80002e5c + +0000000080002dd8 : + 80002dd8: 00000213 li tp,0 + 80002ddc: 00b00113 li sp,11 + 80002de0: 00000013 nop + 80002de4: 00000013 nop + 80002de8: 00f00093 li ra,15 + 80002dec: 00208733 add a4,ra,sp + 80002df0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002df4: 00200293 li t0,2 + 80002df8: fe5212e3 bne tp,t0,80002ddc + 80002dfc: 01a00393 li t2,26 + 80002e00: 02200193 li gp,34 + 80002e04: 04771c63 bne a4,t2,80002e5c + +0000000080002e08 : + 80002e08: 00f00093 li ra,15 + 80002e0c: 00100133 add sp,zero,ra + 80002e10: 00f00393 li t2,15 + 80002e14: 02300193 li gp,35 + 80002e18: 04711263 bne sp,t2,80002e5c + +0000000080002e1c : + 80002e1c: 02000093 li ra,32 + 80002e20: 00008133 add sp,ra,zero + 80002e24: 02000393 li t2,32 + 80002e28: 02400193 li gp,36 + 80002e2c: 02711863 bne sp,t2,80002e5c + +0000000080002e30 : + 80002e30: 000000b3 add ra,zero,zero + 80002e34: 00000393 li t2,0 + 80002e38: 02500193 li gp,37 + 80002e3c: 02709063 bne ra,t2,80002e5c + +0000000080002e40 : + 80002e40: 01000093 li ra,16 + 80002e44: 01e00113 li sp,30 + 80002e48: 00208033 add zero,ra,sp + 80002e4c: 00000393 li t2,0 + 80002e50: 02600193 li gp,38 + 80002e54: 00701463 bne zero,t2,80002e5c + 80002e58: 00301a63 bne zero,gp,80002e6c + +0000000080002e5c : + 80002e5c: 00119513 slli a0,gp,0x1 + 80002e60: 00050063 beqz a0,80002e60 + 80002e64: 00156513 ori a0,a0,1 + 80002e68: 00000073 ecall + +0000000080002e6c : + 80002e6c: 00100513 li a0,1 + 80002e70: 00000073 ecall + 80002e74: c0001073 unimp diff --git a/tests/rv64ui-v-addi b/tests/rv64ui-v-addi new file mode 100644 index 0000000000000000000000000000000000000000..0414f88ec3af53e8111ace4d02903f71ba4ff7a9 GIT binary patch literal 19152 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 74450513 addi a0,a0,1860 # 80002c18 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 77850513 addi a0,a0,1912 # 80002c60 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7ac50513 addi a0,a0,1964 # 80002ca8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7b050513 addi a0,a0,1968 # 80002cc0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 70868693 addi a3,a3,1800 # 80002d00 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 75850513 addi a0,a0,1880 # 80002da0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6a050513 addi a0,a0,1696 # 80002dc8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 63050513 addi a0,a0,1584 # 80002d68 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5e450513 addi a0,a0,1508 # 80002d30 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01000793 li a5,16 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 04f557b7 lui a5,0x4f55 + 80002908: 00080637 lui a2,0x80 + 8000290c: 5a178793 addi a5,a5,1441 # 4f555a1 <_start-0x7b0aaa5f> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4a850513 addi a0,a0,1192 # 80002df8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00008713 mv a4,ra + 80002970: 00000393 li t2,0 + 80002974: 00200193 li gp,2 + 80002978: 28771263 bne a4,t2,80002bfc + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 00108713 addi a4,ra,1 + 80002984: 00200393 li t2,2 + 80002988: 00300193 li gp,3 + 8000298c: 26771863 bne a4,t2,80002bfc + +0000000080002990 : + 80002990: 00300093 li ra,3 + 80002994: 00708713 addi a4,ra,7 + 80002998: 00a00393 li t2,10 + 8000299c: 00400193 li gp,4 + 800029a0: 24771e63 bne a4,t2,80002bfc + +00000000800029a4 : + 800029a4: 00000093 li ra,0 + 800029a8: 80008713 addi a4,ra,-2048 + 800029ac: 80000393 li t2,-2048 + 800029b0: 00500193 li gp,5 + 800029b4: 24771463 bne a4,t2,80002bfc + +00000000800029b8 : + 800029b8: 800000b7 lui ra,0x80000 + 800029bc: 00008713 mv a4,ra + 800029c0: 800003b7 lui t2,0x80000 + 800029c4: 00600193 li gp,6 + 800029c8: 22771a63 bne a4,t2,80002bfc + +00000000800029cc : + 800029cc: 800000b7 lui ra,0x80000 + 800029d0: 80008713 addi a4,ra,-2048 # ffffffff7ffff800 + 800029d4: fff0039b addiw t2,zero,-1 + 800029d8: 01f39393 slli t2,t2,0x1f + 800029dc: 80038393 addi t2,t2,-2048 # ffffffff7ffff800 + 800029e0: 00700193 li gp,7 + 800029e4: 20771c63 bne a4,t2,80002bfc + +00000000800029e8 : + 800029e8: 00000093 li ra,0 + 800029ec: 7ff08713 addi a4,ra,2047 + 800029f0: 7ff00393 li t2,2047 + 800029f4: 00800193 li gp,8 + 800029f8: 20771263 bne a4,t2,80002bfc + +00000000800029fc : + 800029fc: 800000b7 lui ra,0x80000 + 80002a00: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a04: 00008713 mv a4,ra + 80002a08: 800003b7 lui t2,0x80000 + 80002a0c: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a10: 00900193 li gp,9 + 80002a14: 1e771463 bne a4,t2,80002bfc + +0000000080002a18 : + 80002a18: 800000b7 lui ra,0x80000 + 80002a1c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a20: 7ff08713 addi a4,ra,2047 + 80002a24: 0010039b addiw t2,zero,1 + 80002a28: 01f39393 slli t2,t2,0x1f + 80002a2c: 7fe38393 addi t2,t2,2046 + 80002a30: 00a00193 li gp,10 + 80002a34: 1c771463 bne a4,t2,80002bfc + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: 7ff08713 addi a4,ra,2047 # ffffffff800007ff + 80002a40: 800003b7 lui t2,0x80000 + 80002a44: 7ff3839b addiw t2,t2,2047 # ffffffff800007ff + 80002a48: 00b00193 li gp,11 + 80002a4c: 1a771863 bne a4,t2,80002bfc + +0000000080002a50 : + 80002a50: 800000b7 lui ra,0x80000 + 80002a54: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a58: 80008713 addi a4,ra,-2048 + 80002a5c: 7ffff3b7 lui t2,0x7ffff + 80002a60: 7ff3839b addiw t2,t2,2047 # 7ffff7ff <_start-0x801> + 80002a64: 00c00193 li gp,12 + 80002a68: 18771a63 bne a4,t2,80002bfc + +0000000080002a6c : + 80002a6c: 00000093 li ra,0 + 80002a70: fff08713 addi a4,ra,-1 + 80002a74: fff00393 li t2,-1 + 80002a78: 00d00193 li gp,13 + 80002a7c: 18771063 bne a4,t2,80002bfc + +0000000080002a80 : + 80002a80: fff00093 li ra,-1 + 80002a84: 00108713 addi a4,ra,1 + 80002a88: 00000393 li t2,0 + 80002a8c: 00e00193 li gp,14 + 80002a90: 16771663 bne a4,t2,80002bfc + +0000000080002a94 : + 80002a94: fff00093 li ra,-1 + 80002a98: fff08713 addi a4,ra,-1 + 80002a9c: ffe00393 li t2,-2 + 80002aa0: 00f00193 li gp,15 + 80002aa4: 14771c63 bne a4,t2,80002bfc + +0000000080002aa8 : + 80002aa8: 800000b7 lui ra,0x80000 + 80002aac: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002ab0: 00108713 addi a4,ra,1 + 80002ab4: 0010039b addiw t2,zero,1 + 80002ab8: 01f39393 slli t2,t2,0x1f + 80002abc: 01000193 li gp,16 + 80002ac0: 12771e63 bne a4,t2,80002bfc + +0000000080002ac4 : + 80002ac4: 00d00093 li ra,13 + 80002ac8: 00b08093 addi ra,ra,11 + 80002acc: 01800393 li t2,24 + 80002ad0: 01100193 li gp,17 + 80002ad4: 12709463 bne ra,t2,80002bfc + +0000000080002ad8 : + 80002ad8: 00000213 li tp,0 + 80002adc: 00d00093 li ra,13 + 80002ae0: 00b08713 addi a4,ra,11 + 80002ae4: 00070313 mv t1,a4 + 80002ae8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aec: 00200293 li t0,2 + 80002af0: fe5216e3 bne tp,t0,80002adc + 80002af4: 01800393 li t2,24 + 80002af8: 01200193 li gp,18 + 80002afc: 10731063 bne t1,t2,80002bfc + +0000000080002b00 : + 80002b00: 00000213 li tp,0 + 80002b04: 00d00093 li ra,13 + 80002b08: 00a08713 addi a4,ra,10 + 80002b0c: 00000013 nop + 80002b10: 00070313 mv t1,a4 + 80002b14: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b18: 00200293 li t0,2 + 80002b1c: fe5214e3 bne tp,t0,80002b04 + 80002b20: 01700393 li t2,23 + 80002b24: 01300193 li gp,19 + 80002b28: 0c731a63 bne t1,t2,80002bfc + +0000000080002b2c : + 80002b2c: 00000213 li tp,0 + 80002b30: 00d00093 li ra,13 + 80002b34: 00908713 addi a4,ra,9 + 80002b38: 00000013 nop + 80002b3c: 00000013 nop + 80002b40: 00070313 mv t1,a4 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5212e3 bne tp,t0,80002b30 + 80002b50: 01600393 li t2,22 + 80002b54: 01400193 li gp,20 + 80002b58: 0a731263 bne t1,t2,80002bfc + +0000000080002b5c : + 80002b5c: 00000213 li tp,0 + 80002b60: 00d00093 li ra,13 + 80002b64: 00b08713 addi a4,ra,11 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fe5218e3 bne tp,t0,80002b60 + 80002b74: 01800393 li t2,24 + 80002b78: 01500193 li gp,21 + 80002b7c: 08771063 bne a4,t2,80002bfc + +0000000080002b80 : + 80002b80: 00000213 li tp,0 + 80002b84: 00d00093 li ra,13 + 80002b88: 00000013 nop + 80002b8c: 00a08713 addi a4,ra,10 + 80002b90: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b94: 00200293 li t0,2 + 80002b98: fe5216e3 bne tp,t0,80002b84 + 80002b9c: 01700393 li t2,23 + 80002ba0: 01600193 li gp,22 + 80002ba4: 04771c63 bne a4,t2,80002bfc + +0000000080002ba8 : + 80002ba8: 00000213 li tp,0 + 80002bac: 00d00093 li ra,13 + 80002bb0: 00000013 nop + 80002bb4: 00000013 nop + 80002bb8: 00908713 addi a4,ra,9 + 80002bbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc0: 00200293 li t0,2 + 80002bc4: fe5214e3 bne tp,t0,80002bac + 80002bc8: 01600393 li t2,22 + 80002bcc: 01700193 li gp,23 + 80002bd0: 02771663 bne a4,t2,80002bfc + +0000000080002bd4 : + 80002bd4: 02000093 li ra,32 + 80002bd8: 02000393 li t2,32 + 80002bdc: 01800193 li gp,24 + 80002be0: 00709e63 bne ra,t2,80002bfc + +0000000080002be4 : + 80002be4: 02100093 li ra,33 + 80002be8: 03208013 addi zero,ra,50 + 80002bec: 00000393 li t2,0 + 80002bf0: 01900193 li gp,25 + 80002bf4: 00701463 bne zero,t2,80002bfc + 80002bf8: 00301a63 bne zero,gp,80002c0c + +0000000080002bfc : + 80002bfc: 00119513 slli a0,gp,0x1 + 80002c00: 00050063 beqz a0,80002c00 + 80002c04: 00156513 ori a0,a0,1 + 80002c08: 00000073 ecall + +0000000080002c0c : + 80002c0c: 00100513 li a0,1 + 80002c10: 00000073 ecall + 80002c14: c0001073 unimp diff --git a/tests/rv64ui-v-addiw b/tests/rv64ui-v-addiw new file mode 100644 index 0000000000000000000000000000000000000000..a2e3063b11de05658fc50bfd4a920f1bbcdbc6b0 GIT binary patch literal 19144 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 E4>A%w(EtDd literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-addiw.dump b/tests/rv64ui-v-addiw.dump new file mode 100644 index 0000000..82e56f0 --- /dev/null +++ b/tests/rv64ui-v-addiw.dump @@ -0,0 +1,996 @@ + +rv64ui-v-addiw: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 73c50513 addi a0,a0,1852 # 80002c10 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 77050513 addi a0,a0,1904 # 80002c58 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7a450513 addi a0,a0,1956 # 80002ca0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7a850513 addi a0,a0,1960 # 80002cb8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 70068693 addi a3,a3,1792 # 80002cf8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 75050513 addi a0,a0,1872 # 80002d98 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 69850513 addi a0,a0,1688 # 80002dc0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 62850513 addi a0,a0,1576 # 80002d60 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5dc50513 addi a0,a0,1500 # 80002d28 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00d00793 li a5,13 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 04c6e7b7 lui a5,0x4c6e + 80002908: 00080637 lui a2,0x80 + 8000290c: 45678793 addi a5,a5,1110 # 4c6e456 <_start-0x7b391baa> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4a050513 addi a0,a0,1184 # 80002df0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 0000871b sext.w a4,ra + 80002970: 00000393 li t2,0 + 80002974: 00200193 li gp,2 + 80002978: 26771c63 bne a4,t2,80002bf0 + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 0010871b addiw a4,ra,1 + 80002984: 00200393 li t2,2 + 80002988: 00300193 li gp,3 + 8000298c: 26771263 bne a4,t2,80002bf0 + +0000000080002990 : + 80002990: 00300093 li ra,3 + 80002994: 0070871b addiw a4,ra,7 + 80002998: 00a00393 li t2,10 + 8000299c: 00400193 li gp,4 + 800029a0: 24771863 bne a4,t2,80002bf0 + +00000000800029a4 : + 800029a4: 00000093 li ra,0 + 800029a8: 8000871b addiw a4,ra,-2048 + 800029ac: 80000393 li t2,-2048 + 800029b0: 00500193 li gp,5 + 800029b4: 22771e63 bne a4,t2,80002bf0 + +00000000800029b8 : + 800029b8: 800000b7 lui ra,0x80000 + 800029bc: 0000871b sext.w a4,ra + 800029c0: 800003b7 lui t2,0x80000 + 800029c4: 00600193 li gp,6 + 800029c8: 22771463 bne a4,t2,80002bf0 + +00000000800029cc : + 800029cc: 800000b7 lui ra,0x80000 + 800029d0: 8000871b addiw a4,ra,-2048 # 7ffff800 <_start-0x800> + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 8003839b addiw t2,t2,-2048 # 7ffff800 <_start-0x800> + 800029dc: 00700193 li gp,7 + 800029e0: 20771863 bne a4,t2,80002bf0 + +00000000800029e4 : + 800029e4: 00000093 li ra,0 + 800029e8: 7ff0871b addiw a4,ra,2047 + 800029ec: 7ff00393 li t2,2047 + 800029f0: 00800193 li gp,8 + 800029f4: 1e771e63 bne a4,t2,80002bf0 + +00000000800029f8 : + 800029f8: 800000b7 lui ra,0x80000 + 800029fc: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a00: 0000871b sext.w a4,ra + 80002a04: 800003b7 lui t2,0x80000 + 80002a08: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a0c: 00900193 li gp,9 + 80002a10: 1e771063 bne a4,t2,80002bf0 + +0000000080002a14 : + 80002a14: 800000b7 lui ra,0x80000 + 80002a18: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a1c: 7ff0871b addiw a4,ra,2047 + 80002a20: 800003b7 lui t2,0x80000 + 80002a24: 7fe3839b addiw t2,t2,2046 # ffffffff800007fe + 80002a28: 00a00193 li gp,10 + 80002a2c: 1c771263 bne a4,t2,80002bf0 + +0000000080002a30 : + 80002a30: 800000b7 lui ra,0x80000 + 80002a34: 7ff0871b addiw a4,ra,2047 # ffffffff800007ff + 80002a38: 800003b7 lui t2,0x80000 + 80002a3c: 7ff3839b addiw t2,t2,2047 # ffffffff800007ff + 80002a40: 00b00193 li gp,11 + 80002a44: 1a771663 bne a4,t2,80002bf0 + +0000000080002a48 : + 80002a48: 800000b7 lui ra,0x80000 + 80002a4c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a50: 8000871b addiw a4,ra,-2048 + 80002a54: 7ffff3b7 lui t2,0x7ffff + 80002a58: 7ff3839b addiw t2,t2,2047 # 7ffff7ff <_start-0x801> + 80002a5c: 00c00193 li gp,12 + 80002a60: 18771863 bne a4,t2,80002bf0 + +0000000080002a64 : + 80002a64: 00000093 li ra,0 + 80002a68: fff0871b addiw a4,ra,-1 + 80002a6c: fff00393 li t2,-1 + 80002a70: 00d00193 li gp,13 + 80002a74: 16771e63 bne a4,t2,80002bf0 + +0000000080002a78 : + 80002a78: fff00093 li ra,-1 + 80002a7c: 0010871b addiw a4,ra,1 + 80002a80: 00000393 li t2,0 + 80002a84: 00e00193 li gp,14 + 80002a88: 16771463 bne a4,t2,80002bf0 + +0000000080002a8c : + 80002a8c: fff00093 li ra,-1 + 80002a90: fff0871b addiw a4,ra,-1 + 80002a94: ffe00393 li t2,-2 + 80002a98: 00f00193 li gp,15 + 80002a9c: 14771a63 bne a4,t2,80002bf0 + +0000000080002aa0 : + 80002aa0: 800000b7 lui ra,0x80000 + 80002aa4: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002aa8: 0010871b addiw a4,ra,1 + 80002aac: 800003b7 lui t2,0x80000 + 80002ab0: 01000193 li gp,16 + 80002ab4: 12771e63 bne a4,t2,80002bf0 + +0000000080002ab8 : + 80002ab8: 00d00093 li ra,13 + 80002abc: 00b0809b addiw ra,ra,11 + 80002ac0: 01800393 li t2,24 + 80002ac4: 01100193 li gp,17 + 80002ac8: 12709463 bne ra,t2,80002bf0 + +0000000080002acc : + 80002acc: 00000213 li tp,0 + 80002ad0: 00d00093 li ra,13 + 80002ad4: 00b0871b addiw a4,ra,11 + 80002ad8: 00070313 mv t1,a4 + 80002adc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae0: 00200293 li t0,2 + 80002ae4: fe5216e3 bne tp,t0,80002ad0 + 80002ae8: 01800393 li t2,24 + 80002aec: 01200193 li gp,18 + 80002af0: 10731063 bne t1,t2,80002bf0 + +0000000080002af4 : + 80002af4: 00000213 li tp,0 + 80002af8: 00d00093 li ra,13 + 80002afc: 00a0871b addiw a4,ra,10 + 80002b00: 00000013 nop + 80002b04: 00070313 mv t1,a4 + 80002b08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b0c: 00200293 li t0,2 + 80002b10: fe5214e3 bne tp,t0,80002af8 + 80002b14: 01700393 li t2,23 + 80002b18: 01300193 li gp,19 + 80002b1c: 0c731a63 bne t1,t2,80002bf0 + +0000000080002b20 : + 80002b20: 00000213 li tp,0 + 80002b24: 00d00093 li ra,13 + 80002b28: 0090871b addiw a4,ra,9 + 80002b2c: 00000013 nop + 80002b30: 00000013 nop + 80002b34: 00070313 mv t1,a4 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5212e3 bne tp,t0,80002b24 + 80002b44: 01600393 li t2,22 + 80002b48: 01400193 li gp,20 + 80002b4c: 0a731263 bne t1,t2,80002bf0 + +0000000080002b50 : + 80002b50: 00000213 li tp,0 + 80002b54: 00d00093 li ra,13 + 80002b58: 00b0871b addiw a4,ra,11 + 80002b5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b60: 00200293 li t0,2 + 80002b64: fe5218e3 bne tp,t0,80002b54 + 80002b68: 01800393 li t2,24 + 80002b6c: 01500193 li gp,21 + 80002b70: 08771063 bne a4,t2,80002bf0 + +0000000080002b74 : + 80002b74: 00000213 li tp,0 + 80002b78: 00d00093 li ra,13 + 80002b7c: 00000013 nop + 80002b80: 00a0871b addiw a4,ra,10 + 80002b84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b88: 00200293 li t0,2 + 80002b8c: fe5216e3 bne tp,t0,80002b78 + 80002b90: 01700393 li t2,23 + 80002b94: 01600193 li gp,22 + 80002b98: 04771c63 bne a4,t2,80002bf0 + +0000000080002b9c : + 80002b9c: 00000213 li tp,0 + 80002ba0: 00d00093 li ra,13 + 80002ba4: 00000013 nop + 80002ba8: 00000013 nop + 80002bac: 0090871b addiw a4,ra,9 + 80002bb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb4: 00200293 li t0,2 + 80002bb8: fe5214e3 bne tp,t0,80002ba0 + 80002bbc: 01600393 li t2,22 + 80002bc0: 01700193 li gp,23 + 80002bc4: 02771663 bne a4,t2,80002bf0 + +0000000080002bc8 : + 80002bc8: 0200009b addiw ra,zero,32 + 80002bcc: 02000393 li t2,32 + 80002bd0: 01800193 li gp,24 + 80002bd4: 00709e63 bne ra,t2,80002bf0 + +0000000080002bd8 : + 80002bd8: 02100093 li ra,33 + 80002bdc: 0320801b addiw zero,ra,50 + 80002be0: 00000393 li t2,0 + 80002be4: 01900193 li gp,25 + 80002be8: 00701463 bne zero,t2,80002bf0 + 80002bec: 00301a63 bne zero,gp,80002c00 + +0000000080002bf0 : + 80002bf0: 00119513 slli a0,gp,0x1 + 80002bf4: 00050063 beqz a0,80002bf4 + 80002bf8: 00156513 ori a0,a0,1 + 80002bfc: 00000073 ecall + +0000000080002c00 : + 80002c00: 00100513 li a0,1 + 80002c04: 00000073 ecall + 80002c08: c0001073 unimp diff --git a/tests/rv64ui-v-addw b/tests/rv64ui-v-addw new file mode 100644 index 0000000000000000000000000000000000000000..ac19089d5b34a69c605f4adf6b5395ad3b347e6d GIT binary patch literal 20160 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 99450513 addi a0,a0,-1644 # 80002e68 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9c850513 addi a0,a0,-1592 # 80002eb0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 9fc50513 addi a0,a0,-1540 # 80002ef8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: a0050513 addi a0,a0,-1536 # 80002f10 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 95868693 addi a3,a3,-1704 # 80002f50 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 9a850513 addi a0,a0,-1624 # 80002ff0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 8f050513 addi a0,a0,-1808 # 80003018 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 88050513 addi a0,a0,-1920 # 80002fb8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 83450513 addi a0,a0,-1996 # 80002f80 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00800793 li a5,8 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 04c367b7 lui a5,0x4c36 + 80002908: 00080637 lui a2,0x80 + 8000290c: 29178793 addi a5,a5,657 # 4c36291 <_start-0x7b3c9d6f> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 6f850513 addi a0,a0,1784 # 80003048 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 0020873b addw a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4c771663 bne a4,t2,80002e48 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 0020873b addw a4,ra,sp + 8000298c: 00200393 li t2,2 + 80002990: 00300193 li gp,3 + 80002994: 4a771a63 bne a4,t2,80002e48 + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 0020873b addw a4,ra,sp + 800029a4: 00a00393 li t2,10 + 800029a8: 00400193 li gp,4 + 800029ac: 48771e63 bne a4,t2,80002e48 + +00000000800029b0 : + 800029b0: 00000093 li ra,0 + 800029b4: ffff8137 lui sp,0xffff8 + 800029b8: 0020873b addw a4,ra,sp + 800029bc: ffff83b7 lui t2,0xffff8 + 800029c0: 00500193 li gp,5 + 800029c4: 48771263 bne a4,t2,80002e48 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 00000113 li sp,0 + 800029d0: 0020873b addw a4,ra,sp + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 00600193 li gp,6 + 800029dc: 46771663 bne a4,t2,80002e48 + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: ffff8137 lui sp,0xffff8 + 800029e8: 0020873b addw a4,ra,sp + 800029ec: 7fff83b7 lui t2,0x7fff8 + 800029f0: 00700193 li gp,7 + 800029f4: 44771a63 bne a4,t2,80002e48 + +00000000800029f8 : + 800029f8: 00000093 li ra,0 + 800029fc: 00008137 lui sp,0x8 + 80002a00: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a04: 0020873b addw a4,ra,sp + 80002a08: 000083b7 lui t2,0x8 + 80002a0c: fff3839b addiw t2,t2,-1 # 7fff <_start-0x7fff8001> + 80002a10: 00800193 li gp,8 + 80002a14: 42771a63 bne a4,t2,80002e48 + +0000000080002a18 : + 80002a18: 800000b7 lui ra,0x80000 + 80002a1c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a20: 00000113 li sp,0 + 80002a24: 0020873b addw a4,ra,sp + 80002a28: 800003b7 lui t2,0x80000 + 80002a2c: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a30: 00900193 li gp,9 + 80002a34: 40771a63 bne a4,t2,80002e48 + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a40: 00008137 lui sp,0x8 + 80002a44: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a48: 0020873b addw a4,ra,sp + 80002a4c: 800083b7 lui t2,0x80008 + 80002a50: ffe3839b addiw t2,t2,-2 # ffffffff80007ffe + 80002a54: 00a00193 li gp,10 + 80002a58: 3e771863 bne a4,t2,80002e48 + +0000000080002a5c : + 80002a5c: 800000b7 lui ra,0x80000 + 80002a60: 00008137 lui sp,0x8 + 80002a64: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a68: 0020873b addw a4,ra,sp + 80002a6c: 800083b7 lui t2,0x80008 + 80002a70: fff3839b addiw t2,t2,-1 # ffffffff80007fff + 80002a74: 00b00193 li gp,11 + 80002a78: 3c771863 bne a4,t2,80002e48 + +0000000080002a7c : + 80002a7c: 800000b7 lui ra,0x80000 + 80002a80: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a84: ffff8137 lui sp,0xffff8 + 80002a88: 0020873b addw a4,ra,sp + 80002a8c: 7fff83b7 lui t2,0x7fff8 + 80002a90: fff3839b addiw t2,t2,-1 # 7fff7fff <_start-0x8001> + 80002a94: 00c00193 li gp,12 + 80002a98: 3a771863 bne a4,t2,80002e48 + +0000000080002a9c : + 80002a9c: 00000093 li ra,0 + 80002aa0: fff00113 li sp,-1 + 80002aa4: 0020873b addw a4,ra,sp + 80002aa8: fff00393 li t2,-1 + 80002aac: 00d00193 li gp,13 + 80002ab0: 38771c63 bne a4,t2,80002e48 + +0000000080002ab4 : + 80002ab4: fff00093 li ra,-1 + 80002ab8: 00100113 li sp,1 + 80002abc: 0020873b addw a4,ra,sp + 80002ac0: 00000393 li t2,0 + 80002ac4: 00e00193 li gp,14 + 80002ac8: 38771063 bne a4,t2,80002e48 + +0000000080002acc : + 80002acc: fff00093 li ra,-1 + 80002ad0: fff00113 li sp,-1 + 80002ad4: 0020873b addw a4,ra,sp + 80002ad8: ffe00393 li t2,-2 + 80002adc: 00f00193 li gp,15 + 80002ae0: 36771463 bne a4,t2,80002e48 + +0000000080002ae4 : + 80002ae4: 00100093 li ra,1 + 80002ae8: 80000137 lui sp,0x80000 + 80002aec: fff1011b addiw sp,sp,-1 # 7fffffff <_start-0x1> + 80002af0: 0020873b addw a4,ra,sp + 80002af4: 800003b7 lui t2,0x80000 + 80002af8: 01000193 li gp,16 + 80002afc: 34771663 bne a4,t2,80002e48 + +0000000080002b00 : + 80002b00: 00d00093 li ra,13 + 80002b04: 00b00113 li sp,11 + 80002b08: 002080bb addw ra,ra,sp + 80002b0c: 01800393 li t2,24 + 80002b10: 01100193 li gp,17 + 80002b14: 32709a63 bne ra,t2,80002e48 + +0000000080002b18 : + 80002b18: 00e00093 li ra,14 + 80002b1c: 00b00113 li sp,11 + 80002b20: 0020813b addw sp,ra,sp + 80002b24: 01900393 li t2,25 + 80002b28: 01200193 li gp,18 + 80002b2c: 30711e63 bne sp,t2,80002e48 + +0000000080002b30 : + 80002b30: 00d00093 li ra,13 + 80002b34: 001080bb addw ra,ra,ra + 80002b38: 01a00393 li t2,26 + 80002b3c: 01300193 li gp,19 + 80002b40: 30709463 bne ra,t2,80002e48 + +0000000080002b44 : + 80002b44: 00000213 li tp,0 + 80002b48: 00d00093 li ra,13 + 80002b4c: 00b00113 li sp,11 + 80002b50: 0020873b addw a4,ra,sp + 80002b54: 00070313 mv t1,a4 + 80002b58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b5c: 00200293 li t0,2 + 80002b60: fe5214e3 bne tp,t0,80002b48 + 80002b64: 01800393 li t2,24 + 80002b68: 01400193 li gp,20 + 80002b6c: 2c731e63 bne t1,t2,80002e48 + +0000000080002b70 : + 80002b70: 00000213 li tp,0 + 80002b74: 00e00093 li ra,14 + 80002b78: 00b00113 li sp,11 + 80002b7c: 0020873b addw a4,ra,sp + 80002b80: 00000013 nop + 80002b84: 00070313 mv t1,a4 + 80002b88: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b8c: 00200293 li t0,2 + 80002b90: fe5212e3 bne tp,t0,80002b74 + 80002b94: 01900393 li t2,25 + 80002b98: 01500193 li gp,21 + 80002b9c: 2a731663 bne t1,t2,80002e48 + +0000000080002ba0 : + 80002ba0: 00000213 li tp,0 + 80002ba4: 00f00093 li ra,15 + 80002ba8: 00b00113 li sp,11 + 80002bac: 0020873b addw a4,ra,sp + 80002bb0: 00000013 nop + 80002bb4: 00000013 nop + 80002bb8: 00070313 mv t1,a4 + 80002bbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc0: 00200293 li t0,2 + 80002bc4: fe5210e3 bne tp,t0,80002ba4 + 80002bc8: 01a00393 li t2,26 + 80002bcc: 01600193 li gp,22 + 80002bd0: 26731c63 bne t1,t2,80002e48 + +0000000080002bd4 : + 80002bd4: 00000213 li tp,0 + 80002bd8: 00d00093 li ra,13 + 80002bdc: 00b00113 li sp,11 + 80002be0: 0020873b addw a4,ra,sp + 80002be4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002be8: 00200293 li t0,2 + 80002bec: fe5216e3 bne tp,t0,80002bd8 + 80002bf0: 01800393 li t2,24 + 80002bf4: 01700193 li gp,23 + 80002bf8: 24771863 bne a4,t2,80002e48 + +0000000080002bfc : + 80002bfc: 00000213 li tp,0 + 80002c00: 00e00093 li ra,14 + 80002c04: 00b00113 li sp,11 + 80002c08: 00000013 nop + 80002c0c: 0020873b addw a4,ra,sp + 80002c10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c14: 00200293 li t0,2 + 80002c18: fe5214e3 bne tp,t0,80002c00 + 80002c1c: 01900393 li t2,25 + 80002c20: 01800193 li gp,24 + 80002c24: 22771263 bne a4,t2,80002e48 + +0000000080002c28 : + 80002c28: 00000213 li tp,0 + 80002c2c: 00f00093 li ra,15 + 80002c30: 00b00113 li sp,11 + 80002c34: 00000013 nop + 80002c38: 00000013 nop + 80002c3c: 0020873b addw a4,ra,sp + 80002c40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c44: 00200293 li t0,2 + 80002c48: fe5212e3 bne tp,t0,80002c2c + 80002c4c: 01a00393 li t2,26 + 80002c50: 01900193 li gp,25 + 80002c54: 1e771a63 bne a4,t2,80002e48 + +0000000080002c58 : + 80002c58: 00000213 li tp,0 + 80002c5c: 00d00093 li ra,13 + 80002c60: 00000013 nop + 80002c64: 00b00113 li sp,11 + 80002c68: 0020873b addw a4,ra,sp + 80002c6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c70: 00200293 li t0,2 + 80002c74: fe5214e3 bne tp,t0,80002c5c + 80002c78: 01800393 li t2,24 + 80002c7c: 01a00193 li gp,26 + 80002c80: 1c771463 bne a4,t2,80002e48 + +0000000080002c84 : + 80002c84: 00000213 li tp,0 + 80002c88: 00e00093 li ra,14 + 80002c8c: 00000013 nop + 80002c90: 00b00113 li sp,11 + 80002c94: 00000013 nop + 80002c98: 0020873b addw a4,ra,sp + 80002c9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ca0: 00200293 li t0,2 + 80002ca4: fe5212e3 bne tp,t0,80002c88 + 80002ca8: 01900393 li t2,25 + 80002cac: 01b00193 li gp,27 + 80002cb0: 18771c63 bne a4,t2,80002e48 + +0000000080002cb4 : + 80002cb4: 00000213 li tp,0 + 80002cb8: 00f00093 li ra,15 + 80002cbc: 00000013 nop + 80002cc0: 00000013 nop + 80002cc4: 00b00113 li sp,11 + 80002cc8: 0020873b addw a4,ra,sp + 80002ccc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd0: 00200293 li t0,2 + 80002cd4: fe5212e3 bne tp,t0,80002cb8 + 80002cd8: 01a00393 li t2,26 + 80002cdc: 01c00193 li gp,28 + 80002ce0: 16771463 bne a4,t2,80002e48 + +0000000080002ce4 : + 80002ce4: 00000213 li tp,0 + 80002ce8: 00b00113 li sp,11 + 80002cec: 00d00093 li ra,13 + 80002cf0: 0020873b addw a4,ra,sp + 80002cf4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cf8: 00200293 li t0,2 + 80002cfc: fe5216e3 bne tp,t0,80002ce8 + 80002d00: 01800393 li t2,24 + 80002d04: 01d00193 li gp,29 + 80002d08: 14771063 bne a4,t2,80002e48 + +0000000080002d0c : + 80002d0c: 00000213 li tp,0 + 80002d10: 00b00113 li sp,11 + 80002d14: 00e00093 li ra,14 + 80002d18: 00000013 nop + 80002d1c: 0020873b addw a4,ra,sp + 80002d20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d24: 00200293 li t0,2 + 80002d28: fe5214e3 bne tp,t0,80002d10 + 80002d2c: 01900393 li t2,25 + 80002d30: 01e00193 li gp,30 + 80002d34: 10771a63 bne a4,t2,80002e48 + +0000000080002d38 : + 80002d38: 00000213 li tp,0 + 80002d3c: 00b00113 li sp,11 + 80002d40: 00f00093 li ra,15 + 80002d44: 00000013 nop + 80002d48: 00000013 nop + 80002d4c: 0020873b addw a4,ra,sp + 80002d50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d54: 00200293 li t0,2 + 80002d58: fe5212e3 bne tp,t0,80002d3c + 80002d5c: 01a00393 li t2,26 + 80002d60: 01f00193 li gp,31 + 80002d64: 0e771263 bne a4,t2,80002e48 + +0000000080002d68 : + 80002d68: 00000213 li tp,0 + 80002d6c: 00b00113 li sp,11 + 80002d70: 00000013 nop + 80002d74: 00d00093 li ra,13 + 80002d78: 0020873b addw a4,ra,sp + 80002d7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d80: 00200293 li t0,2 + 80002d84: fe5214e3 bne tp,t0,80002d6c + 80002d88: 01800393 li t2,24 + 80002d8c: 02000193 li gp,32 + 80002d90: 0a771c63 bne a4,t2,80002e48 + +0000000080002d94 : + 80002d94: 00000213 li tp,0 + 80002d98: 00b00113 li sp,11 + 80002d9c: 00000013 nop + 80002da0: 00e00093 li ra,14 + 80002da4: 00000013 nop + 80002da8: 0020873b addw a4,ra,sp + 80002dac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002db0: 00200293 li t0,2 + 80002db4: fe5212e3 bne tp,t0,80002d98 + 80002db8: 01900393 li t2,25 + 80002dbc: 02100193 li gp,33 + 80002dc0: 08771463 bne a4,t2,80002e48 + +0000000080002dc4 : + 80002dc4: 00000213 li tp,0 + 80002dc8: 00b00113 li sp,11 + 80002dcc: 00000013 nop + 80002dd0: 00000013 nop + 80002dd4: 00f00093 li ra,15 + 80002dd8: 0020873b addw a4,ra,sp + 80002ddc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002de0: 00200293 li t0,2 + 80002de4: fe5212e3 bne tp,t0,80002dc8 + 80002de8: 01a00393 li t2,26 + 80002dec: 02200193 li gp,34 + 80002df0: 04771c63 bne a4,t2,80002e48 + +0000000080002df4 : + 80002df4: 00f00093 li ra,15 + 80002df8: 0010013b addw sp,zero,ra + 80002dfc: 00f00393 li t2,15 + 80002e00: 02300193 li gp,35 + 80002e04: 04711263 bne sp,t2,80002e48 + +0000000080002e08 : + 80002e08: 02000093 li ra,32 + 80002e0c: 0000813b addw sp,ra,zero + 80002e10: 02000393 li t2,32 + 80002e14: 02400193 li gp,36 + 80002e18: 02711863 bne sp,t2,80002e48 + +0000000080002e1c : + 80002e1c: 000000bb addw ra,zero,zero + 80002e20: 00000393 li t2,0 + 80002e24: 02500193 li gp,37 + 80002e28: 02709063 bne ra,t2,80002e48 + +0000000080002e2c : + 80002e2c: 01000093 li ra,16 + 80002e30: 01e00113 li sp,30 + 80002e34: 0020803b addw zero,ra,sp + 80002e38: 00000393 li t2,0 + 80002e3c: 02600193 li gp,38 + 80002e40: 00701463 bne zero,t2,80002e48 + 80002e44: 00301a63 bne zero,gp,80002e58 + +0000000080002e48 : + 80002e48: 00119513 slli a0,gp,0x1 + 80002e4c: 00050063 beqz a0,80002e4c + 80002e50: 00156513 ori a0,a0,1 + 80002e54: 00000073 ecall + +0000000080002e58 : + 80002e58: 00100513 li a0,1 + 80002e5c: 00000073 ecall + 80002e60: c0001073 unimp diff --git a/tests/rv64ui-v-and b/tests/rv64ui-v-and new file mode 100644 index 0000000000000000000000000000000000000000..815e1d45e4196210fbd04571dd59aa034c5475ee GIT binary patch literal 19928 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 y: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: a0c50513 addi a0,a0,-1524 # 80002ee0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: a4050513 addi a0,a0,-1472 # 80002f28 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: a7450513 addi a0,a0,-1420 # 80002f70 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: a7850513 addi a0,a0,-1416 # 80002f88 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 9d068693 addi a3,a3,-1584 # 80002fc8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: a2050513 addi a0,a0,-1504 # 80003068 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 96850513 addi a0,a0,-1688 # 80003090 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 8f850513 addi a0,a0,-1800 # 80003030 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 8ac50513 addi a0,a0,-1876 # 80002ff8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01200793 li a5,18 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0a1787b7 lui a5,0xa178 + 80002908: 00080637 lui a2,0x80 + 8000290c: 4b678793 addi a5,a5,1206 # a1784b6 <_start-0x75e87b4a> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 77050513 addi a0,a0,1904 # 800030c0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 000100b7 lui ra,0x10 + 8000296c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002970: 01009093 slli ra,ra,0x10 + 80002974: f0008093 addi ra,ra,-256 + 80002978: 0f0f1137 lui sp,0xf0f1 + 8000297c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002980: 0020f733 and a4,ra,sp + 80002984: 0f0013b7 lui t2,0xf001 + 80002988: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 8000298c: 00200193 li gp,2 + 80002990: 52771863 bne a4,t2,80002ec0 + +0000000080002994 : + 80002994: 0ff010b7 lui ra,0xff01 + 80002998: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 8000299c: 000f1137 lui sp,0xf1 + 800029a0: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 800029a4: 00c11113 slli sp,sp,0xc + 800029a8: 0f010113 addi sp,sp,240 + 800029ac: 0020f733 and a4,ra,sp + 800029b0: 00f003b7 lui t2,0xf00 + 800029b4: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 800029b8: 00300193 li gp,3 + 800029bc: 50771263 bne a4,t2,80002ec0 + +00000000800029c0 : + 800029c0: 00ff00b7 lui ra,0xff0 + 800029c4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 800029c8: 0f0f1137 lui sp,0xf0f1 + 800029cc: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 800029d0: 0020f733 and a4,ra,sp + 800029d4: 000f03b7 lui t2,0xf0 + 800029d8: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 800029dc: 00400193 li gp,4 + 800029e0: 4e771063 bne a4,t2,80002ec0 + +00000000800029e4 : + 800029e4: 000f00b7 lui ra,0xf0 + 800029e8: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 800029ec: 00c09093 slli ra,ra,0xc + 800029f0: 00f08093 addi ra,ra,15 + 800029f4: 000f1137 lui sp,0xf1 + 800029f8: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 800029fc: 00c11113 slli sp,sp,0xc + 80002a00: 0f010113 addi sp,sp,240 + 80002a04: 0020f733 and a4,ra,sp + 80002a08: 000f03b7 lui t2,0xf0 + 80002a0c: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002a10: 00c39393 slli t2,t2,0xc + 80002a14: 00500193 li gp,5 + 80002a18: 4a771463 bne a4,t2,80002ec0 + +0000000080002a1c : + 80002a1c: 000100b7 lui ra,0x10 + 80002a20: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a24: 01009093 slli ra,ra,0x10 + 80002a28: f0008093 addi ra,ra,-256 + 80002a2c: 0f0f1137 lui sp,0xf0f1 + 80002a30: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002a34: 0020f0b3 and ra,ra,sp + 80002a38: 0f0013b7 lui t2,0xf001 + 80002a3c: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002a40: 00600193 li gp,6 + 80002a44: 46709e63 bne ra,t2,80002ec0 + +0000000080002a48 : + 80002a48: 0ff010b7 lui ra,0xff01 + 80002a4c: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002a50: 000f1137 lui sp,0xf1 + 80002a54: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002a58: 00c11113 slli sp,sp,0xc + 80002a5c: 0f010113 addi sp,sp,240 + 80002a60: 0020f133 and sp,ra,sp + 80002a64: 00f003b7 lui t2,0xf00 + 80002a68: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002a6c: 00700193 li gp,7 + 80002a70: 44711863 bne sp,t2,80002ec0 + +0000000080002a74 : + 80002a74: 000100b7 lui ra,0x10 + 80002a78: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a7c: 01009093 slli ra,ra,0x10 + 80002a80: f0008093 addi ra,ra,-256 + 80002a84: 0010f0b3 and ra,ra,ra + 80002a88: 000103b7 lui t2,0x10 + 80002a8c: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002a90: 01039393 slli t2,t2,0x10 + 80002a94: f0038393 addi t2,t2,-256 + 80002a98: 00800193 li gp,8 + 80002a9c: 42709263 bne ra,t2,80002ec0 + +0000000080002aa0 : + 80002aa0: 00000213 li tp,0 + 80002aa4: 000100b7 lui ra,0x10 + 80002aa8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002aac: 01009093 slli ra,ra,0x10 + 80002ab0: f0008093 addi ra,ra,-256 + 80002ab4: 0f0f1137 lui sp,0xf0f1 + 80002ab8: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002abc: 0020f733 and a4,ra,sp + 80002ac0: 00070313 mv t1,a4 + 80002ac4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac8: 00200293 li t0,2 + 80002acc: fc521ce3 bne tp,t0,80002aa4 + 80002ad0: 0f0013b7 lui t2,0xf001 + 80002ad4: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002ad8: 00900193 li gp,9 + 80002adc: 3e731263 bne t1,t2,80002ec0 + +0000000080002ae0 : + 80002ae0: 00000213 li tp,0 + 80002ae4: 0ff010b7 lui ra,0xff01 + 80002ae8: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002aec: 000f1137 lui sp,0xf1 + 80002af0: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002af4: 00c11113 slli sp,sp,0xc + 80002af8: 0f010113 addi sp,sp,240 + 80002afc: 0020f733 and a4,ra,sp + 80002b00: 00000013 nop + 80002b04: 00070313 mv t1,a4 + 80002b08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b0c: 00200293 li t0,2 + 80002b10: fc521ae3 bne tp,t0,80002ae4 + 80002b14: 00f003b7 lui t2,0xf00 + 80002b18: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002b1c: 00a00193 li gp,10 + 80002b20: 3a731063 bne t1,t2,80002ec0 + +0000000080002b24 : + 80002b24: 00000213 li tp,0 + 80002b28: 00ff00b7 lui ra,0xff0 + 80002b2c: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b30: 0f0f1137 lui sp,0xf0f1 + 80002b34: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002b38: 0020f733 and a4,ra,sp + 80002b3c: 00000013 nop + 80002b40: 00000013 nop + 80002b44: 00070313 mv t1,a4 + 80002b48: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b4c: 00200293 li t0,2 + 80002b50: fc521ce3 bne tp,t0,80002b28 + 80002b54: 000f03b7 lui t2,0xf0 + 80002b58: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002b5c: 00b00193 li gp,11 + 80002b60: 36731063 bne t1,t2,80002ec0 + +0000000080002b64 : + 80002b64: 00000213 li tp,0 + 80002b68: 000100b7 lui ra,0x10 + 80002b6c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002b70: 01009093 slli ra,ra,0x10 + 80002b74: f0008093 addi ra,ra,-256 + 80002b78: 0f0f1137 lui sp,0xf0f1 + 80002b7c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002b80: 0020f733 and a4,ra,sp + 80002b84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b88: 00200293 li t0,2 + 80002b8c: fc521ee3 bne tp,t0,80002b68 + 80002b90: 0f0013b7 lui t2,0xf001 + 80002b94: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002b98: 00c00193 li gp,12 + 80002b9c: 32771263 bne a4,t2,80002ec0 + +0000000080002ba0 : + 80002ba0: 00000213 li tp,0 + 80002ba4: 0ff010b7 lui ra,0xff01 + 80002ba8: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002bac: 000f1137 lui sp,0xf1 + 80002bb0: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002bb4: 00c11113 slli sp,sp,0xc + 80002bb8: 0f010113 addi sp,sp,240 + 80002bbc: 00000013 nop + 80002bc0: 0020f733 and a4,ra,sp + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fc521ce3 bne tp,t0,80002ba4 + 80002bd0: 00f003b7 lui t2,0xf00 + 80002bd4: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002bd8: 00d00193 li gp,13 + 80002bdc: 2e771263 bne a4,t2,80002ec0 + +0000000080002be0 : + 80002be0: 00000213 li tp,0 + 80002be4: 00ff00b7 lui ra,0xff0 + 80002be8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002bec: 0f0f1137 lui sp,0xf0f1 + 80002bf0: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002bf4: 00000013 nop + 80002bf8: 00000013 nop + 80002bfc: 0020f733 and a4,ra,sp + 80002c00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c04: 00200293 li t0,2 + 80002c08: fc521ee3 bne tp,t0,80002be4 + 80002c0c: 000f03b7 lui t2,0xf0 + 80002c10: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002c14: 00e00193 li gp,14 + 80002c18: 2a771463 bne a4,t2,80002ec0 + +0000000080002c1c : + 80002c1c: 00000213 li tp,0 + 80002c20: 000100b7 lui ra,0x10 + 80002c24: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002c28: 01009093 slli ra,ra,0x10 + 80002c2c: f0008093 addi ra,ra,-256 + 80002c30: 00000013 nop + 80002c34: 0f0f1137 lui sp,0xf0f1 + 80002c38: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002c3c: 0020f733 and a4,ra,sp + 80002c40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c44: 00200293 li t0,2 + 80002c48: fc521ce3 bne tp,t0,80002c20 + 80002c4c: 0f0013b7 lui t2,0xf001 + 80002c50: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002c54: 00f00193 li gp,15 + 80002c58: 26771463 bne a4,t2,80002ec0 + +0000000080002c5c : + 80002c5c: 00000213 li tp,0 + 80002c60: 0ff010b7 lui ra,0xff01 + 80002c64: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002c68: 00000013 nop + 80002c6c: 000f1137 lui sp,0xf1 + 80002c70: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002c74: 00c11113 slli sp,sp,0xc + 80002c78: 0f010113 addi sp,sp,240 + 80002c7c: 00000013 nop + 80002c80: 0020f733 and a4,ra,sp + 80002c84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c88: 00200293 li t0,2 + 80002c8c: fc521ae3 bne tp,t0,80002c60 + 80002c90: 00f003b7 lui t2,0xf00 + 80002c94: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002c98: 01000193 li gp,16 + 80002c9c: 22771263 bne a4,t2,80002ec0 + +0000000080002ca0 : + 80002ca0: 00000213 li tp,0 + 80002ca4: 00ff00b7 lui ra,0xff0 + 80002ca8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002cac: 00000013 nop + 80002cb0: 00000013 nop + 80002cb4: 0f0f1137 lui sp,0xf0f1 + 80002cb8: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002cbc: 0020f733 and a4,ra,sp + 80002cc0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cc4: 00200293 li t0,2 + 80002cc8: fc521ee3 bne tp,t0,80002ca4 + 80002ccc: 000f03b7 lui t2,0xf0 + 80002cd0: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002cd4: 01100193 li gp,17 + 80002cd8: 1e771463 bne a4,t2,80002ec0 + +0000000080002cdc : + 80002cdc: 00000213 li tp,0 + 80002ce0: 0f0f1137 lui sp,0xf0f1 + 80002ce4: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002ce8: 000100b7 lui ra,0x10 + 80002cec: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002cf0: 01009093 slli ra,ra,0x10 + 80002cf4: f0008093 addi ra,ra,-256 + 80002cf8: 0020f733 and a4,ra,sp + 80002cfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d00: 00200293 li t0,2 + 80002d04: fc521ee3 bne tp,t0,80002ce0 + 80002d08: 0f0013b7 lui t2,0xf001 + 80002d0c: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002d10: 01200193 li gp,18 + 80002d14: 1a771663 bne a4,t2,80002ec0 + +0000000080002d18 : + 80002d18: 00000213 li tp,0 + 80002d1c: 000f1137 lui sp,0xf1 + 80002d20: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002d24: 00c11113 slli sp,sp,0xc + 80002d28: 0f010113 addi sp,sp,240 + 80002d2c: 0ff010b7 lui ra,0xff01 + 80002d30: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002d34: 00000013 nop + 80002d38: 0020f733 and a4,ra,sp + 80002d3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d40: 00200293 li t0,2 + 80002d44: fc521ce3 bne tp,t0,80002d1c + 80002d48: 00f003b7 lui t2,0xf00 + 80002d4c: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002d50: 01300193 li gp,19 + 80002d54: 16771663 bne a4,t2,80002ec0 + +0000000080002d58 : + 80002d58: 00000213 li tp,0 + 80002d5c: 0f0f1137 lui sp,0xf0f1 + 80002d60: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002d64: 00ff00b7 lui ra,0xff0 + 80002d68: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002d6c: 00000013 nop + 80002d70: 00000013 nop + 80002d74: 0020f733 and a4,ra,sp + 80002d78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d7c: 00200293 li t0,2 + 80002d80: fc521ee3 bne tp,t0,80002d5c + 80002d84: 000f03b7 lui t2,0xf0 + 80002d88: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002d8c: 01400193 li gp,20 + 80002d90: 12771863 bne a4,t2,80002ec0 + +0000000080002d94 : + 80002d94: 00000213 li tp,0 + 80002d98: 0f0f1137 lui sp,0xf0f1 + 80002d9c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002da0: 00000013 nop + 80002da4: 000100b7 lui ra,0x10 + 80002da8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002dac: 01009093 slli ra,ra,0x10 + 80002db0: f0008093 addi ra,ra,-256 + 80002db4: 0020f733 and a4,ra,sp + 80002db8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dbc: 00200293 li t0,2 + 80002dc0: fc521ce3 bne tp,t0,80002d98 + 80002dc4: 0f0013b7 lui t2,0xf001 + 80002dc8: f003839b addiw t2,t2,-256 # f000f00 <_start-0x70fff100> + 80002dcc: 01500193 li gp,21 + 80002dd0: 0e771863 bne a4,t2,80002ec0 + +0000000080002dd4 : + 80002dd4: 00000213 li tp,0 + 80002dd8: 000f1137 lui sp,0xf1 + 80002ddc: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002de0: 00c11113 slli sp,sp,0xc + 80002de4: 0f010113 addi sp,sp,240 + 80002de8: 00000013 nop + 80002dec: 0ff010b7 lui ra,0xff01 + 80002df0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002df4: 00000013 nop + 80002df8: 0020f733 and a4,ra,sp + 80002dfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e00: 00200293 li t0,2 + 80002e04: fc521ae3 bne tp,t0,80002dd8 + 80002e08: 00f003b7 lui t2,0xf00 + 80002e0c: 0f03839b addiw t2,t2,240 # f000f0 <_start-0x7f0fff10> + 80002e10: 01600193 li gp,22 + 80002e14: 0a771663 bne a4,t2,80002ec0 + +0000000080002e18 : + 80002e18: 00000213 li tp,0 + 80002e1c: 0f0f1137 lui sp,0xf0f1 + 80002e20: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002e24: 00000013 nop + 80002e28: 00000013 nop + 80002e2c: 00ff00b7 lui ra,0xff0 + 80002e30: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002e34: 0020f733 and a4,ra,sp + 80002e38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e3c: 00200293 li t0,2 + 80002e40: fc521ee3 bne tp,t0,80002e1c + 80002e44: 000f03b7 lui t2,0xf0 + 80002e48: 00f3839b addiw t2,t2,15 # f000f <_start-0x7ff0fff1> + 80002e4c: 01700193 li gp,23 + 80002e50: 06771863 bne a4,t2,80002ec0 + +0000000080002e54 : + 80002e54: 000100b7 lui ra,0x10 + 80002e58: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002e5c: 01009093 slli ra,ra,0x10 + 80002e60: f0008093 addi ra,ra,-256 + 80002e64: 00107133 and sp,zero,ra + 80002e68: 00000393 li t2,0 + 80002e6c: 01800193 li gp,24 + 80002e70: 04711863 bne sp,t2,80002ec0 + +0000000080002e74 : + 80002e74: 00ff00b7 lui ra,0xff0 + 80002e78: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002e7c: 0000f133 and sp,ra,zero + 80002e80: 00000393 li t2,0 + 80002e84: 01900193 li gp,25 + 80002e88: 02711c63 bne sp,t2,80002ec0 + +0000000080002e8c : + 80002e8c: 000070b3 and ra,zero,zero + 80002e90: 00000393 li t2,0 + 80002e94: 01a00193 li gp,26 + 80002e98: 02709463 bne ra,t2,80002ec0 + +0000000080002e9c : + 80002e9c: 111110b7 lui ra,0x11111 + 80002ea0: 1110809b addiw ra,ra,273 # 11111111 <_start-0x6eeeeeef> + 80002ea4: 22222137 lui sp,0x22222 + 80002ea8: 2221011b addiw sp,sp,546 # 22222222 <_start-0x5dddddde> + 80002eac: 0020f033 and zero,ra,sp + 80002eb0: 00000393 li t2,0 + 80002eb4: 01b00193 li gp,27 + 80002eb8: 00701463 bne zero,t2,80002ec0 + 80002ebc: 00301a63 bne zero,gp,80002ed0 + +0000000080002ec0 : + 80002ec0: 00119513 slli a0,gp,0x1 + 80002ec4: 00050063 beqz a0,80002ec4 + 80002ec8: 00156513 ori a0,a0,1 + 80002ecc: 00000073 ecall + +0000000080002ed0 : + 80002ed0: 00100513 li a0,1 + 80002ed4: 00000073 ecall + 80002ed8: c0001073 unimp diff --git a/tests/rv64ui-v-andi b/tests/rv64ui-v-andi new file mode 100644 index 0000000000000000000000000000000000000000..f074c02eb631d6f54d2da4d532b3a773748cf0ce GIT binary patch literal 18648 zcmeHPYj7Labv}#5?m~PB5SJ1-vT8%xSdYYEKmigdky5DI3O#AsTAId68+#~d2|gT> zfC*5d`$$2rLAr6;&{{=M?2aEzCen}2L=I%Z?RXry6-Cc9?Wi-AsAST{Eh8a6(h)o? z2{oa}es}kR4~X)g{`B6N-Lw1MbIv{YyXW3rNO$??2fy?MmmpB7xM-UAU5a6??1XaT zpe@@)3T)Q+X$!K#;&v^ z?v`X@cUl%3CBVP6gVYS?>W?}fb=_TK3lwB2-wrnit!3m)=KZ}A}(CW8!z4Ag2ZhkU9euyGE3 zB9q+dw8MbIfWv^pfWv^pfWv^pfWv^pfWv^pfWv^pfWv^pfWv^pfWv^pfWv^pfWv^p zfWv^pfWyEifPrk++my{ukXbxIS$UlF7Zg`$WE}seFOmNBYc6p@A~U_7%uzpm_gne- zsWapAT`8ieuV0&II${p>qodGCllCs^e>rK@GaXeB7P4LA_&@PsV*fwR+ECpRg%q^& zyyDW2-z0Np#(TT)`dtG$s^lgyEHFEP*|R$HbegiaE|Qs%g=~J3%+rc1dux`ahHlQW z_F3E7yOZ-%zsk?A=EG=1KmJOw`Xf&Gt$s{xQszVHv#nN)*vr5q(_{TqrS&9E%q-~N zP-to-KmR~lp=RmkqHe6vjy}C@^+kV8aj8Qi3n7mr=tGjo;)&rChY}z99YruMDi%jm zBe$$JL-O}qRrq8a$Ea0c{2FaD3#@JZmAuvd)amhgw$Fma)tt^-ZChMJmyH9{wZ@`O zvA7ml>@vBSj$Sv3_<298Cg)B0s!OLy*_6*S={Bx_3;5Qbm)+K04)|0357Pr9@?BOJ zQqJPuPa)|RO`VkI^_1iaNpDy&7+2sIwk!tJ&6Q%bai5K!mVeFgSmE_~i~E$~HYK0W zUtCyFmC>J=-aUeK#(`}+agEip zak2C-DmRw&&obVvd{d>dFw3>ug`dwMkLFc*7-RpepnArjlfpIne|(12QJM8c)RQ+L z<5IJdBP|8~zkCpN#f7O&vvWop^0rD~xeBg)K2w%?EXqHt>#@IN7krIupwO+eh)c5L z`g`SHN^uzzGID={SU(Vp%gQ&*iN-tVFJcTSl90=bqz@Hq)g$8=L*=M{EBYbJ6J};N zWtCYnau}0AG5 gMTfQ)@K7NSSWr?mM2#+W8sex!-FvddNHjTh9i; zoSeYC!FWy;tIeB5K|9|~36g3uel~^^msEcnWk>VKPw-l+_(a&|JZ{p?1A}kvLY}72 zd3-tL!-cFeLydKa4LKHiQ4z!+DP+7iO5%IC&W;LNFfVA~NkMCx5VV#q_{ZE(6c_q_ zH!PKE&x3Qo9)W!}zi}mN4 zjlKR88%qOg|2G?Jzk$6&>o9(Iw5DO~*;$AEJ1=A3&SnMsbtJ9nfQ0=vk`|0e*smi( zM?}4-1>Y30Uq>*Nl(pvR-1*6Tl$D+mRH+Kjp10U~@I8Gk*2%dlkFjeQ<51;hI;ZL?&(98-FW$lP^9`)i9znhCr|gJd$hOU53>CpV zeFeN6K|dxjmN|^GwYCV^F1!b9oSIW*s$tJ1w#SXFZQ2E;aJ%sPcfd<3rktH;AH%&CZjN0dGgTmNhx#X2eO-CmX2J4{`lF5I6(B2n` z$9wv_?ro&r>IU;`M|iK_&0BhUd!t>E-at=(A~`UqGZwbozds+_n=o%?l{i1vuIc`E z$w z>VsA;-0vjXUtg!n>qWu>Q2LH~S*6In?hf$pt5@J|N_}QE9E)&pH5@M+snu|79ABk~ zgpK571zXa|O&=|k!T1K96;`{_Kem*k2&_J3UGfuNM^FU#T8VGtI9g6wm;A(r%ePVBAwf8`?vFt=-)Yh znd4`;pZ|hf=fXT{<>S?ASKNePeoFm%%7*DzkW9Z2vh@p4VdXbCn11&*8=teL2u2)| z;h%cg#vjAfXT=NLYM0O7lAldn|Hr()r9amYu=JPaHRg>~>VY#J%JaX8>w8jmyCwZE zSo-dJ){Q4E94E5%ZSO=+17h)qId68p5_NF=serBj0yp>?_w$&r($8_O@8NzP;rf5Z z@t^Vjp5pk3i&sAzOrPvC9^_ZP93pCR^;WMMIFw1}=AU$vriMDIQ5A2v2srAJpq~ zybmWmKA5x-Xb<%D^hc6WiVh*l_G7VFl4ABc5Ck`ZRnP~SxL$G~cR!a7^;3iXjB zI6gLrF{OGv*4Kwn?Ogl+oF9NOQjajhOC@Dp@C9J;@3Qb(cS(!Ot&q%~FGox77Xe%0 zaa$~&TNkhFi+YF^?eqM{`-N5h6yKCBFXiorQOWFga;4JyN~+lgs`$Fcs~6umm<=nB z;$UmkV*GqvT>LvXPcW@zrL-_|i1lxUJzqCU_GRje?Uy|M9xl*!ymViZC41Jt<)svN z2|J1lh6PIimzVh8=_zl&WWQXNQDk|z%I$xNrH~c&R{Ssy)>l^WPlQ&%CxA=bag2#~ k7_lf9OAXn#R;>Ke66: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 6ac50513 addi a0,a0,1708 # 80002b80 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 6e050513 addi a0,a0,1760 # 80002bc8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 71450513 addi a0,a0,1812 # 80002c10 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 71850513 addi a0,a0,1816 # 80002c28 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 67068693 addi a3,a3,1648 # 80002c68 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 6c050513 addi a0,a0,1728 # 80002d08 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 60850513 addi a0,a0,1544 # 80002d30 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 59850513 addi a0,a0,1432 # 80002cd0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 54c50513 addi a0,a0,1356 # 80002c98 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01a00793 li a5,26 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 069897b7 lui a5,0x6989 + 80002908: 00080637 lui a2,0x80 + 8000290c: 68978793 addi a5,a5,1673 # 6989689 <_start-0x79676977> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 41050513 addi a0,a0,1040 # 80002d60 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 000100b7 lui ra,0x10 + 8000296c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002970: 01009093 slli ra,ra,0x10 + 80002974: f0008093 addi ra,ra,-256 + 80002978: f0f0f713 andi a4,ra,-241 + 8000297c: 000103b7 lui t2,0x10 + 80002980: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002984: 01039393 slli t2,t2,0x10 + 80002988: f0038393 addi t2,t2,-256 + 8000298c: 00200193 li gp,2 + 80002990: 1c771863 bne a4,t2,80002b60 + +0000000080002994 : + 80002994: 0ff010b7 lui ra,0xff01 + 80002998: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 8000299c: 0f00f713 andi a4,ra,240 + 800029a0: 0f000393 li t2,240 + 800029a4: 00300193 li gp,3 + 800029a8: 1a771c63 bne a4,t2,80002b60 + +00000000800029ac : + 800029ac: 00ff00b7 lui ra,0xff0 + 800029b0: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 800029b4: 70f0f713 andi a4,ra,1807 + 800029b8: 00f00393 li t2,15 + 800029bc: 00400193 li gp,4 + 800029c0: 1a771063 bne a4,t2,80002b60 + +00000000800029c4 : + 800029c4: 000f00b7 lui ra,0xf0 + 800029c8: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 800029cc: 00c09093 slli ra,ra,0xc + 800029d0: 00f08093 addi ra,ra,15 + 800029d4: 0f00f713 andi a4,ra,240 + 800029d8: 00000393 li t2,0 + 800029dc: 00500193 li gp,5 + 800029e0: 18771063 bne a4,t2,80002b60 + +00000000800029e4 : + 800029e4: 000100b7 lui ra,0x10 + 800029e8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 800029ec: 01009093 slli ra,ra,0x10 + 800029f0: f0008093 addi ra,ra,-256 + 800029f4: 0f00f093 andi ra,ra,240 + 800029f8: 00000393 li t2,0 + 800029fc: 00600193 li gp,6 + 80002a00: 16709063 bne ra,t2,80002b60 + +0000000080002a04 : + 80002a04: 00000213 li tp,0 + 80002a08: 0ff010b7 lui ra,0xff01 + 80002a0c: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002a10: 70f0f713 andi a4,ra,1807 + 80002a14: 00070313 mv t1,a4 + 80002a18: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a1c: 00200293 li t0,2 + 80002a20: fe5214e3 bne tp,t0,80002a08 + 80002a24: 70000393 li t2,1792 + 80002a28: 00700193 li gp,7 + 80002a2c: 12731a63 bne t1,t2,80002b60 + +0000000080002a30 : + 80002a30: 00000213 li tp,0 + 80002a34: 00ff00b7 lui ra,0xff0 + 80002a38: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002a3c: 0f00f713 andi a4,ra,240 + 80002a40: 00000013 nop + 80002a44: 00070313 mv t1,a4 + 80002a48: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a4c: 00200293 li t0,2 + 80002a50: fe5212e3 bne tp,t0,80002a34 + 80002a54: 0f000393 li t2,240 + 80002a58: 00800193 li gp,8 + 80002a5c: 10731263 bne t1,t2,80002b60 + +0000000080002a60 : + 80002a60: 00000213 li tp,0 + 80002a64: 000f00b7 lui ra,0xf0 + 80002a68: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 80002a6c: 00c09093 slli ra,ra,0xc + 80002a70: 00f08093 addi ra,ra,15 + 80002a74: f0f0f713 andi a4,ra,-241 + 80002a78: 00000013 nop + 80002a7c: 00000013 nop + 80002a80: 00070313 mv t1,a4 + 80002a84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a88: 00200293 li t0,2 + 80002a8c: fc521ce3 bne tp,t0,80002a64 + 80002a90: 000f03b7 lui t2,0xf0 + 80002a94: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002a98: 00c39393 slli t2,t2,0xc + 80002a9c: 00f38393 addi t2,t2,15 + 80002aa0: 00900193 li gp,9 + 80002aa4: 0a731e63 bne t1,t2,80002b60 + +0000000080002aa8 : + 80002aa8: 00000213 li tp,0 + 80002aac: 0ff010b7 lui ra,0xff01 + 80002ab0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002ab4: 70f0f713 andi a4,ra,1807 + 80002ab8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002abc: 00200293 li t0,2 + 80002ac0: fe5216e3 bne tp,t0,80002aac + 80002ac4: 70000393 li t2,1792 + 80002ac8: 00a00193 li gp,10 + 80002acc: 08771a63 bne a4,t2,80002b60 + +0000000080002ad0 : + 80002ad0: 00000213 li tp,0 + 80002ad4: 00ff00b7 lui ra,0xff0 + 80002ad8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002adc: 00000013 nop + 80002ae0: 0f00f713 andi a4,ra,240 + 80002ae4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae8: 00200293 li t0,2 + 80002aec: fe5214e3 bne tp,t0,80002ad4 + 80002af0: 0f000393 li t2,240 + 80002af4: 00b00193 li gp,11 + 80002af8: 06771463 bne a4,t2,80002b60 + +0000000080002afc : + 80002afc: 00000213 li tp,0 + 80002b00: 000f00b7 lui ra,0xf0 + 80002b04: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 80002b08: 00c09093 slli ra,ra,0xc + 80002b0c: 00f08093 addi ra,ra,15 + 80002b10: 00000013 nop + 80002b14: 00000013 nop + 80002b18: 70f0f713 andi a4,ra,1807 + 80002b1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b20: 00200293 li t0,2 + 80002b24: fc521ee3 bne tp,t0,80002b00 + 80002b28: 00f00393 li t2,15 + 80002b2c: 00c00193 li gp,12 + 80002b30: 02771863 bne a4,t2,80002b60 + +0000000080002b34 : + 80002b34: 0f007093 andi ra,zero,240 + 80002b38: 00000393 li t2,0 + 80002b3c: 00d00193 li gp,13 + 80002b40: 02709063 bne ra,t2,80002b60 + +0000000080002b44 : + 80002b44: 00ff00b7 lui ra,0xff0 + 80002b48: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b4c: 70f0f013 andi zero,ra,1807 + 80002b50: 00000393 li t2,0 + 80002b54: 00e00193 li gp,14 + 80002b58: 00701463 bne zero,t2,80002b60 + 80002b5c: 00301a63 bne zero,gp,80002b70 + +0000000080002b60 : + 80002b60: 00119513 slli a0,gp,0x1 + 80002b64: 00050063 beqz a0,80002b64 + 80002b68: 00156513 ori a0,a0,1 + 80002b6c: 00000073 ecall + +0000000080002b70 : + 80002b70: 00100513 li a0,1 + 80002b74: 00000073 ecall + 80002b78: c0001073 unimp diff --git a/tests/rv64ui-v-auipc b/tests/rv64ui-v-auipc new file mode 100644 index 0000000000000000000000000000000000000000..c3c1b80b90f25a7d9df16625b424b73c8bd9f224 GIT binary patch literal 17880 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0bd020ef jal ra,80002968 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8bc50513 addi a0,a0,-1860 # 8000296c + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 50450513 addi a0,a0,1284 # 800029d8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 53850513 addi a0,a0,1336 # 80002a20 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 56c50513 addi a0,a0,1388 # 80002a68 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 57050513 addi a0,a0,1392 # 80002a80 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 4c868693 addi a3,a3,1224 # 80002ac0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 51850513 addi a0,a0,1304 # 80002b60 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 46050513 addi a0,a0,1120 # 80002b88 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 3f050513 addi a0,a0,1008 # 80002b28 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 3a450513 addi a0,a0,932 # 80002af0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02a00793 li a5,42 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0962a7b7 lui a5,0x962a + 80002908: 00080637 lui a2,0x80 + 8000290c: af278793 addi a5,a5,-1294 # 9629af2 <_start-0x769d650e> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 26850513 addi a0,a0,616 # 80002bb8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + 80002964: 0000 .2byte 0x0 + 80002966: 0000 .2byte 0x0 + +0000000080002968 : + 80002968: 00008067 ret + +000000008000296c : + 8000296c: 00000013 nop + 80002970: 00002517 auipc a0,0x2 + 80002974: 71c50513 addi a0,a0,1820 # 8000508c + 80002978: 004005ef jal a1,8000297c + 8000297c: 40b50533 sub a0,a0,a1 + 80002980: 000023b7 lui t2,0x2 + 80002984: 7103839b addiw t2,t2,1808 # 2710 <_start-0x7fffd8f0> + 80002988: 00200193 li gp,2 + 8000298c: 02751463 bne a0,t2,800029b4 + +0000000080002990 : + 80002990: ffffe517 auipc a0,0xffffe + 80002994: 8fc50513 addi a0,a0,-1796 # 8000028c + 80002998: 004005ef jal a1,8000299c + 8000299c: 40b50533 sub a0,a0,a1 + 800029a0: ffffe3b7 lui t2,0xffffe + 800029a4: 8f03839b addiw t2,t2,-1808 # ffffffffffffd8f0 + 800029a8: 00300193 li gp,3 + 800029ac: 00751463 bne a0,t2,800029b4 + 800029b0: 00301a63 bne zero,gp,800029c4 + +00000000800029b4 : + 800029b4: 00119513 slli a0,gp,0x1 + 800029b8: 00050063 beqz a0,800029b8 + 800029bc: 00156513 ori a0,a0,1 + 800029c0: 00000073 ecall + +00000000800029c4 : + 800029c4: 00100513 li a0,1 + 800029c8: 00000073 ecall + 800029cc: c0001073 unimp + 800029d0: 0000 .2byte 0x0 + 800029d2: 0000 .2byte 0x0 diff --git a/tests/rv64ui-v-beq b/tests/rv64ui-v-beq new file mode 100644 index 0000000000000000000000000000000000000000..9d31f673246a2c0ef9e2f19eb6ea867935407281 GIT binary patch literal 19072 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 RI!vr+av$0kU@Ti~|9|f=8jJt{ literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-beq.dump b/tests/rv64ui-v-beq.dump new file mode 100644 index 0000000..40d3366 --- /dev/null +++ b/tests/rv64ui-v-beq.dump @@ -0,0 +1,1002 @@ + +rv64ui-v-beq: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 77450513 addi a0,a0,1908 # 80002c48 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7a850513 addi a0,a0,1960 # 80002c90 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7dc50513 addi a0,a0,2012 # 80002cd8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7e050513 addi a0,a0,2016 # 80002cf0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 73868693 addi a3,a3,1848 # 80002d30 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 78850513 addi a0,a0,1928 # 80002dd0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6d050513 addi a0,a0,1744 # 80002df8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 66050513 addi a0,a0,1632 # 80002d98 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 61450513 addi a0,a0,1556 # 80002d60 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03400793 li a5,52 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 029747b7 lui a5,0x2974 + 80002908: 00080637 lui a2,0x80 + 8000290c: 93378793 addi a5,a5,-1741 # 2973933 <_start-0x7d68c6cd> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4d850513 addi a0,a0,1240 # 80002e28 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00000113 li sp,0 + 80002974: 00208663 beq ra,sp,80002980 + 80002978: 2a301863 bne zero,gp,80002c28 + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe208ee3 beq ra,sp,8000297c + 80002984: 2a301263 bne zero,gp,80002c28 + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: 00100093 li ra,1 + 80002990: 00100113 li sp,1 + 80002994: 00208663 beq ra,sp,800029a0 + 80002998: 28301863 bne zero,gp,80002c28 + 8000299c: 00301663 bne zero,gp,800029a8 + 800029a0: fe208ee3 beq ra,sp,8000299c + 800029a4: 28301263 bne zero,gp,80002c28 + +00000000800029a8 : + 800029a8: 00400193 li gp,4 + 800029ac: fff00093 li ra,-1 + 800029b0: fff00113 li sp,-1 + 800029b4: 00208663 beq ra,sp,800029c0 + 800029b8: 26301863 bne zero,gp,80002c28 + 800029bc: 00301663 bne zero,gp,800029c8 + 800029c0: fe208ee3 beq ra,sp,800029bc + 800029c4: 26301263 bne zero,gp,80002c28 + +00000000800029c8 : + 800029c8: 00500193 li gp,5 + 800029cc: 00000093 li ra,0 + 800029d0: 00100113 li sp,1 + 800029d4: 00208463 beq ra,sp,800029dc + 800029d8: 00301463 bne zero,gp,800029e0 + 800029dc: 24301663 bne zero,gp,80002c28 + 800029e0: fe208ee3 beq ra,sp,800029dc + +00000000800029e4 : + 800029e4: 00600193 li gp,6 + 800029e8: 00100093 li ra,1 + 800029ec: 00000113 li sp,0 + 800029f0: 00208463 beq ra,sp,800029f8 + 800029f4: 00301463 bne zero,gp,800029fc + 800029f8: 22301863 bne zero,gp,80002c28 + 800029fc: fe208ee3 beq ra,sp,800029f8 + +0000000080002a00 : + 80002a00: 00700193 li gp,7 + 80002a04: fff00093 li ra,-1 + 80002a08: 00100113 li sp,1 + 80002a0c: 00208463 beq ra,sp,80002a14 + 80002a10: 00301463 bne zero,gp,80002a18 + 80002a14: 20301a63 bne zero,gp,80002c28 + 80002a18: fe208ee3 beq ra,sp,80002a14 + +0000000080002a1c : + 80002a1c: 00800193 li gp,8 + 80002a20: 00100093 li ra,1 + 80002a24: fff00113 li sp,-1 + 80002a28: 00208463 beq ra,sp,80002a30 + 80002a2c: 00301463 bne zero,gp,80002a34 + 80002a30: 1e301c63 bne zero,gp,80002c28 + 80002a34: fe208ee3 beq ra,sp,80002a30 + +0000000080002a38 : + 80002a38: 00900193 li gp,9 + 80002a3c: 00000213 li tp,0 + 80002a40: 00000093 li ra,0 + 80002a44: fff00113 li sp,-1 + 80002a48: 1e208063 beq ra,sp,80002c28 + 80002a4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a50: 00200293 li t0,2 + 80002a54: fe5216e3 bne tp,t0,80002a40 + +0000000080002a58 : + 80002a58: 00a00193 li gp,10 + 80002a5c: 00000213 li tp,0 + 80002a60: 00000093 li ra,0 + 80002a64: fff00113 li sp,-1 + 80002a68: 00000013 nop + 80002a6c: 1a208e63 beq ra,sp,80002c28 + 80002a70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a74: 00200293 li t0,2 + 80002a78: fe5214e3 bne tp,t0,80002a60 + +0000000080002a7c : + 80002a7c: 00b00193 li gp,11 + 80002a80: 00000213 li tp,0 + 80002a84: 00000093 li ra,0 + 80002a88: fff00113 li sp,-1 + 80002a8c: 00000013 nop + 80002a90: 00000013 nop + 80002a94: 18208a63 beq ra,sp,80002c28 + 80002a98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a9c: 00200293 li t0,2 + 80002aa0: fe5212e3 bne tp,t0,80002a84 + +0000000080002aa4 : + 80002aa4: 00c00193 li gp,12 + 80002aa8: 00000213 li tp,0 + 80002aac: 00000093 li ra,0 + 80002ab0: 00000013 nop + 80002ab4: fff00113 li sp,-1 + 80002ab8: 16208863 beq ra,sp,80002c28 + 80002abc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac0: 00200293 li t0,2 + 80002ac4: fe5214e3 bne tp,t0,80002aac + +0000000080002ac8 : + 80002ac8: 00d00193 li gp,13 + 80002acc: 00000213 li tp,0 + 80002ad0: 00000093 li ra,0 + 80002ad4: 00000013 nop + 80002ad8: fff00113 li sp,-1 + 80002adc: 00000013 nop + 80002ae0: 14208463 beq ra,sp,80002c28 + 80002ae4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae8: 00200293 li t0,2 + 80002aec: fe5212e3 bne tp,t0,80002ad0 + +0000000080002af0 : + 80002af0: 00e00193 li gp,14 + 80002af4: 00000213 li tp,0 + 80002af8: 00000093 li ra,0 + 80002afc: 00000013 nop + 80002b00: 00000013 nop + 80002b04: fff00113 li sp,-1 + 80002b08: 12208063 beq ra,sp,80002c28 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5212e3 bne tp,t0,80002af8 + +0000000080002b18 : + 80002b18: 00f00193 li gp,15 + 80002b1c: 00000213 li tp,0 + 80002b20: 00000093 li ra,0 + 80002b24: fff00113 li sp,-1 + 80002b28: 10208063 beq ra,sp,80002c28 + 80002b2c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b30: 00200293 li t0,2 + 80002b34: fe5216e3 bne tp,t0,80002b20 + +0000000080002b38 : + 80002b38: 01000193 li gp,16 + 80002b3c: 00000213 li tp,0 + 80002b40: 00000093 li ra,0 + 80002b44: fff00113 li sp,-1 + 80002b48: 00000013 nop + 80002b4c: 0c208e63 beq ra,sp,80002c28 + 80002b50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b54: 00200293 li t0,2 + 80002b58: fe5214e3 bne tp,t0,80002b40 + +0000000080002b5c : + 80002b5c: 01100193 li gp,17 + 80002b60: 00000213 li tp,0 + 80002b64: 00000093 li ra,0 + 80002b68: fff00113 li sp,-1 + 80002b6c: 00000013 nop + 80002b70: 00000013 nop + 80002b74: 0a208a63 beq ra,sp,80002c28 + 80002b78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b7c: 00200293 li t0,2 + 80002b80: fe5212e3 bne tp,t0,80002b64 + +0000000080002b84 : + 80002b84: 01200193 li gp,18 + 80002b88: 00000213 li tp,0 + 80002b8c: 00000093 li ra,0 + 80002b90: 00000013 nop + 80002b94: fff00113 li sp,-1 + 80002b98: 08208863 beq ra,sp,80002c28 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fe5214e3 bne tp,t0,80002b8c + +0000000080002ba8 : + 80002ba8: 01300193 li gp,19 + 80002bac: 00000213 li tp,0 + 80002bb0: 00000093 li ra,0 + 80002bb4: 00000013 nop + 80002bb8: fff00113 li sp,-1 + 80002bbc: 00000013 nop + 80002bc0: 06208463 beq ra,sp,80002c28 + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fe5212e3 bne tp,t0,80002bb0 + +0000000080002bd0 : + 80002bd0: 01400193 li gp,20 + 80002bd4: 00000213 li tp,0 + 80002bd8: 00000093 li ra,0 + 80002bdc: 00000013 nop + 80002be0: 00000013 nop + 80002be4: fff00113 li sp,-1 + 80002be8: 04208063 beq ra,sp,80002c28 + 80002bec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf0: 00200293 li t0,2 + 80002bf4: fe5212e3 bne tp,t0,80002bd8 + +0000000080002bf8 : + 80002bf8: 00100093 li ra,1 + 80002bfc: 00000a63 beqz zero,80002c10 + 80002c00: 00108093 addi ra,ra,1 + 80002c04: 00108093 addi ra,ra,1 + 80002c08: 00108093 addi ra,ra,1 + 80002c0c: 00108093 addi ra,ra,1 + 80002c10: 00108093 addi ra,ra,1 + 80002c14: 00108093 addi ra,ra,1 + 80002c18: 00300393 li t2,3 + 80002c1c: 01500193 li gp,21 + 80002c20: 00709463 bne ra,t2,80002c28 + 80002c24: 00301a63 bne zero,gp,80002c38 + +0000000080002c28 : + 80002c28: 00119513 slli a0,gp,0x1 + 80002c2c: 00050063 beqz a0,80002c2c + 80002c30: 00156513 ori a0,a0,1 + 80002c34: 00000073 ecall + +0000000080002c38 : + 80002c38: 00100513 li a0,1 + 80002c3c: 00000073 ecall + 80002c40: c0001073 unimp diff --git a/tests/rv64ui-v-bge b/tests/rv64ui-v-bge new file mode 100644 index 0000000000000000000000000000000000000000..4b477d8d99112c88ef53c89b78747ec14867f9db GIT binary patch literal 19264 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 X6)y7J=RnBI_&Xgd?T*Nwi~au(<9b: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 7d450513 addi a0,a0,2004 # 80002ca8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 80850513 addi a0,a0,-2040 # 80002cf0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 83c50513 addi a0,a0,-1988 # 80002d38 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 84050513 addi a0,a0,-1984 # 80002d50 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 79868693 addi a3,a3,1944 # 80002d90 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 7e850513 addi a0,a0,2024 # 80002e30 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 73050513 addi a0,a0,1840 # 80002e58 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 6c050513 addi a0,a0,1728 # 80002df8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 67450513 addi a0,a0,1652 # 80002dc0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01f00793 li a5,31 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 05e177b7 lui a5,0x5e17 + 80002908: 00080637 lui a2,0x80 + 8000290c: 4f578793 addi a5,a5,1269 # 5e174f5 <_start-0x7a1e8b0b> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 53850513 addi a0,a0,1336 # 80002e88 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00000113 li sp,0 + 80002974: 0020d663 bge ra,sp,80002980 + 80002978: 30301863 bne zero,gp,80002c88 + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe20dee3 bge ra,sp,8000297c + 80002984: 30301263 bne zero,gp,80002c88 + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: 00100093 li ra,1 + 80002990: 00100113 li sp,1 + 80002994: 0020d663 bge ra,sp,800029a0 + 80002998: 2e301863 bne zero,gp,80002c88 + 8000299c: 00301663 bne zero,gp,800029a8 + 800029a0: fe20dee3 bge ra,sp,8000299c + 800029a4: 2e301263 bne zero,gp,80002c88 + +00000000800029a8 : + 800029a8: 00400193 li gp,4 + 800029ac: fff00093 li ra,-1 + 800029b0: fff00113 li sp,-1 + 800029b4: 0020d663 bge ra,sp,800029c0 + 800029b8: 2c301863 bne zero,gp,80002c88 + 800029bc: 00301663 bne zero,gp,800029c8 + 800029c0: fe20dee3 bge ra,sp,800029bc + 800029c4: 2c301263 bne zero,gp,80002c88 + +00000000800029c8 : + 800029c8: 00500193 li gp,5 + 800029cc: 00100093 li ra,1 + 800029d0: 00000113 li sp,0 + 800029d4: 0020d663 bge ra,sp,800029e0 + 800029d8: 2a301863 bne zero,gp,80002c88 + 800029dc: 00301663 bne zero,gp,800029e8 + 800029e0: fe20dee3 bge ra,sp,800029dc + 800029e4: 2a301263 bne zero,gp,80002c88 + +00000000800029e8 : + 800029e8: 00600193 li gp,6 + 800029ec: 00100093 li ra,1 + 800029f0: fff00113 li sp,-1 + 800029f4: 0020d663 bge ra,sp,80002a00 + 800029f8: 28301863 bne zero,gp,80002c88 + 800029fc: 00301663 bne zero,gp,80002a08 + 80002a00: fe20dee3 bge ra,sp,800029fc + 80002a04: 28301263 bne zero,gp,80002c88 + +0000000080002a08 : + 80002a08: 00700193 li gp,7 + 80002a0c: fff00093 li ra,-1 + 80002a10: ffe00113 li sp,-2 + 80002a14: 0020d663 bge ra,sp,80002a20 + 80002a18: 26301863 bne zero,gp,80002c88 + 80002a1c: 00301663 bne zero,gp,80002a28 + 80002a20: fe20dee3 bge ra,sp,80002a1c + 80002a24: 26301263 bne zero,gp,80002c88 + +0000000080002a28 : + 80002a28: 00800193 li gp,8 + 80002a2c: 00000093 li ra,0 + 80002a30: 00100113 li sp,1 + 80002a34: 0020d463 bge ra,sp,80002a3c + 80002a38: 00301463 bne zero,gp,80002a40 + 80002a3c: 24301663 bne zero,gp,80002c88 + 80002a40: fe20dee3 bge ra,sp,80002a3c + +0000000080002a44 : + 80002a44: 00900193 li gp,9 + 80002a48: fff00093 li ra,-1 + 80002a4c: 00100113 li sp,1 + 80002a50: 0020d463 bge ra,sp,80002a58 + 80002a54: 00301463 bne zero,gp,80002a5c + 80002a58: 22301863 bne zero,gp,80002c88 + 80002a5c: fe20dee3 bge ra,sp,80002a58 + +0000000080002a60 : + 80002a60: 00a00193 li gp,10 + 80002a64: ffe00093 li ra,-2 + 80002a68: fff00113 li sp,-1 + 80002a6c: 0020d463 bge ra,sp,80002a74 + 80002a70: 00301463 bne zero,gp,80002a78 + 80002a74: 20301a63 bne zero,gp,80002c88 + 80002a78: fe20dee3 bge ra,sp,80002a74 + +0000000080002a7c : + 80002a7c: 00b00193 li gp,11 + 80002a80: ffe00093 li ra,-2 + 80002a84: 00100113 li sp,1 + 80002a88: 0020d463 bge ra,sp,80002a90 + 80002a8c: 00301463 bne zero,gp,80002a94 + 80002a90: 1e301c63 bne zero,gp,80002c88 + 80002a94: fe20dee3 bge ra,sp,80002a90 + +0000000080002a98 : + 80002a98: 00c00193 li gp,12 + 80002a9c: 00000213 li tp,0 + 80002aa0: fff00093 li ra,-1 + 80002aa4: 00000113 li sp,0 + 80002aa8: 1e20d063 bge ra,sp,80002c88 + 80002aac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ab0: 00200293 li t0,2 + 80002ab4: fe5216e3 bne tp,t0,80002aa0 + +0000000080002ab8 : + 80002ab8: 00d00193 li gp,13 + 80002abc: 00000213 li tp,0 + 80002ac0: fff00093 li ra,-1 + 80002ac4: 00000113 li sp,0 + 80002ac8: 00000013 nop + 80002acc: 1a20de63 bge ra,sp,80002c88 + 80002ad0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ad4: 00200293 li t0,2 + 80002ad8: fe5214e3 bne tp,t0,80002ac0 + +0000000080002adc : + 80002adc: 00e00193 li gp,14 + 80002ae0: 00000213 li tp,0 + 80002ae4: fff00093 li ra,-1 + 80002ae8: 00000113 li sp,0 + 80002aec: 00000013 nop + 80002af0: 00000013 nop + 80002af4: 1820da63 bge ra,sp,80002c88 + 80002af8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002afc: 00200293 li t0,2 + 80002b00: fe5212e3 bne tp,t0,80002ae4 + +0000000080002b04 : + 80002b04: 00f00193 li gp,15 + 80002b08: 00000213 li tp,0 + 80002b0c: fff00093 li ra,-1 + 80002b10: 00000013 nop + 80002b14: 00000113 li sp,0 + 80002b18: 1620d863 bge ra,sp,80002c88 + 80002b1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b20: 00200293 li t0,2 + 80002b24: fe5214e3 bne tp,t0,80002b0c + +0000000080002b28 : + 80002b28: 01000193 li gp,16 + 80002b2c: 00000213 li tp,0 + 80002b30: fff00093 li ra,-1 + 80002b34: 00000013 nop + 80002b38: 00000113 li sp,0 + 80002b3c: 00000013 nop + 80002b40: 1420d463 bge ra,sp,80002c88 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5212e3 bne tp,t0,80002b30 + +0000000080002b50 : + 80002b50: 01100193 li gp,17 + 80002b54: 00000213 li tp,0 + 80002b58: fff00093 li ra,-1 + 80002b5c: 00000013 nop + 80002b60: 00000013 nop + 80002b64: 00000113 li sp,0 + 80002b68: 1220d063 bge ra,sp,80002c88 + 80002b6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b70: 00200293 li t0,2 + 80002b74: fe5212e3 bne tp,t0,80002b58 + +0000000080002b78 : + 80002b78: 01200193 li gp,18 + 80002b7c: 00000213 li tp,0 + 80002b80: fff00093 li ra,-1 + 80002b84: 00000113 li sp,0 + 80002b88: 1020d063 bge ra,sp,80002c88 + 80002b8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b90: 00200293 li t0,2 + 80002b94: fe5216e3 bne tp,t0,80002b80 + +0000000080002b98 : + 80002b98: 01300193 li gp,19 + 80002b9c: 00000213 li tp,0 + 80002ba0: fff00093 li ra,-1 + 80002ba4: 00000113 li sp,0 + 80002ba8: 00000013 nop + 80002bac: 0c20de63 bge ra,sp,80002c88 + 80002bb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb4: 00200293 li t0,2 + 80002bb8: fe5214e3 bne tp,t0,80002ba0 + +0000000080002bbc : + 80002bbc: 01400193 li gp,20 + 80002bc0: 00000213 li tp,0 + 80002bc4: fff00093 li ra,-1 + 80002bc8: 00000113 li sp,0 + 80002bcc: 00000013 nop + 80002bd0: 00000013 nop + 80002bd4: 0a20da63 bge ra,sp,80002c88 + 80002bd8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bdc: 00200293 li t0,2 + 80002be0: fe5212e3 bne tp,t0,80002bc4 + +0000000080002be4 : + 80002be4: 01500193 li gp,21 + 80002be8: 00000213 li tp,0 + 80002bec: fff00093 li ra,-1 + 80002bf0: 00000013 nop + 80002bf4: 00000113 li sp,0 + 80002bf8: 0820d863 bge ra,sp,80002c88 + 80002bfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c00: 00200293 li t0,2 + 80002c04: fe5214e3 bne tp,t0,80002bec + +0000000080002c08 : + 80002c08: 01600193 li gp,22 + 80002c0c: 00000213 li tp,0 + 80002c10: fff00093 li ra,-1 + 80002c14: 00000013 nop + 80002c18: 00000113 li sp,0 + 80002c1c: 00000013 nop + 80002c20: 0620d463 bge ra,sp,80002c88 + 80002c24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c28: 00200293 li t0,2 + 80002c2c: fe5212e3 bne tp,t0,80002c10 + +0000000080002c30 : + 80002c30: 01700193 li gp,23 + 80002c34: 00000213 li tp,0 + 80002c38: fff00093 li ra,-1 + 80002c3c: 00000013 nop + 80002c40: 00000013 nop + 80002c44: 00000113 li sp,0 + 80002c48: 0420d063 bge ra,sp,80002c88 + 80002c4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c50: 00200293 li t0,2 + 80002c54: fe5212e3 bne tp,t0,80002c38 + +0000000080002c58 : + 80002c58: 00100093 li ra,1 + 80002c5c: 0000da63 bgez ra,80002c70 + 80002c60: 00108093 addi ra,ra,1 + 80002c64: 00108093 addi ra,ra,1 + 80002c68: 00108093 addi ra,ra,1 + 80002c6c: 00108093 addi ra,ra,1 + 80002c70: 00108093 addi ra,ra,1 + 80002c74: 00108093 addi ra,ra,1 + 80002c78: 00300393 li t2,3 + 80002c7c: 01800193 li gp,24 + 80002c80: 00709463 bne ra,t2,80002c88 + 80002c84: 00301a63 bne zero,gp,80002c98 + +0000000080002c88 : + 80002c88: 00119513 slli a0,gp,0x1 + 80002c8c: 00050063 beqz a0,80002c8c + 80002c90: 00156513 ori a0,a0,1 + 80002c94: 00000073 ecall + +0000000080002c98 : + 80002c98: 00100513 li a0,1 + 80002c9c: 00000073 ecall + 80002ca0: c0001073 unimp diff --git a/tests/rv64ui-v-bgeu b/tests/rv64ui-v-bgeu new file mode 100644 index 0000000000000000000000000000000000000000..81481e68c37b4931fcf6e0687b99057fce2fcb5c GIT binary patch literal 19480 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-bgeu.dump b/tests/rv64ui-v-bgeu.dump new file mode 100644 index 0000000..248ab46 --- /dev/null +++ b/tests/rv64ui-v-bgeu.dump @@ -0,0 +1,1086 @@ + +rv64ui-v-bgeu: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 8ac50513 addi a0,a0,-1876 # 80002d80 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 8e050513 addi a0,a0,-1824 # 80002dc8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 91450513 addi a0,a0,-1772 # 80002e10 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 91850513 addi a0,a0,-1768 # 80002e28 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 87068693 addi a3,a3,-1936 # 80002e68 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 8c050513 addi a0,a0,-1856 # 80002f08 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 80850513 addi a0,a0,-2040 # 80002f30 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 79850513 addi a0,a0,1944 # 80002ed0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 74c50513 addi a0,a0,1868 # 80002e98 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03d00793 li a5,61 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 02e567b7 lui a5,0x2e56 + 80002908: 00080637 lui a2,0x80 + 8000290c: eb078793 addi a5,a5,-336 # 2e55eb0 <_start-0x7d1aa150> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 61050513 addi a0,a0,1552 # 80002f60 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00000113 li sp,0 + 80002974: 0020f663 bgeu ra,sp,80002980 + 80002978: 3e301463 bne zero,gp,80002d60 + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe20fee3 bgeu ra,sp,8000297c + 80002984: 3c301e63 bne zero,gp,80002d60 + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: 00100093 li ra,1 + 80002990: 00100113 li sp,1 + 80002994: 0020f663 bgeu ra,sp,800029a0 + 80002998: 3c301463 bne zero,gp,80002d60 + 8000299c: 00301663 bne zero,gp,800029a8 + 800029a0: fe20fee3 bgeu ra,sp,8000299c + 800029a4: 3a301e63 bne zero,gp,80002d60 + +00000000800029a8 : + 800029a8: 00400193 li gp,4 + 800029ac: 0010009b addiw ra,zero,1 + 800029b0: 02009093 slli ra,ra,0x20 + 800029b4: fff08093 addi ra,ra,-1 + 800029b8: 0010011b addiw sp,zero,1 + 800029bc: 02011113 slli sp,sp,0x20 + 800029c0: fff10113 addi sp,sp,-1 + 800029c4: 0020f663 bgeu ra,sp,800029d0 + 800029c8: 38301c63 bne zero,gp,80002d60 + 800029cc: 00301663 bne zero,gp,800029d8 + 800029d0: fe20fee3 bgeu ra,sp,800029cc + 800029d4: 38301663 bne zero,gp,80002d60 + +00000000800029d8 : + 800029d8: 00500193 li gp,5 + 800029dc: 00100093 li ra,1 + 800029e0: 00000113 li sp,0 + 800029e4: 0020f663 bgeu ra,sp,800029f0 + 800029e8: 36301c63 bne zero,gp,80002d60 + 800029ec: 00301663 bne zero,gp,800029f8 + 800029f0: fe20fee3 bgeu ra,sp,800029ec + 800029f4: 36301663 bne zero,gp,80002d60 + +00000000800029f8 : + 800029f8: 00600193 li gp,6 + 800029fc: 0010009b addiw ra,zero,1 + 80002a00: 02009093 slli ra,ra,0x20 + 80002a04: fff08093 addi ra,ra,-1 + 80002a08: 0010011b addiw sp,zero,1 + 80002a0c: 02011113 slli sp,sp,0x20 + 80002a10: ffe10113 addi sp,sp,-2 + 80002a14: 0020f663 bgeu ra,sp,80002a20 + 80002a18: 34301463 bne zero,gp,80002d60 + 80002a1c: 00301663 bne zero,gp,80002a28 + 80002a20: fe20fee3 bgeu ra,sp,80002a1c + 80002a24: 32301e63 bne zero,gp,80002d60 + +0000000080002a28 : + 80002a28: 00700193 li gp,7 + 80002a2c: 0010009b addiw ra,zero,1 + 80002a30: 02009093 slli ra,ra,0x20 + 80002a34: fff08093 addi ra,ra,-1 + 80002a38: 00000113 li sp,0 + 80002a3c: 0020f663 bgeu ra,sp,80002a48 + 80002a40: 32301063 bne zero,gp,80002d60 + 80002a44: 00301663 bne zero,gp,80002a50 + 80002a48: fe20fee3 bgeu ra,sp,80002a44 + 80002a4c: 30301a63 bne zero,gp,80002d60 + +0000000080002a50 : + 80002a50: 00800193 li gp,8 + 80002a54: 00000093 li ra,0 + 80002a58: 00100113 li sp,1 + 80002a5c: 0020f463 bgeu ra,sp,80002a64 + 80002a60: 00301463 bne zero,gp,80002a68 + 80002a64: 2e301e63 bne zero,gp,80002d60 + 80002a68: fe20fee3 bgeu ra,sp,80002a64 + +0000000080002a6c : + 80002a6c: 00900193 li gp,9 + 80002a70: 0010009b addiw ra,zero,1 + 80002a74: 02009093 slli ra,ra,0x20 + 80002a78: ffe08093 addi ra,ra,-2 + 80002a7c: 0010011b addiw sp,zero,1 + 80002a80: 02011113 slli sp,sp,0x20 + 80002a84: fff10113 addi sp,sp,-1 + 80002a88: 0020f463 bgeu ra,sp,80002a90 + 80002a8c: 00301463 bne zero,gp,80002a94 + 80002a90: 2c301863 bne zero,gp,80002d60 + 80002a94: fe20fee3 bgeu ra,sp,80002a90 + +0000000080002a98 : + 80002a98: 00a00193 li gp,10 + 80002a9c: 00000093 li ra,0 + 80002aa0: 0010011b addiw sp,zero,1 + 80002aa4: 02011113 slli sp,sp,0x20 + 80002aa8: fff10113 addi sp,sp,-1 + 80002aac: 0020f463 bgeu ra,sp,80002ab4 + 80002ab0: 00301463 bne zero,gp,80002ab8 + 80002ab4: 2a301663 bne zero,gp,80002d60 + 80002ab8: fe20fee3 bgeu ra,sp,80002ab4 + +0000000080002abc : + 80002abc: 00b00193 li gp,11 + 80002ac0: 800000b7 lui ra,0x80000 + 80002ac4: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002ac8: 0010011b addiw sp,zero,1 + 80002acc: 01f11113 slli sp,sp,0x1f + 80002ad0: 0020f463 bgeu ra,sp,80002ad8 + 80002ad4: 00301463 bne zero,gp,80002adc + 80002ad8: 28301463 bne zero,gp,80002d60 + 80002adc: fe20fee3 bgeu ra,sp,80002ad8 + +0000000080002ae0 : + 80002ae0: 00c00193 li gp,12 + 80002ae4: 00000213 li tp,0 + 80002ae8: 00f0009b addiw ra,zero,15 + 80002aec: 01c09093 slli ra,ra,0x1c + 80002af0: fff08093 addi ra,ra,-1 + 80002af4: 00f0011b addiw sp,zero,15 + 80002af8: 01c11113 slli sp,sp,0x1c + 80002afc: 2620f263 bgeu ra,sp,80002d60 + 80002b00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b04: 00200293 li t0,2 + 80002b08: fe5210e3 bne tp,t0,80002ae8 + +0000000080002b0c : + 80002b0c: 00d00193 li gp,13 + 80002b10: 00000213 li tp,0 + 80002b14: 00f0009b addiw ra,zero,15 + 80002b18: 01c09093 slli ra,ra,0x1c + 80002b1c: fff08093 addi ra,ra,-1 + 80002b20: 00f0011b addiw sp,zero,15 + 80002b24: 01c11113 slli sp,sp,0x1c + 80002b28: 00000013 nop + 80002b2c: 2220fa63 bgeu ra,sp,80002d60 + 80002b30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b34: 00200293 li t0,2 + 80002b38: fc521ee3 bne tp,t0,80002b14 + +0000000080002b3c : + 80002b3c: 00e00193 li gp,14 + 80002b40: 00000213 li tp,0 + 80002b44: 00f0009b addiw ra,zero,15 + 80002b48: 01c09093 slli ra,ra,0x1c + 80002b4c: fff08093 addi ra,ra,-1 + 80002b50: 00f0011b addiw sp,zero,15 + 80002b54: 01c11113 slli sp,sp,0x1c + 80002b58: 00000013 nop + 80002b5c: 00000013 nop + 80002b60: 2020f063 bgeu ra,sp,80002d60 + 80002b64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b68: 00200293 li t0,2 + 80002b6c: fc521ce3 bne tp,t0,80002b44 + +0000000080002b70 : + 80002b70: 00f00193 li gp,15 + 80002b74: 00000213 li tp,0 + 80002b78: 00f0009b addiw ra,zero,15 + 80002b7c: 01c09093 slli ra,ra,0x1c + 80002b80: fff08093 addi ra,ra,-1 + 80002b84: 00000013 nop + 80002b88: 00f0011b addiw sp,zero,15 + 80002b8c: 01c11113 slli sp,sp,0x1c + 80002b90: 1c20f863 bgeu ra,sp,80002d60 + 80002b94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b98: 00200293 li t0,2 + 80002b9c: fc521ee3 bne tp,t0,80002b78 + +0000000080002ba0 : + 80002ba0: 01000193 li gp,16 + 80002ba4: 00000213 li tp,0 + 80002ba8: 00f0009b addiw ra,zero,15 + 80002bac: 01c09093 slli ra,ra,0x1c + 80002bb0: fff08093 addi ra,ra,-1 + 80002bb4: 00000013 nop + 80002bb8: 00f0011b addiw sp,zero,15 + 80002bbc: 01c11113 slli sp,sp,0x1c + 80002bc0: 00000013 nop + 80002bc4: 1820fe63 bgeu ra,sp,80002d60 + 80002bc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bcc: 00200293 li t0,2 + 80002bd0: fc521ce3 bne tp,t0,80002ba8 + +0000000080002bd4 : + 80002bd4: 01100193 li gp,17 + 80002bd8: 00000213 li tp,0 + 80002bdc: 00f0009b addiw ra,zero,15 + 80002be0: 01c09093 slli ra,ra,0x1c + 80002be4: fff08093 addi ra,ra,-1 + 80002be8: 00000013 nop + 80002bec: 00000013 nop + 80002bf0: 00f0011b addiw sp,zero,15 + 80002bf4: 01c11113 slli sp,sp,0x1c + 80002bf8: 1620f463 bgeu ra,sp,80002d60 + 80002bfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c00: 00200293 li t0,2 + 80002c04: fc521ce3 bne tp,t0,80002bdc + +0000000080002c08 : + 80002c08: 01200193 li gp,18 + 80002c0c: 00000213 li tp,0 + 80002c10: 00f0009b addiw ra,zero,15 + 80002c14: 01c09093 slli ra,ra,0x1c + 80002c18: fff08093 addi ra,ra,-1 + 80002c1c: 00f0011b addiw sp,zero,15 + 80002c20: 01c11113 slli sp,sp,0x1c + 80002c24: 1220fe63 bgeu ra,sp,80002d60 + 80002c28: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c2c: 00200293 li t0,2 + 80002c30: fe5210e3 bne tp,t0,80002c10 + +0000000080002c34 : + 80002c34: 01300193 li gp,19 + 80002c38: 00000213 li tp,0 + 80002c3c: 00f0009b addiw ra,zero,15 + 80002c40: 01c09093 slli ra,ra,0x1c + 80002c44: fff08093 addi ra,ra,-1 + 80002c48: 00f0011b addiw sp,zero,15 + 80002c4c: 01c11113 slli sp,sp,0x1c + 80002c50: 00000013 nop + 80002c54: 1020f663 bgeu ra,sp,80002d60 + 80002c58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c5c: 00200293 li t0,2 + 80002c60: fc521ee3 bne tp,t0,80002c3c + +0000000080002c64 : + 80002c64: 01400193 li gp,20 + 80002c68: 00000213 li tp,0 + 80002c6c: 00f0009b addiw ra,zero,15 + 80002c70: 01c09093 slli ra,ra,0x1c + 80002c74: fff08093 addi ra,ra,-1 + 80002c78: 00f0011b addiw sp,zero,15 + 80002c7c: 01c11113 slli sp,sp,0x1c + 80002c80: 00000013 nop + 80002c84: 00000013 nop + 80002c88: 0c20fc63 bgeu ra,sp,80002d60 + 80002c8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c90: 00200293 li t0,2 + 80002c94: fc521ce3 bne tp,t0,80002c6c + +0000000080002c98 : + 80002c98: 01500193 li gp,21 + 80002c9c: 00000213 li tp,0 + 80002ca0: 00f0009b addiw ra,zero,15 + 80002ca4: 01c09093 slli ra,ra,0x1c + 80002ca8: fff08093 addi ra,ra,-1 + 80002cac: 00000013 nop + 80002cb0: 00f0011b addiw sp,zero,15 + 80002cb4: 01c11113 slli sp,sp,0x1c + 80002cb8: 0a20f463 bgeu ra,sp,80002d60 + 80002cbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cc0: 00200293 li t0,2 + 80002cc4: fc521ee3 bne tp,t0,80002ca0 + +0000000080002cc8 : + 80002cc8: 01600193 li gp,22 + 80002ccc: 00000213 li tp,0 + 80002cd0: 00f0009b addiw ra,zero,15 + 80002cd4: 01c09093 slli ra,ra,0x1c + 80002cd8: fff08093 addi ra,ra,-1 + 80002cdc: 00000013 nop + 80002ce0: 00f0011b addiw sp,zero,15 + 80002ce4: 01c11113 slli sp,sp,0x1c + 80002ce8: 00000013 nop + 80002cec: 0620fa63 bgeu ra,sp,80002d60 + 80002cf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cf4: 00200293 li t0,2 + 80002cf8: fc521ce3 bne tp,t0,80002cd0 + +0000000080002cfc : + 80002cfc: 01700193 li gp,23 + 80002d00: 00000213 li tp,0 + 80002d04: 00f0009b addiw ra,zero,15 + 80002d08: 01c09093 slli ra,ra,0x1c + 80002d0c: fff08093 addi ra,ra,-1 + 80002d10: 00000013 nop + 80002d14: 00000013 nop + 80002d18: 00f0011b addiw sp,zero,15 + 80002d1c: 01c11113 slli sp,sp,0x1c + 80002d20: 0420f063 bgeu ra,sp,80002d60 + 80002d24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d28: 00200293 li t0,2 + 80002d2c: fc521ce3 bne tp,t0,80002d04 + +0000000080002d30 : + 80002d30: 00100093 li ra,1 + 80002d34: 0000fa63 bgeu ra,zero,80002d48 + 80002d38: 00108093 addi ra,ra,1 + 80002d3c: 00108093 addi ra,ra,1 + 80002d40: 00108093 addi ra,ra,1 + 80002d44: 00108093 addi ra,ra,1 + 80002d48: 00108093 addi ra,ra,1 + 80002d4c: 00108093 addi ra,ra,1 + 80002d50: 00300393 li t2,3 + 80002d54: 01800193 li gp,24 + 80002d58: 00709463 bne ra,t2,80002d60 + 80002d5c: 00301a63 bne zero,gp,80002d70 + +0000000080002d60 : + 80002d60: 00119513 slli a0,gp,0x1 + 80002d64: 00050063 beqz a0,80002d64 + 80002d68: 00156513 ori a0,a0,1 + 80002d6c: 00000073 ecall + +0000000080002d70 : + 80002d70: 00100513 li a0,1 + 80002d74: 00000073 ecall + 80002d78: c0001073 unimp diff --git a/tests/rv64ui-v-blt b/tests/rv64ui-v-blt new file mode 100644 index 0000000000000000000000000000000000000000..9d0a19bbac9445b93cb924689d853577d5aa2cce GIT binary patch literal 19072 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 W27HctZo|ZiX7{FJ0md#%{r?ZUTPLUh literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-blt.dump b/tests/rv64ui-v-blt.dump new file mode 100644 index 0000000..60adc55 --- /dev/null +++ b/tests/rv64ui-v-blt.dump @@ -0,0 +1,1002 @@ + +rv64ui-v-blt: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 77450513 addi a0,a0,1908 # 80002c48 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7a850513 addi a0,a0,1960 # 80002c90 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7dc50513 addi a0,a0,2012 # 80002cd8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7e050513 addi a0,a0,2016 # 80002cf0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 73868693 addi a3,a3,1848 # 80002d30 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 78850513 addi a0,a0,1928 # 80002dd0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6d050513 addi a0,a0,1744 # 80002df8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 66050513 addi a0,a0,1632 # 80002d98 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 61450513 addi a0,a0,1556 # 80002d60 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01300793 li a5,19 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 01a3a7b7 lui a5,0x1a3a + 80002908: 00080637 lui a2,0x80 + 8000290c: b4178793 addi a5,a5,-1215 # 1a39b41 <_start-0x7e5c64bf> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4d850513 addi a0,a0,1240 # 80002e28 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00100113 li sp,1 + 80002974: 0020c663 blt ra,sp,80002980 + 80002978: 2a301863 bne zero,gp,80002c28 + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe20cee3 blt ra,sp,8000297c + 80002984: 2a301263 bne zero,gp,80002c28 + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: fff00093 li ra,-1 + 80002990: 00100113 li sp,1 + 80002994: 0020c663 blt ra,sp,800029a0 + 80002998: 28301863 bne zero,gp,80002c28 + 8000299c: 00301663 bne zero,gp,800029a8 + 800029a0: fe20cee3 blt ra,sp,8000299c + 800029a4: 28301263 bne zero,gp,80002c28 + +00000000800029a8 : + 800029a8: 00400193 li gp,4 + 800029ac: ffe00093 li ra,-2 + 800029b0: fff00113 li sp,-1 + 800029b4: 0020c663 blt ra,sp,800029c0 + 800029b8: 26301863 bne zero,gp,80002c28 + 800029bc: 00301663 bne zero,gp,800029c8 + 800029c0: fe20cee3 blt ra,sp,800029bc + 800029c4: 26301263 bne zero,gp,80002c28 + +00000000800029c8 : + 800029c8: 00500193 li gp,5 + 800029cc: 00100093 li ra,1 + 800029d0: 00000113 li sp,0 + 800029d4: 0020c463 blt ra,sp,800029dc + 800029d8: 00301463 bne zero,gp,800029e0 + 800029dc: 24301663 bne zero,gp,80002c28 + 800029e0: fe20cee3 blt ra,sp,800029dc + +00000000800029e4 : + 800029e4: 00600193 li gp,6 + 800029e8: 00100093 li ra,1 + 800029ec: fff00113 li sp,-1 + 800029f0: 0020c463 blt ra,sp,800029f8 + 800029f4: 00301463 bne zero,gp,800029fc + 800029f8: 22301863 bne zero,gp,80002c28 + 800029fc: fe20cee3 blt ra,sp,800029f8 + +0000000080002a00 : + 80002a00: 00700193 li gp,7 + 80002a04: fff00093 li ra,-1 + 80002a08: ffe00113 li sp,-2 + 80002a0c: 0020c463 blt ra,sp,80002a14 + 80002a10: 00301463 bne zero,gp,80002a18 + 80002a14: 20301a63 bne zero,gp,80002c28 + 80002a18: fe20cee3 blt ra,sp,80002a14 + +0000000080002a1c : + 80002a1c: 00800193 li gp,8 + 80002a20: 00100093 li ra,1 + 80002a24: ffe00113 li sp,-2 + 80002a28: 0020c463 blt ra,sp,80002a30 + 80002a2c: 00301463 bne zero,gp,80002a34 + 80002a30: 1e301c63 bne zero,gp,80002c28 + 80002a34: fe20cee3 blt ra,sp,80002a30 + +0000000080002a38 : + 80002a38: 00900193 li gp,9 + 80002a3c: 00000213 li tp,0 + 80002a40: 00000093 li ra,0 + 80002a44: fff00113 li sp,-1 + 80002a48: 1e20c063 blt ra,sp,80002c28 + 80002a4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a50: 00200293 li t0,2 + 80002a54: fe5216e3 bne tp,t0,80002a40 + +0000000080002a58 : + 80002a58: 00a00193 li gp,10 + 80002a5c: 00000213 li tp,0 + 80002a60: 00000093 li ra,0 + 80002a64: fff00113 li sp,-1 + 80002a68: 00000013 nop + 80002a6c: 1a20ce63 blt ra,sp,80002c28 + 80002a70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a74: 00200293 li t0,2 + 80002a78: fe5214e3 bne tp,t0,80002a60 + +0000000080002a7c : + 80002a7c: 00b00193 li gp,11 + 80002a80: 00000213 li tp,0 + 80002a84: 00000093 li ra,0 + 80002a88: fff00113 li sp,-1 + 80002a8c: 00000013 nop + 80002a90: 00000013 nop + 80002a94: 1820ca63 blt ra,sp,80002c28 + 80002a98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a9c: 00200293 li t0,2 + 80002aa0: fe5212e3 bne tp,t0,80002a84 + +0000000080002aa4 : + 80002aa4: 00c00193 li gp,12 + 80002aa8: 00000213 li tp,0 + 80002aac: 00000093 li ra,0 + 80002ab0: 00000013 nop + 80002ab4: fff00113 li sp,-1 + 80002ab8: 1620c863 blt ra,sp,80002c28 + 80002abc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac0: 00200293 li t0,2 + 80002ac4: fe5214e3 bne tp,t0,80002aac + +0000000080002ac8 : + 80002ac8: 00d00193 li gp,13 + 80002acc: 00000213 li tp,0 + 80002ad0: 00000093 li ra,0 + 80002ad4: 00000013 nop + 80002ad8: fff00113 li sp,-1 + 80002adc: 00000013 nop + 80002ae0: 1420c463 blt ra,sp,80002c28 + 80002ae4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae8: 00200293 li t0,2 + 80002aec: fe5212e3 bne tp,t0,80002ad0 + +0000000080002af0 : + 80002af0: 00e00193 li gp,14 + 80002af4: 00000213 li tp,0 + 80002af8: 00000093 li ra,0 + 80002afc: 00000013 nop + 80002b00: 00000013 nop + 80002b04: fff00113 li sp,-1 + 80002b08: 1220c063 blt ra,sp,80002c28 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5212e3 bne tp,t0,80002af8 + +0000000080002b18 : + 80002b18: 00f00193 li gp,15 + 80002b1c: 00000213 li tp,0 + 80002b20: 00000093 li ra,0 + 80002b24: fff00113 li sp,-1 + 80002b28: 1020c063 blt ra,sp,80002c28 + 80002b2c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b30: 00200293 li t0,2 + 80002b34: fe5216e3 bne tp,t0,80002b20 + +0000000080002b38 : + 80002b38: 01000193 li gp,16 + 80002b3c: 00000213 li tp,0 + 80002b40: 00000093 li ra,0 + 80002b44: fff00113 li sp,-1 + 80002b48: 00000013 nop + 80002b4c: 0c20ce63 blt ra,sp,80002c28 + 80002b50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b54: 00200293 li t0,2 + 80002b58: fe5214e3 bne tp,t0,80002b40 + +0000000080002b5c : + 80002b5c: 01100193 li gp,17 + 80002b60: 00000213 li tp,0 + 80002b64: 00000093 li ra,0 + 80002b68: fff00113 li sp,-1 + 80002b6c: 00000013 nop + 80002b70: 00000013 nop + 80002b74: 0a20ca63 blt ra,sp,80002c28 + 80002b78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b7c: 00200293 li t0,2 + 80002b80: fe5212e3 bne tp,t0,80002b64 + +0000000080002b84 : + 80002b84: 01200193 li gp,18 + 80002b88: 00000213 li tp,0 + 80002b8c: 00000093 li ra,0 + 80002b90: 00000013 nop + 80002b94: fff00113 li sp,-1 + 80002b98: 0820c863 blt ra,sp,80002c28 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fe5214e3 bne tp,t0,80002b8c + +0000000080002ba8 : + 80002ba8: 01300193 li gp,19 + 80002bac: 00000213 li tp,0 + 80002bb0: 00000093 li ra,0 + 80002bb4: 00000013 nop + 80002bb8: fff00113 li sp,-1 + 80002bbc: 00000013 nop + 80002bc0: 0620c463 blt ra,sp,80002c28 + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fe5212e3 bne tp,t0,80002bb0 + +0000000080002bd0 : + 80002bd0: 01400193 li gp,20 + 80002bd4: 00000213 li tp,0 + 80002bd8: 00000093 li ra,0 + 80002bdc: 00000013 nop + 80002be0: 00000013 nop + 80002be4: fff00113 li sp,-1 + 80002be8: 0420c063 blt ra,sp,80002c28 + 80002bec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf0: 00200293 li t0,2 + 80002bf4: fe5212e3 bne tp,t0,80002bd8 + +0000000080002bf8 : + 80002bf8: 00100093 li ra,1 + 80002bfc: 00104a63 bgtz ra,80002c10 + 80002c00: 00108093 addi ra,ra,1 + 80002c04: 00108093 addi ra,ra,1 + 80002c08: 00108093 addi ra,ra,1 + 80002c0c: 00108093 addi ra,ra,1 + 80002c10: 00108093 addi ra,ra,1 + 80002c14: 00108093 addi ra,ra,1 + 80002c18: 00300393 li t2,3 + 80002c1c: 01500193 li gp,21 + 80002c20: 00709463 bne ra,t2,80002c28 + 80002c24: 00301a63 bne zero,gp,80002c38 + +0000000080002c28 : + 80002c28: 00119513 slli a0,gp,0x1 + 80002c2c: 00050063 beqz a0,80002c2c + 80002c30: 00156513 ori a0,a0,1 + 80002c34: 00000073 ecall + +0000000080002c38 : + 80002c38: 00100513 li a0,1 + 80002c3c: 00000073 ecall + 80002c40: c0001073 unimp diff --git a/tests/rv64ui-v-bltu b/tests/rv64ui-v-bltu new file mode 100644 index 0000000000000000000000000000000000000000..c17c0d0a21fc89e24fe77086bc7a760e18cd164a GIT binary patch literal 19272 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 U?zs*VKW%bv+Gb(wve^Fr0L+kal>h($ literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-bltu.dump b/tests/rv64ui-v-bltu.dump new file mode 100644 index 0000000..d6ce68d --- /dev/null +++ b/tests/rv64ui-v-bltu.dump @@ -0,0 +1,1052 @@ + +rv64ui-v-bltu: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 83c50513 addi a0,a0,-1988 # 80002d10 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 87050513 addi a0,a0,-1936 # 80002d58 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 8a450513 addi a0,a0,-1884 # 80002da0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 8a850513 addi a0,a0,-1880 # 80002db8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 80068693 addi a3,a3,-2048 # 80002df8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 85050513 addi a0,a0,-1968 # 80002e98 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 79850513 addi a0,a0,1944 # 80002ec0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 72850513 addi a0,a0,1832 # 80002e60 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 6dc50513 addi a0,a0,1756 # 80002e28 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03800793 li a5,56 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 09c3b7b7 lui a5,0x9c3b + 80002908: 00080637 lui a2,0x80 + 8000290c: 9db78793 addi a5,a5,-1573 # 9c3a9db <_start-0x763c5625> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 5a050513 addi a0,a0,1440 # 80002ef0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00100113 li sp,1 + 80002974: 0020e663 bltu ra,sp,80002980 + 80002978: 36301c63 bne zero,gp,80002cf0 + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe20eee3 bltu ra,sp,8000297c + 80002984: 36301663 bne zero,gp,80002cf0 + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: 0010009b addiw ra,zero,1 + 80002990: 02009093 slli ra,ra,0x20 + 80002994: ffe08093 addi ra,ra,-2 + 80002998: 0010011b addiw sp,zero,1 + 8000299c: 02011113 slli sp,sp,0x20 + 800029a0: fff10113 addi sp,sp,-1 + 800029a4: 0020e663 bltu ra,sp,800029b0 + 800029a8: 34301463 bne zero,gp,80002cf0 + 800029ac: 00301663 bne zero,gp,800029b8 + 800029b0: fe20eee3 bltu ra,sp,800029ac + 800029b4: 32301e63 bne zero,gp,80002cf0 + +00000000800029b8 : + 800029b8: 00400193 li gp,4 + 800029bc: 00000093 li ra,0 + 800029c0: 0010011b addiw sp,zero,1 + 800029c4: 02011113 slli sp,sp,0x20 + 800029c8: fff10113 addi sp,sp,-1 + 800029cc: 0020e663 bltu ra,sp,800029d8 + 800029d0: 32301063 bne zero,gp,80002cf0 + 800029d4: 00301663 bne zero,gp,800029e0 + 800029d8: fe20eee3 bltu ra,sp,800029d4 + 800029dc: 30301a63 bne zero,gp,80002cf0 + +00000000800029e0 : + 800029e0: 00500193 li gp,5 + 800029e4: 00100093 li ra,1 + 800029e8: 00000113 li sp,0 + 800029ec: 0020e463 bltu ra,sp,800029f4 + 800029f0: 00301463 bne zero,gp,800029f8 + 800029f4: 2e301e63 bne zero,gp,80002cf0 + 800029f8: fe20eee3 bltu ra,sp,800029f4 + +00000000800029fc : + 800029fc: 00600193 li gp,6 + 80002a00: 0010009b addiw ra,zero,1 + 80002a04: 02009093 slli ra,ra,0x20 + 80002a08: fff08093 addi ra,ra,-1 + 80002a0c: 0010011b addiw sp,zero,1 + 80002a10: 02011113 slli sp,sp,0x20 + 80002a14: ffe10113 addi sp,sp,-2 + 80002a18: 0020e463 bltu ra,sp,80002a20 + 80002a1c: 00301463 bne zero,gp,80002a24 + 80002a20: 2c301863 bne zero,gp,80002cf0 + 80002a24: fe20eee3 bltu ra,sp,80002a20 + +0000000080002a28 : + 80002a28: 00700193 li gp,7 + 80002a2c: 0010009b addiw ra,zero,1 + 80002a30: 02009093 slli ra,ra,0x20 + 80002a34: fff08093 addi ra,ra,-1 + 80002a38: 00000113 li sp,0 + 80002a3c: 0020e463 bltu ra,sp,80002a44 + 80002a40: 00301463 bne zero,gp,80002a48 + 80002a44: 2a301663 bne zero,gp,80002cf0 + 80002a48: fe20eee3 bltu ra,sp,80002a44 + +0000000080002a4c : + 80002a4c: 00800193 li gp,8 + 80002a50: 0010009b addiw ra,zero,1 + 80002a54: 01f09093 slli ra,ra,0x1f + 80002a58: 80000137 lui sp,0x80000 + 80002a5c: fff1011b addiw sp,sp,-1 # 7fffffff <_start-0x1> + 80002a60: 0020e463 bltu ra,sp,80002a68 + 80002a64: 00301463 bne zero,gp,80002a6c + 80002a68: 28301463 bne zero,gp,80002cf0 + 80002a6c: fe20eee3 bltu ra,sp,80002a68 + +0000000080002a70 : + 80002a70: 00900193 li gp,9 + 80002a74: 00000213 li tp,0 + 80002a78: 00f0009b addiw ra,zero,15 + 80002a7c: 01c09093 slli ra,ra,0x1c + 80002a80: 00f0011b addiw sp,zero,15 + 80002a84: 01c11113 slli sp,sp,0x1c + 80002a88: fff10113 addi sp,sp,-1 + 80002a8c: 2620e263 bltu ra,sp,80002cf0 + 80002a90: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a94: 00200293 li t0,2 + 80002a98: fe5210e3 bne tp,t0,80002a78 + +0000000080002a9c : + 80002a9c: 00a00193 li gp,10 + 80002aa0: 00000213 li tp,0 + 80002aa4: 00f0009b addiw ra,zero,15 + 80002aa8: 01c09093 slli ra,ra,0x1c + 80002aac: 00f0011b addiw sp,zero,15 + 80002ab0: 01c11113 slli sp,sp,0x1c + 80002ab4: fff10113 addi sp,sp,-1 + 80002ab8: 00000013 nop + 80002abc: 2220ea63 bltu ra,sp,80002cf0 + 80002ac0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac4: 00200293 li t0,2 + 80002ac8: fc521ee3 bne tp,t0,80002aa4 + +0000000080002acc : + 80002acc: 00b00193 li gp,11 + 80002ad0: 00000213 li tp,0 + 80002ad4: 00f0009b addiw ra,zero,15 + 80002ad8: 01c09093 slli ra,ra,0x1c + 80002adc: 00f0011b addiw sp,zero,15 + 80002ae0: 01c11113 slli sp,sp,0x1c + 80002ae4: fff10113 addi sp,sp,-1 + 80002ae8: 00000013 nop + 80002aec: 00000013 nop + 80002af0: 2020e063 bltu ra,sp,80002cf0 + 80002af4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002af8: 00200293 li t0,2 + 80002afc: fc521ce3 bne tp,t0,80002ad4 + +0000000080002b00 : + 80002b00: 00c00193 li gp,12 + 80002b04: 00000213 li tp,0 + 80002b08: 00f0009b addiw ra,zero,15 + 80002b0c: 01c09093 slli ra,ra,0x1c + 80002b10: 00000013 nop + 80002b14: 00f0011b addiw sp,zero,15 + 80002b18: 01c11113 slli sp,sp,0x1c + 80002b1c: fff10113 addi sp,sp,-1 + 80002b20: 1c20e863 bltu ra,sp,80002cf0 + 80002b24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b28: 00200293 li t0,2 + 80002b2c: fc521ee3 bne tp,t0,80002b08 + +0000000080002b30 : + 80002b30: 00d00193 li gp,13 + 80002b34: 00000213 li tp,0 + 80002b38: 00f0009b addiw ra,zero,15 + 80002b3c: 01c09093 slli ra,ra,0x1c + 80002b40: 00000013 nop + 80002b44: 00f0011b addiw sp,zero,15 + 80002b48: 01c11113 slli sp,sp,0x1c + 80002b4c: fff10113 addi sp,sp,-1 + 80002b50: 00000013 nop + 80002b54: 1820ee63 bltu ra,sp,80002cf0 + 80002b58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b5c: 00200293 li t0,2 + 80002b60: fc521ce3 bne tp,t0,80002b38 + +0000000080002b64 : + 80002b64: 00e00193 li gp,14 + 80002b68: 00000213 li tp,0 + 80002b6c: 00f0009b addiw ra,zero,15 + 80002b70: 01c09093 slli ra,ra,0x1c + 80002b74: 00000013 nop + 80002b78: 00000013 nop + 80002b7c: 00f0011b addiw sp,zero,15 + 80002b80: 01c11113 slli sp,sp,0x1c + 80002b84: fff10113 addi sp,sp,-1 + 80002b88: 1620e463 bltu ra,sp,80002cf0 + 80002b8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b90: 00200293 li t0,2 + 80002b94: fc521ce3 bne tp,t0,80002b6c + +0000000080002b98 : + 80002b98: 00f00193 li gp,15 + 80002b9c: 00000213 li tp,0 + 80002ba0: 00f0009b addiw ra,zero,15 + 80002ba4: 01c09093 slli ra,ra,0x1c + 80002ba8: 00f0011b addiw sp,zero,15 + 80002bac: 01c11113 slli sp,sp,0x1c + 80002bb0: fff10113 addi sp,sp,-1 + 80002bb4: 1220ee63 bltu ra,sp,80002cf0 + 80002bb8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bbc: 00200293 li t0,2 + 80002bc0: fe5210e3 bne tp,t0,80002ba0 + +0000000080002bc4 : + 80002bc4: 01000193 li gp,16 + 80002bc8: 00000213 li tp,0 + 80002bcc: 00f0009b addiw ra,zero,15 + 80002bd0: 01c09093 slli ra,ra,0x1c + 80002bd4: 00f0011b addiw sp,zero,15 + 80002bd8: 01c11113 slli sp,sp,0x1c + 80002bdc: fff10113 addi sp,sp,-1 + 80002be0: 00000013 nop + 80002be4: 1020e663 bltu ra,sp,80002cf0 + 80002be8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bec: 00200293 li t0,2 + 80002bf0: fc521ee3 bne tp,t0,80002bcc + +0000000080002bf4 : + 80002bf4: 01100193 li gp,17 + 80002bf8: 00000213 li tp,0 + 80002bfc: 00f0009b addiw ra,zero,15 + 80002c00: 01c09093 slli ra,ra,0x1c + 80002c04: 00f0011b addiw sp,zero,15 + 80002c08: 01c11113 slli sp,sp,0x1c + 80002c0c: fff10113 addi sp,sp,-1 + 80002c10: 00000013 nop + 80002c14: 00000013 nop + 80002c18: 0c20ec63 bltu ra,sp,80002cf0 + 80002c1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c20: 00200293 li t0,2 + 80002c24: fc521ce3 bne tp,t0,80002bfc + +0000000080002c28 : + 80002c28: 01200193 li gp,18 + 80002c2c: 00000213 li tp,0 + 80002c30: 00f0009b addiw ra,zero,15 + 80002c34: 01c09093 slli ra,ra,0x1c + 80002c38: 00000013 nop + 80002c3c: 00f0011b addiw sp,zero,15 + 80002c40: 01c11113 slli sp,sp,0x1c + 80002c44: fff10113 addi sp,sp,-1 + 80002c48: 0a20e463 bltu ra,sp,80002cf0 + 80002c4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c50: 00200293 li t0,2 + 80002c54: fc521ee3 bne tp,t0,80002c30 + +0000000080002c58 : + 80002c58: 01300193 li gp,19 + 80002c5c: 00000213 li tp,0 + 80002c60: 00f0009b addiw ra,zero,15 + 80002c64: 01c09093 slli ra,ra,0x1c + 80002c68: 00000013 nop + 80002c6c: 00f0011b addiw sp,zero,15 + 80002c70: 01c11113 slli sp,sp,0x1c + 80002c74: fff10113 addi sp,sp,-1 + 80002c78: 00000013 nop + 80002c7c: 0620ea63 bltu ra,sp,80002cf0 + 80002c80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c84: 00200293 li t0,2 + 80002c88: fc521ce3 bne tp,t0,80002c60 + +0000000080002c8c : + 80002c8c: 01400193 li gp,20 + 80002c90: 00000213 li tp,0 + 80002c94: 00f0009b addiw ra,zero,15 + 80002c98: 01c09093 slli ra,ra,0x1c + 80002c9c: 00000013 nop + 80002ca0: 00000013 nop + 80002ca4: 00f0011b addiw sp,zero,15 + 80002ca8: 01c11113 slli sp,sp,0x1c + 80002cac: fff10113 addi sp,sp,-1 + 80002cb0: 0420e063 bltu ra,sp,80002cf0 + 80002cb4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb8: 00200293 li t0,2 + 80002cbc: fc521ce3 bne tp,t0,80002c94 + +0000000080002cc0 : + 80002cc0: 00100093 li ra,1 + 80002cc4: 00106a63 bltu zero,ra,80002cd8 + 80002cc8: 00108093 addi ra,ra,1 + 80002ccc: 00108093 addi ra,ra,1 + 80002cd0: 00108093 addi ra,ra,1 + 80002cd4: 00108093 addi ra,ra,1 + 80002cd8: 00108093 addi ra,ra,1 + 80002cdc: 00108093 addi ra,ra,1 + 80002ce0: 00300393 li t2,3 + 80002ce4: 01500193 li gp,21 + 80002ce8: 00709463 bne ra,t2,80002cf0 + 80002cec: 00301a63 bne zero,gp,80002d00 + +0000000080002cf0 : + 80002cf0: 00119513 slli a0,gp,0x1 + 80002cf4: 00050063 beqz a0,80002cf4 + 80002cf8: 00156513 ori a0,a0,1 + 80002cfc: 00000073 ecall + +0000000080002d00 : + 80002d00: 00100513 li a0,1 + 80002d04: 00000073 ecall + 80002d08: c0001073 unimp diff --git a/tests/rv64ui-v-bne b/tests/rv64ui-v-bne new file mode 100644 index 0000000000000000000000000000000000000000..2200b933f06e9b42dfa4f9e65dc1b46ed7302a8d GIT binary patch literal 19072 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 77450513 addi a0,a0,1908 # 80002c48 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7a850513 addi a0,a0,1960 # 80002c90 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7dc50513 addi a0,a0,2012 # 80002cd8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7e050513 addi a0,a0,2016 # 80002cf0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 73868693 addi a3,a3,1848 # 80002d30 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 78850513 addi a0,a0,1928 # 80002dd0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6d050513 addi a0,a0,1744 # 80002df8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 66050513 addi a0,a0,1632 # 80002d98 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 61450513 addi a0,a0,1556 # 80002d60 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02600793 li a5,38 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0802e7b7 lui a5,0x802e + 80002908: 00080637 lui a2,0x80 + 8000290c: d7978793 addi a5,a5,-647 # 802dd79 <_start-0x77fd2287> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4d850513 addi a0,a0,1240 # 80002e28 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 00100113 li sp,1 + 80002974: 00209663 bne ra,sp,80002980 + 80002978: 2a301a63 bne zero,gp,80002c2c + 8000297c: 00301663 bne zero,gp,80002988 + 80002980: fe209ee3 bne ra,sp,8000297c + 80002984: 2a301463 bne zero,gp,80002c2c + +0000000080002988 : + 80002988: 00300193 li gp,3 + 8000298c: 00100093 li ra,1 + 80002990: 00000113 li sp,0 + 80002994: 00209663 bne ra,sp,800029a0 + 80002998: 28301a63 bne zero,gp,80002c2c + 8000299c: 00301663 bne zero,gp,800029a8 + 800029a0: fe209ee3 bne ra,sp,8000299c + 800029a4: 28301463 bne zero,gp,80002c2c + +00000000800029a8 : + 800029a8: 00400193 li gp,4 + 800029ac: fff00093 li ra,-1 + 800029b0: 00100113 li sp,1 + 800029b4: 00209663 bne ra,sp,800029c0 + 800029b8: 26301a63 bne zero,gp,80002c2c + 800029bc: 00301663 bne zero,gp,800029c8 + 800029c0: fe209ee3 bne ra,sp,800029bc + 800029c4: 26301463 bne zero,gp,80002c2c + +00000000800029c8 : + 800029c8: 00500193 li gp,5 + 800029cc: 00100093 li ra,1 + 800029d0: fff00113 li sp,-1 + 800029d4: 00209663 bne ra,sp,800029e0 + 800029d8: 24301a63 bne zero,gp,80002c2c + 800029dc: 00301663 bne zero,gp,800029e8 + 800029e0: fe209ee3 bne ra,sp,800029dc + 800029e4: 24301463 bne zero,gp,80002c2c + +00000000800029e8 : + 800029e8: 00600193 li gp,6 + 800029ec: 00000093 li ra,0 + 800029f0: 00000113 li sp,0 + 800029f4: 00209463 bne ra,sp,800029fc + 800029f8: 00301463 bne zero,gp,80002a00 + 800029fc: 22301863 bne zero,gp,80002c2c + 80002a00: fe209ee3 bne ra,sp,800029fc + +0000000080002a04 : + 80002a04: 00700193 li gp,7 + 80002a08: 00100093 li ra,1 + 80002a0c: 00100113 li sp,1 + 80002a10: 00209463 bne ra,sp,80002a18 + 80002a14: 00301463 bne zero,gp,80002a1c + 80002a18: 20301a63 bne zero,gp,80002c2c + 80002a1c: fe209ee3 bne ra,sp,80002a18 + +0000000080002a20 : + 80002a20: 00800193 li gp,8 + 80002a24: fff00093 li ra,-1 + 80002a28: fff00113 li sp,-1 + 80002a2c: 00209463 bne ra,sp,80002a34 + 80002a30: 00301463 bne zero,gp,80002a38 + 80002a34: 1e301c63 bne zero,gp,80002c2c + 80002a38: fe209ee3 bne ra,sp,80002a34 + +0000000080002a3c : + 80002a3c: 00900193 li gp,9 + 80002a40: 00000213 li tp,0 + 80002a44: 00000093 li ra,0 + 80002a48: 00000113 li sp,0 + 80002a4c: 1e209063 bne ra,sp,80002c2c + 80002a50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a54: 00200293 li t0,2 + 80002a58: fe5216e3 bne tp,t0,80002a44 + +0000000080002a5c : + 80002a5c: 00a00193 li gp,10 + 80002a60: 00000213 li tp,0 + 80002a64: 00000093 li ra,0 + 80002a68: 00000113 li sp,0 + 80002a6c: 00000013 nop + 80002a70: 1a209e63 bne ra,sp,80002c2c + 80002a74: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a78: 00200293 li t0,2 + 80002a7c: fe5214e3 bne tp,t0,80002a64 + +0000000080002a80 : + 80002a80: 00b00193 li gp,11 + 80002a84: 00000213 li tp,0 + 80002a88: 00000093 li ra,0 + 80002a8c: 00000113 li sp,0 + 80002a90: 00000013 nop + 80002a94: 00000013 nop + 80002a98: 18209a63 bne ra,sp,80002c2c + 80002a9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aa0: 00200293 li t0,2 + 80002aa4: fe5212e3 bne tp,t0,80002a88 + +0000000080002aa8 : + 80002aa8: 00c00193 li gp,12 + 80002aac: 00000213 li tp,0 + 80002ab0: 00000093 li ra,0 + 80002ab4: 00000013 nop + 80002ab8: 00000113 li sp,0 + 80002abc: 16209863 bne ra,sp,80002c2c + 80002ac0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac4: 00200293 li t0,2 + 80002ac8: fe5214e3 bne tp,t0,80002ab0 + +0000000080002acc : + 80002acc: 00d00193 li gp,13 + 80002ad0: 00000213 li tp,0 + 80002ad4: 00000093 li ra,0 + 80002ad8: 00000013 nop + 80002adc: 00000113 li sp,0 + 80002ae0: 00000013 nop + 80002ae4: 14209463 bne ra,sp,80002c2c + 80002ae8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aec: 00200293 li t0,2 + 80002af0: fe5212e3 bne tp,t0,80002ad4 + +0000000080002af4 : + 80002af4: 00e00193 li gp,14 + 80002af8: 00000213 li tp,0 + 80002afc: 00000093 li ra,0 + 80002b00: 00000013 nop + 80002b04: 00000013 nop + 80002b08: 00000113 li sp,0 + 80002b0c: 12209063 bne ra,sp,80002c2c + 80002b10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b14: 00200293 li t0,2 + 80002b18: fe5212e3 bne tp,t0,80002afc + +0000000080002b1c : + 80002b1c: 00f00193 li gp,15 + 80002b20: 00000213 li tp,0 + 80002b24: 00000093 li ra,0 + 80002b28: 00000113 li sp,0 + 80002b2c: 10209063 bne ra,sp,80002c2c + 80002b30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b34: 00200293 li t0,2 + 80002b38: fe5216e3 bne tp,t0,80002b24 + +0000000080002b3c : + 80002b3c: 01000193 li gp,16 + 80002b40: 00000213 li tp,0 + 80002b44: 00000093 li ra,0 + 80002b48: 00000113 li sp,0 + 80002b4c: 00000013 nop + 80002b50: 0c209e63 bne ra,sp,80002c2c + 80002b54: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b58: 00200293 li t0,2 + 80002b5c: fe5214e3 bne tp,t0,80002b44 + +0000000080002b60 : + 80002b60: 01100193 li gp,17 + 80002b64: 00000213 li tp,0 + 80002b68: 00000093 li ra,0 + 80002b6c: 00000113 li sp,0 + 80002b70: 00000013 nop + 80002b74: 00000013 nop + 80002b78: 0a209a63 bne ra,sp,80002c2c + 80002b7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b80: 00200293 li t0,2 + 80002b84: fe5212e3 bne tp,t0,80002b68 + +0000000080002b88 : + 80002b88: 01200193 li gp,18 + 80002b8c: 00000213 li tp,0 + 80002b90: 00000093 li ra,0 + 80002b94: 00000013 nop + 80002b98: 00000113 li sp,0 + 80002b9c: 08209863 bne ra,sp,80002c2c + 80002ba0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba4: 00200293 li t0,2 + 80002ba8: fe5214e3 bne tp,t0,80002b90 + +0000000080002bac : + 80002bac: 01300193 li gp,19 + 80002bb0: 00000213 li tp,0 + 80002bb4: 00000093 li ra,0 + 80002bb8: 00000013 nop + 80002bbc: 00000113 li sp,0 + 80002bc0: 00000013 nop + 80002bc4: 06209463 bne ra,sp,80002c2c + 80002bc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bcc: 00200293 li t0,2 + 80002bd0: fe5212e3 bne tp,t0,80002bb4 + +0000000080002bd4 : + 80002bd4: 01400193 li gp,20 + 80002bd8: 00000213 li tp,0 + 80002bdc: 00000093 li ra,0 + 80002be0: 00000013 nop + 80002be4: 00000013 nop + 80002be8: 00000113 li sp,0 + 80002bec: 04209063 bne ra,sp,80002c2c + 80002bf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf4: 00200293 li t0,2 + 80002bf8: fe5212e3 bne tp,t0,80002bdc + +0000000080002bfc : + 80002bfc: 00100093 li ra,1 + 80002c00: 00009a63 bnez ra,80002c14 + 80002c04: 00108093 addi ra,ra,1 + 80002c08: 00108093 addi ra,ra,1 + 80002c0c: 00108093 addi ra,ra,1 + 80002c10: 00108093 addi ra,ra,1 + 80002c14: 00108093 addi ra,ra,1 + 80002c18: 00108093 addi ra,ra,1 + 80002c1c: 00300393 li t2,3 + 80002c20: 01500193 li gp,21 + 80002c24: 00709463 bne ra,t2,80002c2c + 80002c28: 00301a63 bne zero,gp,80002c3c + +0000000080002c2c : + 80002c2c: 00119513 slli a0,gp,0x1 + 80002c30: 00050063 beqz a0,80002c30 + 80002c34: 00156513 ori a0,a0,1 + 80002c38: 00000073 ecall + +0000000080002c3c : + 80002c3c: 00100513 li a0,1 + 80002c40: 00000073 ecall + 80002c44: c0001073 unimp diff --git a/tests/rv64ui-v-fence_i b/tests/rv64ui-v-fence_i new file mode 100644 index 0000000000000000000000000000000000000000..2c8949002a7acc1e6c9de28d73fa3e64f265008b GIT binary patch literal 19072 zcmeHPZ)_XKm4D0S?o$7(l~y)=Ns!RqB#w(zp-kG6E!t%+ag?-a8wYLNB5q}RMg74^ zB1=+=a=_)NtSO~Ev{k*a>83^Oq($9NtrI#{?+~PJ5n1`ryGwCr%Popa3Z2aYZD9sF ziEdA(?l-$jS)%1!arZGh!0wxU^WK~He)DE#DGmAedmn$q#c@5ad%qs@(ckFXGIDaFu}Sx5h;I=%y(Po(+XNT*EVNM)cjbkLEU$torxKbDL%O!l<9|L48eXXrHVI92@7rM=-^m zkR1dZ1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$1RMk$ z1RMlD5(wma-k@B5nvCKzloO{&J1n^ZV^jE_zChY@7hL?bKt^Ug8RK61-Z%55+2d2C zo;1Pr=OKfjAqBKn0*Gs zAA}XyWEjUN%rSiRj`=0lxAs!r?0@#yREeFlV1Bh{@@C&A){tf6z+}y_*eID;^UQaV zTuesWI0OIfIBRE0hWM^aqZ!c}BxXgURoM^p#{?@J~K7N{{-Xg@-*qKFHm*_x%(5(+v@3gwxq+>IEkP?9T6$hI#`j__$fOMyk&gw^j?CZ2Z+ADK&;PL3KnXEQdT>b5!7Wae}^U)XleZZoPe!=R+K?heloeZqB9e9_8SlC-&}LKjvFAvhhqSX~!k; zD*8^!e&V-atWIH!tBY11OR_u5&Toy0U$o|ybn=$@{JQk&n)z(vdg46h1;h8ejqjI% z?>QUaxB0Dt(0T{XcHND>4!`~FY&+;beCpe+HEx=$et#+ZcXWoM z;@KQU9u+ax*J;vA6sTP!ZC$9w*#8SsUhJU2_+jKG)(MwXLXI6YvaQJB|0exS%*A4@ z8*9Co{CJJrx`8Ms9N-k87JJWY@bSIxYwNI1F4lVV?V}inS~rtn?P&XE4tA4royNo~Q(9m?sQy2*wXA68#gmXlj&<5OmiZK(U$f(V!;+bL1o?E@&ZjeqP{r^$Gq)xD zf%cNLF}oizk4s<0c>R&hPt`x#=cqw&-fDf{2ST<}u1 z4Z1Hpno-2Uk{X&X8OMHrwfYoc`udD38%XKF`h4LXQj`VW7%$eUp=%}e^dcnIO0{&&g%oj@L{i-fj`rE_>kvw#Tj6k zr$BKU?=Rp8-dBR>lUc}aP%ffsx#Dd85`1P5dEU13;o*o4n zf62whPd)N#mq|~&eu%BBS)9j2j%htQe1{!_KX<#qVeNToSX87iF6?i2N+nb0_^Ss^ zdi3>!O!qJ8bES;c*YtrKeNFfc&QIEl!=&BjC*^1ZX(W&mU5~Y!jgf59q)g}V_`jA1 zlgVfz)fXG|bw~R8qg}gvk*=>ocgd?bC zx!KO9`{Jpm17CWY*?VAxu`l`V_4!BqZGO|N78y!LeY{sWgu(CJv5jcipOIKrjU%J;=Tbu zyd1ebpbl{ma1i)^BVdeOY%<2K)a4}}?}KMIGx}fvW)po$ZJ4;NsJdk#F}x$#w=M4P z9ALKyyLGc$7jER?s%ttPdT5vLzMieVmX_w0X8(u!#aq7ukggQs37c8@`}`{!dG;#< zK74qqC_K682>ZnErKliAi~Oza54GbEf#;#Oc|oHHvjH>EdIloBCPxzm)UQ4wVi(jpV|3^ z9WP$#%<^xzH@I%(c{#Ix3qHf)aK*U)-j>IoP12}RS^iI`%XpuwoL^P&S6(B}W$>9l zK^r$V9;|q6{sEt5|FFfTJ8e4;a~9ub(^gyFW81mkZt&au-`Me%U$%Feb}%j#^LmfT zcTregZNI~|6IU(%89cM{Ia?mVrA>x?d)nl4^d_z5AF}PdZ^u>6H`27dk4GQt8E%fz z-6PZ+8SLthb|#|9Xo?00`Z|a4eiTbkDiMj7>zel1!;cL0GYz}}4pJ(bOm%J}_8x52 z0~C)WlZ2N;yka(MG(3Qt79UDk90(-_`UWGZC`CtLxbsjfmSWOc{8@^mV*M0P(Li*7 zJ$5Ie(f&TzXK%AfSh9p|H`eCc zz>%RulsYXT*6%=^bWmI{!DMWpHOxt z_CU>tfNgWqyqlY0b0h_%4-H`)s9B2*48Y-)De-@*-wrLL3?Wm?C2dyhiM#y!H+HML zEM?PsL7Be2jIc?VHk*9rogTHw@;$sDd%d!om)8-d!wTDXR{8I@{SUKN{H~Bimha{Dtju@}6}C1l#~-%zo5Hrl z6E-cA3Im@3f0h2kYW)iFW&g|OK8FhWj+dXywA??#XJskJUFLP8!g&5N!={ghtx9G8 zW&M@30%B9~3uS#Q)vVwvn8fxn7Aq_GQ?6Oqo6ItHHjk0sz1Bltxg)!+;*lD_UrYa& Pk5~%q@A4~4rT+f_?2B6f literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-fence_i.dump b/tests/rv64ui-v-fence_i.dump new file mode 100644 index 0000000..575dd76 --- /dev/null +++ b/tests/rv64ui-v-fence_i.dump @@ -0,0 +1,888 @@ + +rv64ui-v-fence_i: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0d5020ef jal ra,80002980 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8d450513 addi a0,a0,-1836 # 80002984 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 5cc50513 addi a0,a0,1484 # 80002aa0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 60050513 addi a0,a0,1536 # 80002ae8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 63450513 addi a0,a0,1588 # 80002b30 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 63850513 addi a0,a0,1592 # 80002b48 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 59068693 addi a3,a3,1424 # 80002b88 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 5e050513 addi a0,a0,1504 # 80002c28 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 52850513 addi a0,a0,1320 # 80002c50 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 4b850513 addi a0,a0,1208 # 80002bf0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 46c50513 addi a0,a0,1132 # 80002bb8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03300793 li a5,51 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 032fe7b7 lui a5,0x32fe + 80002908: 00080637 lui a2,0x80 + 8000290c: 19f78793 addi a5,a5,415 # 32fe19f <_start-0x7cd01e61> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 33050513 addi a0,a0,816 # 80002c80 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + 80002964: 0000 .2byte 0x0 + 80002966: 0000 .2byte 0x0 + 80002968: 0000 .2byte 0x0 + 8000296a: 0000 .2byte 0x0 + 8000296c: 0000 .2byte 0x0 + 8000296e: 0000 .2byte 0x0 + 80002970: 0000 .2byte 0x0 + 80002972: 0000 .2byte 0x0 + 80002974: 0000 .2byte 0x0 + 80002976: 0000 .2byte 0x0 + 80002978: 0000 .2byte 0x0 + 8000297a: 0000 .2byte 0x0 + 8000297c: 0000 .2byte 0x0 + 8000297e: 0000 .2byte 0x0 + +0000000080002980 : + 80002980: 00008067 ret + +0000000080002984 : + 80002984: 06f00693 li a3,111 + 80002988: 00000517 auipc a0,0x0 + 8000298c: 67851503 lh a0,1656(a0) # 80003000 + 80002990: 00000597 auipc a1,0x0 + 80002994: 67259583 lh a1,1650(a1) # 80003002 + 80002998: 00000013 nop + 8000299c: 00000013 nop + 800029a0: 00000013 nop + 800029a4: 00000013 nop + 800029a8: 00000013 nop + 800029ac: 00000013 nop + 800029b0: 00000013 nop + 800029b4: 00000013 nop + 800029b8: 00000013 nop + 800029bc: 00000013 nop + 800029c0: 00000297 auipc t0,0x0 + 800029c4: 64a29223 sh a0,1604(t0) # 80003004 + 800029c8: 00000297 auipc t0,0x0 + 800029cc: 62b29f23 sh a1,1598(t0) # 80003006 + 800029d0: 0000100f fence.i + 800029d4: 00000797 auipc a5,0x0 + 800029d8: 63078793 addi a5,a5,1584 # 80003004 + 800029dc: 00078367 jalr t1,a5 + +00000000800029e0 : + 800029e0: 00000013 nop + 800029e4: 1bc00393 li t2,444 + 800029e8: 00200193 li gp,2 + 800029ec: 06769a63 bne a3,t2,80002a60 + 800029f0: 06400713 li a4,100 + 800029f4: fff70713 addi a4,a4,-1 + 800029f8: fe071ee3 bnez a4,800029f4 + 800029fc: 00000297 auipc t0,0x0 + 80002a00: 60a29823 sh a0,1552(t0) # 8000300c + 80002a04: 00000297 auipc t0,0x0 + 80002a08: 60b29523 sh a1,1546(t0) # 8000300e + 80002a0c: 0000100f fence.i + 80002a10: 00000013 nop + 80002a14: 00000013 nop + 80002a18: 00000013 nop + 80002a1c: 00000013 nop + 80002a20: 00000013 nop + 80002a24: 00000013 nop + 80002a28: 00000013 nop + 80002a2c: 00000013 nop + 80002a30: 00000013 nop + 80002a34: 00000013 nop + 80002a38: 00000013 nop + 80002a3c: 00000013 nop + 80002a40: 00000797 auipc a5,0x0 + 80002a44: 5cc78793 addi a5,a5,1484 # 8000300c + 80002a48: 00078367 jalr t1,a5 + +0000000080002a4c : + 80002a4c: 00000013 nop + 80002a50: 30900393 li t2,777 + 80002a54: 00300193 li gp,3 + 80002a58: 00769463 bne a3,t2,80002a60 + 80002a5c: 00301a63 bne zero,gp,80002a70 + +0000000080002a60 : + 80002a60: 00119513 slli a0,gp,0x1 + 80002a64: 00050063 beqz a0,80002a64 + 80002a68: 00156513 ori a0,a0,1 + 80002a6c: 00000073 ecall + +0000000080002a70 : + 80002a70: 00100513 li a0,1 + 80002a74: 00000073 ecall + 80002a78: c0001073 unimp + 80002a7c: 0000 .2byte 0x0 + 80002a7e: 0000 .2byte 0x0 + 80002a80: 0000 .2byte 0x0 + 80002a82: 0000 .2byte 0x0 + 80002a84: 0000 .2byte 0x0 + 80002a86: 0000 .2byte 0x0 + 80002a88: 0000 .2byte 0x0 + 80002a8a: 0000 .2byte 0x0 + 80002a8c: 0000 .2byte 0x0 + 80002a8e: 0000 .2byte 0x0 + 80002a90: 0000 .2byte 0x0 + 80002a92: 0000 .2byte 0x0 + 80002a94: 0000 .2byte 0x0 + 80002a96: 0000 .2byte 0x0 + 80002a98: 0000 .2byte 0x0 + 80002a9a: 0000 .2byte 0x0 + 80002a9c: 0000 .2byte 0x0 + 80002a9e: 0000 .2byte 0x0 + +Disassembly of section .data: + +0000000080003000 : + 80003000: 14d68693 addi a3,a3,333 + 80003004: 0de68693 addi a3,a3,222 + 80003008: 000307e7 jalr a5,t1 + 8000300c: 22b68693 addi a3,a3,555 + 80003010: 000307e7 jalr a5,t1 diff --git a/tests/rv64ui-v-jal b/tests/rv64ui-v-jal new file mode 100644 index 0000000000000000000000000000000000000000..57fadef0ab78c9c4cd84233ea4ef91a3eaa3a545 GIT binary patch literal 17952 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 Nw!$FSb4acJ{{hy: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 50450513 addi a0,a0,1284 # 800029d8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 53850513 addi a0,a0,1336 # 80002a20 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 56c50513 addi a0,a0,1388 # 80002a68 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 57050513 addi a0,a0,1392 # 80002a80 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 4c868693 addi a3,a3,1224 # 80002ac0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 51850513 addi a0,a0,1304 # 80002b60 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 46050513 addi a0,a0,1120 # 80002b88 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 3f050513 addi a0,a0,1008 # 80002b28 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 3a450513 addi a0,a0,932 # 80002af0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02d00793 li a5,45 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0e1d97b7 lui a5,0xe1d9 + 80002908: 00080637 lui a2,0x80 + 8000290c: ad378793 addi a5,a5,-1325 # e1d8ad3 <_start-0x71e2752d> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 26850513 addi a0,a0,616 # 80002bb8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000093 li ra,0 + 80002970: 0100026f jal tp,80002980 + +0000000080002974 : + 80002974: 00000013 nop + 80002978: 00000013 nop + 8000297c: 0400006f j 800029bc + +0000000080002980 : + 80002980: 00000117 auipc sp,0x0 + 80002984: ff410113 addi sp,sp,-12 # 80002974 + 80002988: 02411a63 bne sp,tp,800029bc + +000000008000298c : + 8000298c: 00100093 li ra,1 + 80002990: 0140006f j 800029a4 + 80002994: 00108093 addi ra,ra,1 + 80002998: 00108093 addi ra,ra,1 + 8000299c: 00108093 addi ra,ra,1 + 800029a0: 00108093 addi ra,ra,1 + 800029a4: 00108093 addi ra,ra,1 + 800029a8: 00108093 addi ra,ra,1 + 800029ac: 00300393 li t2,3 + 800029b0: 00300193 li gp,3 + 800029b4: 00709463 bne ra,t2,800029bc + 800029b8: 00301a63 bne zero,gp,800029cc + +00000000800029bc : + 800029bc: 00119513 slli a0,gp,0x1 + 800029c0: 00050063 beqz a0,800029c0 + 800029c4: 00156513 ori a0,a0,1 + 800029c8: 00000073 ecall + +00000000800029cc : + 800029cc: 00100513 li a0,1 + 800029d0: 00000073 ecall + 800029d4: c0001073 unimp diff --git a/tests/rv64ui-v-jalr b/tests/rv64ui-v-jalr new file mode 100644 index 0000000000000000000000000000000000000000..60bec0eea68a91845f5c2577b55ec2cd78a72ceb GIT binary patch literal 18304 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-jalr.dump b/tests/rv64ui-v-jalr.dump new file mode 100644 index 0000000..74ff1ad --- /dev/null +++ b/tests/rv64ui-v-jalr.dump @@ -0,0 +1,867 @@ + +rv64ui-v-jalr: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 5a450513 addi a0,a0,1444 # 80002a78 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 5d850513 addi a0,a0,1496 # 80002ac0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 60c50513 addi a0,a0,1548 # 80002b08 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 61050513 addi a0,a0,1552 # 80002b20 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 56868693 addi a3,a3,1384 # 80002b60 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 5b850513 addi a0,a0,1464 # 80002c00 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 50050513 addi a0,a0,1280 # 80002c28 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 49050513 addi a0,a0,1168 # 80002bc8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 44450513 addi a0,a0,1092 # 80002b90 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01600793 li a5,22 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 044267b7 lui a5,0x4426 + 80002908: 00080637 lui a2,0x80 + 8000290c: 9b478793 addi a5,a5,-1612 # 44259b4 <_start-0x7bbda64c> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 30850513 addi a0,a0,776 # 80002c58 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00200193 li gp,2 + 8000296c: 00000293 li t0,0 + 80002970: 00000317 auipc t1,0x0 + 80002974: 01030313 addi t1,t1,16 # 80002980 + 80002978: 000302e7 jalr t0,t1 + +000000008000297c : + 8000297c: 0e00006f j 80002a5c + +0000000080002980 : + 80002980: 00000317 auipc t1,0x0 + 80002984: ffc30313 addi t1,t1,-4 # 8000297c + 80002988: 0c629a63 bne t0,t1,80002a5c + +000000008000298c : + 8000298c: 00300193 li gp,3 + 80002990: 00000297 auipc t0,0x0 + 80002994: 01028293 addi t0,t0,16 # 800029a0 + 80002998: 000282e7 jalr t0,t0 + +000000008000299c : + 8000299c: 0c00006f j 80002a5c + +00000000800029a0 : + 800029a0: 00000317 auipc t1,0x0 + 800029a4: ffc30313 addi t1,t1,-4 # 8000299c + 800029a8: 0a629a63 bne t0,t1,80002a5c + +00000000800029ac : + 800029ac: 00400193 li gp,4 + 800029b0: 00000213 li tp,0 + 800029b4: 00000317 auipc t1,0x0 + 800029b8: 01030313 addi t1,t1,16 # 800029c4 + 800029bc: 000306e7 jalr a3,t1 + 800029c0: 08301e63 bne zero,gp,80002a5c + 800029c4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 800029c8: 00200293 li t0,2 + 800029cc: fe5214e3 bne tp,t0,800029b4 + +00000000800029d0 : + 800029d0: 00500193 li gp,5 + 800029d4: 00000213 li tp,0 + 800029d8: 00000317 auipc t1,0x0 + 800029dc: 01430313 addi t1,t1,20 # 800029ec + 800029e0: 00000013 nop + 800029e4: 000306e7 jalr a3,t1 + 800029e8: 06301a63 bne zero,gp,80002a5c + 800029ec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 800029f0: 00200293 li t0,2 + 800029f4: fe5212e3 bne tp,t0,800029d8 + +00000000800029f8 : + 800029f8: 00600193 li gp,6 + 800029fc: 00000213 li tp,0 + 80002a00: 00000317 auipc t1,0x0 + 80002a04: 01830313 addi t1,t1,24 # 80002a18 + 80002a08: 00000013 nop + 80002a0c: 00000013 nop + 80002a10: 000306e7 jalr a3,t1 + 80002a14: 04301463 bne zero,gp,80002a5c + 80002a18: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a1c: 00200293 li t0,2 + 80002a20: fe5210e3 bne tp,t0,80002a00 + +0000000080002a24 : + 80002a24: 00100293 li t0,1 + 80002a28: 00000317 auipc t1,0x0 + 80002a2c: 01c30313 addi t1,t1,28 # 80002a44 + 80002a30: ffc30067 jr -4(t1) + 80002a34: 00128293 addi t0,t0,1 + 80002a38: 00128293 addi t0,t0,1 + 80002a3c: 00128293 addi t0,t0,1 + 80002a40: 00128293 addi t0,t0,1 + 80002a44: 00128293 addi t0,t0,1 + 80002a48: 00128293 addi t0,t0,1 + 80002a4c: 00400393 li t2,4 + 80002a50: 00700193 li gp,7 + 80002a54: 00729463 bne t0,t2,80002a5c + 80002a58: 00301a63 bne zero,gp,80002a6c + +0000000080002a5c : + 80002a5c: 00119513 slli a0,gp,0x1 + 80002a60: 00050063 beqz a0,80002a60 + 80002a64: 00156513 ori a0,a0,1 + 80002a68: 00000073 ecall + +0000000080002a6c : + 80002a6c: 00100513 li a0,1 + 80002a70: 00000073 ecall + 80002a74: c0001073 unimp diff --git a/tests/rv64ui-v-lb b/tests/rv64ui-v-lb new file mode 100644 index 0000000000000000000000000000000000000000..386d0ae4c74b4da290fb5f1249cde17e01c158d9 GIT binary patch literal 19688 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-lb.dump b/tests/rv64ui-v-lb.dump new file mode 100644 index 0000000..a9b5d8d --- /dev/null +++ b/tests/rv64ui-v-lb.dump @@ -0,0 +1,985 @@ + +rv64ui-v-lb: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 6fc50513 addi a0,a0,1788 # 80002bd0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 73050513 addi a0,a0,1840 # 80002c18 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 76450513 addi a0,a0,1892 # 80002c60 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 76850513 addi a0,a0,1896 # 80002c78 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6c068693 addi a3,a3,1728 # 80002cb8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 71050513 addi a0,a0,1808 # 80002d58 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 65850513 addi a0,a0,1624 # 80002d80 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 5e850513 addi a0,a0,1512 # 80002d20 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 59c50513 addi a0,a0,1436 # 80002ce8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00600793 li a5,6 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0c1067b7 lui a5,0xc106 + 80002908: 00080637 lui a2,0x80 + 8000290c: 32278793 addi a5,a5,802 # c106322 <_start-0x73ef9cde> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 46050513 addi a0,a0,1120 # 80002db0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 00008703 lb a4,0(ra) + 80002974: fff00393 li t2,-1 + 80002978: 00200193 li gp,2 + 8000297c: 22771c63 bne a4,t2,80002bb4 + +0000000080002980 : + 80002980: 00000097 auipc ra,0x0 + 80002984: 68008093 addi ra,ra,1664 # 80003000 + 80002988: 00108703 lb a4,1(ra) + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 22771063 bne a4,t2,80002bb4 + +0000000080002998 : + 80002998: 00000097 auipc ra,0x0 + 8000299c: 66808093 addi ra,ra,1640 # 80003000 + 800029a0: 00208703 lb a4,2(ra) + 800029a4: ff000393 li t2,-16 + 800029a8: 00400193 li gp,4 + 800029ac: 20771463 bne a4,t2,80002bb4 + +00000000800029b0 : + 800029b0: 00000097 auipc ra,0x0 + 800029b4: 65008093 addi ra,ra,1616 # 80003000 + 800029b8: 00308703 lb a4,3(ra) + 800029bc: 00f00393 li t2,15 + 800029c0: 00500193 li gp,5 + 800029c4: 1e771863 bne a4,t2,80002bb4 + +00000000800029c8 : + 800029c8: 00000097 auipc ra,0x0 + 800029cc: 63b08093 addi ra,ra,1595 # 80003003 + 800029d0: ffd08703 lb a4,-3(ra) + 800029d4: fff00393 li t2,-1 + 800029d8: 00600193 li gp,6 + 800029dc: 1c771c63 bne a4,t2,80002bb4 + +00000000800029e0 : + 800029e0: 00000097 auipc ra,0x0 + 800029e4: 62308093 addi ra,ra,1571 # 80003003 + 800029e8: ffe08703 lb a4,-2(ra) + 800029ec: 00000393 li t2,0 + 800029f0: 00700193 li gp,7 + 800029f4: 1c771063 bne a4,t2,80002bb4 + +00000000800029f8 : + 800029f8: 00000097 auipc ra,0x0 + 800029fc: 60b08093 addi ra,ra,1547 # 80003003 + 80002a00: fff08703 lb a4,-1(ra) + 80002a04: ff000393 li t2,-16 + 80002a08: 00800193 li gp,8 + 80002a0c: 1a771463 bne a4,t2,80002bb4 + +0000000080002a10 : + 80002a10: 00000097 auipc ra,0x0 + 80002a14: 5f308093 addi ra,ra,1523 # 80003003 + 80002a18: 00008703 lb a4,0(ra) + 80002a1c: 00f00393 li t2,15 + 80002a20: 00900193 li gp,9 + 80002a24: 18771863 bne a4,t2,80002bb4 + +0000000080002a28 : + 80002a28: 00000097 auipc ra,0x0 + 80002a2c: 5d808093 addi ra,ra,1496 # 80003000 + 80002a30: fe008093 addi ra,ra,-32 + 80002a34: 02008283 lb t0,32(ra) + 80002a38: fff00393 li t2,-1 + 80002a3c: 00a00193 li gp,10 + 80002a40: 16729a63 bne t0,t2,80002bb4 + +0000000080002a44 : + 80002a44: 00000097 auipc ra,0x0 + 80002a48: 5bc08093 addi ra,ra,1468 # 80003000 + 80002a4c: ffa08093 addi ra,ra,-6 + 80002a50: 00708283 lb t0,7(ra) + 80002a54: 00000393 li t2,0 + 80002a58: 00b00193 li gp,11 + 80002a5c: 14729c63 bne t0,t2,80002bb4 + +0000000080002a60 : + 80002a60: 00c00193 li gp,12 + 80002a64: 00000213 li tp,0 + 80002a68: 00000097 auipc ra,0x0 + 80002a6c: 59908093 addi ra,ra,1433 # 80003001 + 80002a70: 00108703 lb a4,1(ra) + 80002a74: 00070313 mv t1,a4 + 80002a78: ff000393 li t2,-16 + 80002a7c: 12731c63 bne t1,t2,80002bb4 + 80002a80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a84: 00200293 li t0,2 + 80002a88: fe5210e3 bne tp,t0,80002a68 + +0000000080002a8c : + 80002a8c: 00d00193 li gp,13 + 80002a90: 00000213 li tp,0 + 80002a94: 00000097 auipc ra,0x0 + 80002a98: 56e08093 addi ra,ra,1390 # 80003002 + 80002a9c: 00108703 lb a4,1(ra) + 80002aa0: 00000013 nop + 80002aa4: 00070313 mv t1,a4 + 80002aa8: 00f00393 li t2,15 + 80002aac: 10731463 bne t1,t2,80002bb4 + 80002ab0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ab4: 00200293 li t0,2 + 80002ab8: fc521ee3 bne tp,t0,80002a94 + +0000000080002abc : + 80002abc: 00e00193 li gp,14 + 80002ac0: 00000213 li tp,0 + 80002ac4: 00000097 auipc ra,0x0 + 80002ac8: 53c08093 addi ra,ra,1340 # 80003000 + 80002acc: 00108703 lb a4,1(ra) + 80002ad0: 00000013 nop + 80002ad4: 00000013 nop + 80002ad8: 00070313 mv t1,a4 + 80002adc: 00000393 li t2,0 + 80002ae0: 0c731a63 bne t1,t2,80002bb4 + 80002ae4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae8: 00200293 li t0,2 + 80002aec: fc521ce3 bne tp,t0,80002ac4 + +0000000080002af0 : + 80002af0: 00f00193 li gp,15 + 80002af4: 00000213 li tp,0 + 80002af8: 00000097 auipc ra,0x0 + 80002afc: 50908093 addi ra,ra,1289 # 80003001 + 80002b00: 00108703 lb a4,1(ra) + 80002b04: ff000393 li t2,-16 + 80002b08: 0a771663 bne a4,t2,80002bb4 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5212e3 bne tp,t0,80002af8 + +0000000080002b18 : + 80002b18: 01000193 li gp,16 + 80002b1c: 00000213 li tp,0 + 80002b20: 00000097 auipc ra,0x0 + 80002b24: 4e208093 addi ra,ra,1250 # 80003002 + 80002b28: 00000013 nop + 80002b2c: 00108703 lb a4,1(ra) + 80002b30: 00f00393 li t2,15 + 80002b34: 08771063 bne a4,t2,80002bb4 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5210e3 bne tp,t0,80002b20 + +0000000080002b44 : + 80002b44: 01100193 li gp,17 + 80002b48: 00000213 li tp,0 + 80002b4c: 00000097 auipc ra,0x0 + 80002b50: 4b408093 addi ra,ra,1204 # 80003000 + 80002b54: 00000013 nop + 80002b58: 00000013 nop + 80002b5c: 00108703 lb a4,1(ra) + 80002b60: 00000393 li t2,0 + 80002b64: 04771863 bne a4,t2,80002bb4 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fc521ee3 bne tp,t0,80002b4c + +0000000080002b74 : + 80002b74: 00000297 auipc t0,0x0 + 80002b78: 48c28293 addi t0,t0,1164 # 80003000 + 80002b7c: 00028103 lb sp,0(t0) + 80002b80: 00200113 li sp,2 + 80002b84: 00200393 li t2,2 + 80002b88: 01200193 li gp,18 + 80002b8c: 02711463 bne sp,t2,80002bb4 + +0000000080002b90 : + 80002b90: 00000297 auipc t0,0x0 + 80002b94: 47028293 addi t0,t0,1136 # 80003000 + 80002b98: 00028103 lb sp,0(t0) + 80002b9c: 00000013 nop + 80002ba0: 00200113 li sp,2 + 80002ba4: 00200393 li t2,2 + 80002ba8: 01300193 li gp,19 + 80002bac: 00711463 bne sp,t2,80002bb4 + 80002bb0: 00301a63 bne zero,gp,80002bc4 + +0000000080002bb4 : + 80002bb4: 00119513 slli a0,gp,0x1 + 80002bb8: 00050063 beqz a0,80002bb8 + 80002bbc: 00156513 ori a0,a0,1 + 80002bc0: 00000073 ecall + +0000000080002bc4 : + 80002bc4: 00100513 li a0,1 + 80002bc8: 00000073 ecall + 80002bcc: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: .2byte 0xff + +0000000080003001 : + 80003001: .2byte 0xf000 + +0000000080003002 : + 80003002: .2byte 0xff0 + +0000000080003003 : + 80003003: 0f Address 0x0000000080003003 is out of bounds. + + 80003007: diff --git a/tests/rv64ui-v-lbu b/tests/rv64ui-v-lbu new file mode 100644 index 0000000000000000000000000000000000000000..bb8ec016f0d531dcd3fb36178d7c2f730dfc7ef8 GIT binary patch literal 19688 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 JSz3zi{||bA8_NIy literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-lbu.dump b/tests/rv64ui-v-lbu.dump new file mode 100644 index 0000000..dce7195 --- /dev/null +++ b/tests/rv64ui-v-lbu.dump @@ -0,0 +1,985 @@ + +rv64ui-v-lbu: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 6fc50513 addi a0,a0,1788 # 80002bd0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 73050513 addi a0,a0,1840 # 80002c18 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 76450513 addi a0,a0,1892 # 80002c60 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 76850513 addi a0,a0,1896 # 80002c78 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6c068693 addi a3,a3,1728 # 80002cb8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 71050513 addi a0,a0,1808 # 80002d58 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 65850513 addi a0,a0,1624 # 80002d80 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 5e850513 addi a0,a0,1512 # 80002d20 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 59c50513 addi a0,a0,1436 # 80002ce8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00d00793 li a5,13 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 04c8f7b7 lui a5,0x4c8f + 80002908: 00080637 lui a2,0x80 + 8000290c: 8a478793 addi a5,a5,-1884 # 4c8e8a4 <_start-0x7b37175c> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 46050513 addi a0,a0,1120 # 80002db0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 0000c703 lbu a4,0(ra) + 80002974: 0ff00393 li t2,255 + 80002978: 00200193 li gp,2 + 8000297c: 22771c63 bne a4,t2,80002bb4 + +0000000080002980 : + 80002980: 00000097 auipc ra,0x0 + 80002984: 68008093 addi ra,ra,1664 # 80003000 + 80002988: 0010c703 lbu a4,1(ra) + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 22771063 bne a4,t2,80002bb4 + +0000000080002998 : + 80002998: 00000097 auipc ra,0x0 + 8000299c: 66808093 addi ra,ra,1640 # 80003000 + 800029a0: 0020c703 lbu a4,2(ra) + 800029a4: 0f000393 li t2,240 + 800029a8: 00400193 li gp,4 + 800029ac: 20771463 bne a4,t2,80002bb4 + +00000000800029b0 : + 800029b0: 00000097 auipc ra,0x0 + 800029b4: 65008093 addi ra,ra,1616 # 80003000 + 800029b8: 0030c703 lbu a4,3(ra) + 800029bc: 00f00393 li t2,15 + 800029c0: 00500193 li gp,5 + 800029c4: 1e771863 bne a4,t2,80002bb4 + +00000000800029c8 : + 800029c8: 00000097 auipc ra,0x0 + 800029cc: 63b08093 addi ra,ra,1595 # 80003003 + 800029d0: ffd0c703 lbu a4,-3(ra) + 800029d4: 0ff00393 li t2,255 + 800029d8: 00600193 li gp,6 + 800029dc: 1c771c63 bne a4,t2,80002bb4 + +00000000800029e0 : + 800029e0: 00000097 auipc ra,0x0 + 800029e4: 62308093 addi ra,ra,1571 # 80003003 + 800029e8: ffe0c703 lbu a4,-2(ra) + 800029ec: 00000393 li t2,0 + 800029f0: 00700193 li gp,7 + 800029f4: 1c771063 bne a4,t2,80002bb4 + +00000000800029f8 : + 800029f8: 00000097 auipc ra,0x0 + 800029fc: 60b08093 addi ra,ra,1547 # 80003003 + 80002a00: fff0c703 lbu a4,-1(ra) + 80002a04: 0f000393 li t2,240 + 80002a08: 00800193 li gp,8 + 80002a0c: 1a771463 bne a4,t2,80002bb4 + +0000000080002a10 : + 80002a10: 00000097 auipc ra,0x0 + 80002a14: 5f308093 addi ra,ra,1523 # 80003003 + 80002a18: 0000c703 lbu a4,0(ra) + 80002a1c: 00f00393 li t2,15 + 80002a20: 00900193 li gp,9 + 80002a24: 18771863 bne a4,t2,80002bb4 + +0000000080002a28 : + 80002a28: 00000097 auipc ra,0x0 + 80002a2c: 5d808093 addi ra,ra,1496 # 80003000 + 80002a30: fe008093 addi ra,ra,-32 + 80002a34: 0200c283 lbu t0,32(ra) + 80002a38: 0ff00393 li t2,255 + 80002a3c: 00a00193 li gp,10 + 80002a40: 16729a63 bne t0,t2,80002bb4 + +0000000080002a44 : + 80002a44: 00000097 auipc ra,0x0 + 80002a48: 5bc08093 addi ra,ra,1468 # 80003000 + 80002a4c: ffa08093 addi ra,ra,-6 + 80002a50: 0070c283 lbu t0,7(ra) + 80002a54: 00000393 li t2,0 + 80002a58: 00b00193 li gp,11 + 80002a5c: 14729c63 bne t0,t2,80002bb4 + +0000000080002a60 : + 80002a60: 00c00193 li gp,12 + 80002a64: 00000213 li tp,0 + 80002a68: 00000097 auipc ra,0x0 + 80002a6c: 59908093 addi ra,ra,1433 # 80003001 + 80002a70: 0010c703 lbu a4,1(ra) + 80002a74: 00070313 mv t1,a4 + 80002a78: 0f000393 li t2,240 + 80002a7c: 12731c63 bne t1,t2,80002bb4 + 80002a80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a84: 00200293 li t0,2 + 80002a88: fe5210e3 bne tp,t0,80002a68 + +0000000080002a8c : + 80002a8c: 00d00193 li gp,13 + 80002a90: 00000213 li tp,0 + 80002a94: 00000097 auipc ra,0x0 + 80002a98: 56e08093 addi ra,ra,1390 # 80003002 + 80002a9c: 0010c703 lbu a4,1(ra) + 80002aa0: 00000013 nop + 80002aa4: 00070313 mv t1,a4 + 80002aa8: 00f00393 li t2,15 + 80002aac: 10731463 bne t1,t2,80002bb4 + 80002ab0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ab4: 00200293 li t0,2 + 80002ab8: fc521ee3 bne tp,t0,80002a94 + +0000000080002abc : + 80002abc: 00e00193 li gp,14 + 80002ac0: 00000213 li tp,0 + 80002ac4: 00000097 auipc ra,0x0 + 80002ac8: 53c08093 addi ra,ra,1340 # 80003000 + 80002acc: 0010c703 lbu a4,1(ra) + 80002ad0: 00000013 nop + 80002ad4: 00000013 nop + 80002ad8: 00070313 mv t1,a4 + 80002adc: 00000393 li t2,0 + 80002ae0: 0c731a63 bne t1,t2,80002bb4 + 80002ae4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae8: 00200293 li t0,2 + 80002aec: fc521ce3 bne tp,t0,80002ac4 + +0000000080002af0 : + 80002af0: 00f00193 li gp,15 + 80002af4: 00000213 li tp,0 + 80002af8: 00000097 auipc ra,0x0 + 80002afc: 50908093 addi ra,ra,1289 # 80003001 + 80002b00: 0010c703 lbu a4,1(ra) + 80002b04: 0f000393 li t2,240 + 80002b08: 0a771663 bne a4,t2,80002bb4 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5212e3 bne tp,t0,80002af8 + +0000000080002b18 : + 80002b18: 01000193 li gp,16 + 80002b1c: 00000213 li tp,0 + 80002b20: 00000097 auipc ra,0x0 + 80002b24: 4e208093 addi ra,ra,1250 # 80003002 + 80002b28: 00000013 nop + 80002b2c: 0010c703 lbu a4,1(ra) + 80002b30: 00f00393 li t2,15 + 80002b34: 08771063 bne a4,t2,80002bb4 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5210e3 bne tp,t0,80002b20 + +0000000080002b44 : + 80002b44: 01100193 li gp,17 + 80002b48: 00000213 li tp,0 + 80002b4c: 00000097 auipc ra,0x0 + 80002b50: 4b408093 addi ra,ra,1204 # 80003000 + 80002b54: 00000013 nop + 80002b58: 00000013 nop + 80002b5c: 0010c703 lbu a4,1(ra) + 80002b60: 00000393 li t2,0 + 80002b64: 04771863 bne a4,t2,80002bb4 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fc521ee3 bne tp,t0,80002b4c + +0000000080002b74 : + 80002b74: 00000297 auipc t0,0x0 + 80002b78: 48c28293 addi t0,t0,1164 # 80003000 + 80002b7c: 0002c103 lbu sp,0(t0) + 80002b80: 00200113 li sp,2 + 80002b84: 00200393 li t2,2 + 80002b88: 01200193 li gp,18 + 80002b8c: 02711463 bne sp,t2,80002bb4 + +0000000080002b90 : + 80002b90: 00000297 auipc t0,0x0 + 80002b94: 47028293 addi t0,t0,1136 # 80003000 + 80002b98: 0002c103 lbu sp,0(t0) + 80002b9c: 00000013 nop + 80002ba0: 00200113 li sp,2 + 80002ba4: 00200393 li t2,2 + 80002ba8: 01300193 li gp,19 + 80002bac: 00711463 bne sp,t2,80002bb4 + 80002bb0: 00301a63 bne zero,gp,80002bc4 + +0000000080002bb4 : + 80002bb4: 00119513 slli a0,gp,0x1 + 80002bb8: 00050063 beqz a0,80002bb8 + 80002bbc: 00156513 ori a0,a0,1 + 80002bc0: 00000073 ecall + +0000000080002bc4 : + 80002bc4: 00100513 li a0,1 + 80002bc8: 00000073 ecall + 80002bcc: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: .2byte 0xff + +0000000080003001 : + 80003001: .2byte 0xf000 + +0000000080003002 : + 80003002: .2byte 0xff0 + +0000000080003003 : + 80003003: 0f Address 0x0000000080003003 is out of bounds. + + 80003007: diff --git a/tests/rv64ui-v-ld b/tests/rv64ui-v-ld new file mode 100644 index 0000000000000000000000000000000000000000..3c4c0eb24d22723dfe871371d48ff70ecb299129 GIT binary patch literal 19720 zcmeHPeQ*@#d4KlycK6T+I<$h*V2^#U*nn%xC+1EMbjJHKyU*_LeV*rip5Obid+5FU!S1jBsY?(jUtBan{4T|?Fgu}K z_=+vrIZU-A;#^84kQ8?V^M_f@?IlzIVs+j*g%rQCWR@%DWnPcL3RCp66N;Bo z^QGT!-I3Qu=li!SoU_A#!+^tp!+^tp!+^tp!+^tp!+^tp!+^uU7m$G%ouimP^>EA| ze%M6*Dn4MFI8+xT4iz8pO&lsdoDy1&2J zw;6R(`h}REzGrModlUWT6-FRUVznd~)oDT8B)NdQ#GoV^!L%rbB)1VtyN%6hN!%jI z#+I}!)<}v`lUBr9$z#-}J>phrnXxs!Oxz|F8QaoD;&!Rn*q$yH>!cE+E?pw-kV=gm z=~8j0wA|R4UM_w~Dl@*6E)zFPQiA;6#0sH83#}lnu9~#KE|(VC=hA8;F0JmUOAGY4 zwa`!8TJ7s@t?o^?7Wl2Kh5k*}YX4K#>OPgVfUpd<%e2}x%V56@_QkL-hJ7*Yi(y|1 z`%>7K!oC#tWw0-UeHrY_Cd$!v?LL}VOI|Io&pWZ!i&&TpFdWifq1Em4s*=F^Irs$} z;!esA0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY0}cZY z0}cZY178RRGR<#MW_*Oq=`PC1!=yi_xPraI_?x~&`u8un#1V;z`d>dcdA%3OP!%mG=*jE|CeQgLOjP0?8Q)fv`4 zYg>C~baw2&$7dJwVbmj!7ZocXal~ikF?O#q8%&=LTQOoU1CvaT<*7<5NgSEX=|56v ztap6&p0q;SrK@wgv1|i!ddtd1e?@Vr-MzV>M-udINo4WFh=e>J`VB=e-c~G*#(J+= zZ3g9EgjM)t9LFduFn*2t$sB82e`(xmf9&M&EZb+n;@X}bx7xP2hA!&|rfc;@rDAa{ zve;#EF&({f6!G&sOGal+`JzjwQQ4FSnRFZH!3BKl&&qCVF9-aoz6a=@Uil`g3o55^ z@1vk}jmD14vwBK$1*O-l7>x7q3tJWg>SppW+PK%oPs)E}cr5$sti^pwahsCY>zmHy zRHg4j^QV$1Zc(f}GuMVlFOq2hb=tei?~NL8{*p4Q1xBs@82f8whH+rqj$C5(tY0ks zx0TDc^iMP1t?{Nx{UJ8iu4n%+gK;#g%01}&qk`(`hfWID$p6?RseLlbMbwj*A>-0^ zWr(yC`2Y59)J^Bc?wy)3>M?Fh1U6Q|mDg*^GLJ?17j-4}mu!Zw-c=O5b{cU>c3i(! z{xu($F(PB^j}XfPvAC@9hB;Al1NkDxpdtxF<09$Z(-rE0Vf3ML$hQS~$nuCeu!S

hW5 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 87c50513 addi a0,a0,-1924 # 80002d50 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 8b050513 addi a0,a0,-1872 # 80002d98 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 8e450513 addi a0,a0,-1820 # 80002de0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 8e850513 addi a0,a0,-1816 # 80002df8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 84068693 addi a3,a3,-1984 # 80002e38 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 89050513 addi a0,a0,-1904 # 80002ed8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 7d850513 addi a0,a0,2008 # 80002f00 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 76850513 addi a0,a0,1896 # 80002ea0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 71c50513 addi a0,a0,1820 # 80002e68 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02d00793 li a5,45 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 055417b7 lui a5,0x5541 + 80002908: 00080637 lui a2,0x80 + 8000290c: b2578793 addi a5,a5,-1243 # 5540b25 <_start-0x7aabf4db> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 5e050513 addi a0,a0,1504 # 80002f30 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 0000b703 ld a4,0(ra) + 80002974: 00ff03b7 lui t2,0xff0 + 80002978: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 8000297c: 01039393 slli t2,t2,0x10 + 80002980: 0ff38393 addi t2,t2,255 + 80002984: 01039393 slli t2,t2,0x10 + 80002988: 0ff38393 addi t2,t2,255 + 8000298c: 00200193 li gp,2 + 80002990: 3a771263 bne a4,t2,80002d34 + +0000000080002994 : + 80002994: 00000097 auipc ra,0x0 + 80002998: 66c08093 addi ra,ra,1644 # 80003000 + 8000299c: 0080b703 ld a4,8(ra) + 800029a0: ff0103b7 lui t2,0xff010 + 800029a4: f013839b addiw t2,t2,-255 # ffffffffff00ff01 + 800029a8: 01039393 slli t2,t2,0x10 + 800029ac: f0138393 addi t2,t2,-255 + 800029b0: 01039393 slli t2,t2,0x10 + 800029b4: f0038393 addi t2,t2,-256 + 800029b8: 00300193 li gp,3 + 800029bc: 36771c63 bne a4,t2,80002d34 + +00000000800029c0 : + 800029c0: 00000097 auipc ra,0x0 + 800029c4: 64008093 addi ra,ra,1600 # 80003000 + 800029c8: 0100b703 ld a4,16(ra) + 800029cc: 000103b7 lui t2,0x10 + 800029d0: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 800029d4: 01039393 slli t2,t2,0x10 + 800029d8: f0138393 addi t2,t2,-255 + 800029dc: 01039393 slli t2,t2,0x10 + 800029e0: f0138393 addi t2,t2,-255 + 800029e4: 00c39393 slli t2,t2,0xc + 800029e8: ff038393 addi t2,t2,-16 + 800029ec: 00400193 li gp,4 + 800029f0: 34771263 bne a4,t2,80002d34 + +00000000800029f4 : + 800029f4: 00000097 auipc ra,0x0 + 800029f8: 60c08093 addi ra,ra,1548 # 80003000 + 800029fc: 0180b703 ld a4,24(ra) + 80002a00: ffff03b7 lui t2,0xffff0 + 80002a04: 0ff3839b addiw t2,t2,255 # ffffffffffff00ff + 80002a08: 01039393 slli t2,t2,0x10 + 80002a0c: 0ff38393 addi t2,t2,255 + 80002a10: 01039393 slli t2,t2,0x10 + 80002a14: 0ff38393 addi t2,t2,255 + 80002a18: 00c39393 slli t2,t2,0xc + 80002a1c: 00f38393 addi t2,t2,15 + 80002a20: 00500193 li gp,5 + 80002a24: 30771863 bne a4,t2,80002d34 + +0000000080002a28 : + 80002a28: 00000097 auipc ra,0x0 + 80002a2c: 5f008093 addi ra,ra,1520 # 80003018 + 80002a30: fe80b703 ld a4,-24(ra) + 80002a34: 00ff03b7 lui t2,0xff0 + 80002a38: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002a3c: 01039393 slli t2,t2,0x10 + 80002a40: 0ff38393 addi t2,t2,255 + 80002a44: 01039393 slli t2,t2,0x10 + 80002a48: 0ff38393 addi t2,t2,255 + 80002a4c: 00600193 li gp,6 + 80002a50: 2e771263 bne a4,t2,80002d34 + +0000000080002a54 : + 80002a54: 00000097 auipc ra,0x0 + 80002a58: 5c408093 addi ra,ra,1476 # 80003018 + 80002a5c: ff00b703 ld a4,-16(ra) + 80002a60: ff0103b7 lui t2,0xff010 + 80002a64: f013839b addiw t2,t2,-255 # ffffffffff00ff01 + 80002a68: 01039393 slli t2,t2,0x10 + 80002a6c: f0138393 addi t2,t2,-255 + 80002a70: 01039393 slli t2,t2,0x10 + 80002a74: f0038393 addi t2,t2,-256 + 80002a78: 00700193 li gp,7 + 80002a7c: 2a771c63 bne a4,t2,80002d34 + +0000000080002a80 : + 80002a80: 00000097 auipc ra,0x0 + 80002a84: 59808093 addi ra,ra,1432 # 80003018 + 80002a88: ff80b703 ld a4,-8(ra) + 80002a8c: 000103b7 lui t2,0x10 + 80002a90: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002a94: 01039393 slli t2,t2,0x10 + 80002a98: f0138393 addi t2,t2,-255 + 80002a9c: 01039393 slli t2,t2,0x10 + 80002aa0: f0138393 addi t2,t2,-255 + 80002aa4: 00c39393 slli t2,t2,0xc + 80002aa8: ff038393 addi t2,t2,-16 + 80002aac: 00800193 li gp,8 + 80002ab0: 28771263 bne a4,t2,80002d34 + +0000000080002ab4 : + 80002ab4: 00000097 auipc ra,0x0 + 80002ab8: 56408093 addi ra,ra,1380 # 80003018 + 80002abc: 0000b703 ld a4,0(ra) + 80002ac0: ffff03b7 lui t2,0xffff0 + 80002ac4: 0ff3839b addiw t2,t2,255 # ffffffffffff00ff + 80002ac8: 01039393 slli t2,t2,0x10 + 80002acc: 0ff38393 addi t2,t2,255 + 80002ad0: 01039393 slli t2,t2,0x10 + 80002ad4: 0ff38393 addi t2,t2,255 + 80002ad8: 00c39393 slli t2,t2,0xc + 80002adc: 00f38393 addi t2,t2,15 + 80002ae0: 00900193 li gp,9 + 80002ae4: 24771863 bne a4,t2,80002d34 + +0000000080002ae8 : + 80002ae8: 00000097 auipc ra,0x0 + 80002aec: 51808093 addi ra,ra,1304 # 80003000 + 80002af0: fe008093 addi ra,ra,-32 + 80002af4: 0200b283 ld t0,32(ra) + 80002af8: 00ff03b7 lui t2,0xff0 + 80002afc: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002b00: 01039393 slli t2,t2,0x10 + 80002b04: 0ff38393 addi t2,t2,255 + 80002b08: 01039393 slli t2,t2,0x10 + 80002b0c: 0ff38393 addi t2,t2,255 + 80002b10: 00a00193 li gp,10 + 80002b14: 22729063 bne t0,t2,80002d34 + +0000000080002b18 : + 80002b18: 00000097 auipc ra,0x0 + 80002b1c: 4e808093 addi ra,ra,1256 # 80003000 + 80002b20: ffd08093 addi ra,ra,-3 + 80002b24: 00b0b283 ld t0,11(ra) + 80002b28: ff0103b7 lui t2,0xff010 + 80002b2c: f013839b addiw t2,t2,-255 # ffffffffff00ff01 + 80002b30: 01039393 slli t2,t2,0x10 + 80002b34: f0138393 addi t2,t2,-255 + 80002b38: 01039393 slli t2,t2,0x10 + 80002b3c: f0038393 addi t2,t2,-256 + 80002b40: 00b00193 li gp,11 + 80002b44: 1e729863 bne t0,t2,80002d34 + +0000000080002b48 : + 80002b48: 00c00193 li gp,12 + 80002b4c: 00000213 li tp,0 + 80002b50: 00000097 auipc ra,0x0 + 80002b54: 4b808093 addi ra,ra,1208 # 80003008 + 80002b58: 0080b703 ld a4,8(ra) + 80002b5c: 00070313 mv t1,a4 + 80002b60: 000103b7 lui t2,0x10 + 80002b64: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002b68: 01039393 slli t2,t2,0x10 + 80002b6c: f0138393 addi t2,t2,-255 + 80002b70: 01039393 slli t2,t2,0x10 + 80002b74: f0138393 addi t2,t2,-255 + 80002b78: 00c39393 slli t2,t2,0xc + 80002b7c: ff038393 addi t2,t2,-16 + 80002b80: 1a731a63 bne t1,t2,80002d34 + 80002b84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b88: 00200293 li t0,2 + 80002b8c: fc5212e3 bne tp,t0,80002b50 + +0000000080002b90 : + 80002b90: 00d00193 li gp,13 + 80002b94: 00000213 li tp,0 + 80002b98: 00000097 auipc ra,0x0 + 80002b9c: 47808093 addi ra,ra,1144 # 80003010 + 80002ba0: 0080b703 ld a4,8(ra) + 80002ba4: 00000013 nop + 80002ba8: 00070313 mv t1,a4 + 80002bac: ffff03b7 lui t2,0xffff0 + 80002bb0: 0ff3839b addiw t2,t2,255 # ffffffffffff00ff + 80002bb4: 01039393 slli t2,t2,0x10 + 80002bb8: 0ff38393 addi t2,t2,255 + 80002bbc: 01039393 slli t2,t2,0x10 + 80002bc0: 0ff38393 addi t2,t2,255 + 80002bc4: 00c39393 slli t2,t2,0xc + 80002bc8: 00f38393 addi t2,t2,15 + 80002bcc: 16731463 bne t1,t2,80002d34 + 80002bd0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bd4: 00200293 li t0,2 + 80002bd8: fc5210e3 bne tp,t0,80002b98 + +0000000080002bdc : + 80002bdc: 00e00193 li gp,14 + 80002be0: 00000213 li tp,0 + 80002be4: 00000097 auipc ra,0x0 + 80002be8: 41c08093 addi ra,ra,1052 # 80003000 + 80002bec: 0080b703 ld a4,8(ra) + 80002bf0: 00000013 nop + 80002bf4: 00000013 nop + 80002bf8: 00070313 mv t1,a4 + 80002bfc: ff0103b7 lui t2,0xff010 + 80002c00: f013839b addiw t2,t2,-255 # ffffffffff00ff01 + 80002c04: 01039393 slli t2,t2,0x10 + 80002c08: f0138393 addi t2,t2,-255 + 80002c0c: 01039393 slli t2,t2,0x10 + 80002c10: f0038393 addi t2,t2,-256 + 80002c14: 12731063 bne t1,t2,80002d34 + 80002c18: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c1c: 00200293 li t0,2 + 80002c20: fc5212e3 bne tp,t0,80002be4 + +0000000080002c24 : + 80002c24: 00f00193 li gp,15 + 80002c28: 00000213 li tp,0 + 80002c2c: 00000097 auipc ra,0x0 + 80002c30: 3dc08093 addi ra,ra,988 # 80003008 + 80002c34: 0080b703 ld a4,8(ra) + 80002c38: 000103b7 lui t2,0x10 + 80002c3c: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002c40: 01039393 slli t2,t2,0x10 + 80002c44: f0138393 addi t2,t2,-255 + 80002c48: 01039393 slli t2,t2,0x10 + 80002c4c: f0138393 addi t2,t2,-255 + 80002c50: 00c39393 slli t2,t2,0xc + 80002c54: ff038393 addi t2,t2,-16 + 80002c58: 0c771e63 bne a4,t2,80002d34 + 80002c5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c60: 00200293 li t0,2 + 80002c64: fc5214e3 bne tp,t0,80002c2c + +0000000080002c68 : + 80002c68: 01000193 li gp,16 + 80002c6c: 00000213 li tp,0 + 80002c70: 00000097 auipc ra,0x0 + 80002c74: 3a008093 addi ra,ra,928 # 80003010 + 80002c78: 00000013 nop + 80002c7c: 0080b703 ld a4,8(ra) + 80002c80: ffff03b7 lui t2,0xffff0 + 80002c84: 0ff3839b addiw t2,t2,255 # ffffffffffff00ff + 80002c88: 01039393 slli t2,t2,0x10 + 80002c8c: 0ff38393 addi t2,t2,255 + 80002c90: 01039393 slli t2,t2,0x10 + 80002c94: 0ff38393 addi t2,t2,255 + 80002c98: 00c39393 slli t2,t2,0xc + 80002c9c: 00f38393 addi t2,t2,15 + 80002ca0: 08771a63 bne a4,t2,80002d34 + 80002ca4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ca8: 00200293 li t0,2 + 80002cac: fc5212e3 bne tp,t0,80002c70 + +0000000080002cb0 : + 80002cb0: 01100193 li gp,17 + 80002cb4: 00000213 li tp,0 + 80002cb8: 00000097 auipc ra,0x0 + 80002cbc: 34808093 addi ra,ra,840 # 80003000 + 80002cc0: 00000013 nop + 80002cc4: 00000013 nop + 80002cc8: 0080b703 ld a4,8(ra) + 80002ccc: ff0103b7 lui t2,0xff010 + 80002cd0: f013839b addiw t2,t2,-255 # ffffffffff00ff01 + 80002cd4: 01039393 slli t2,t2,0x10 + 80002cd8: f0138393 addi t2,t2,-255 + 80002cdc: 01039393 slli t2,t2,0x10 + 80002ce0: f0038393 addi t2,t2,-256 + 80002ce4: 04771863 bne a4,t2,80002d34 + 80002ce8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cec: 00200293 li t0,2 + 80002cf0: fc5214e3 bne tp,t0,80002cb8 + +0000000080002cf4 : + 80002cf4: 00000297 auipc t0,0x0 + 80002cf8: 30c28293 addi t0,t0,780 # 80003000 + 80002cfc: 0002b103 ld sp,0(t0) + 80002d00: 00200113 li sp,2 + 80002d04: 00200393 li t2,2 + 80002d08: 01200193 li gp,18 + 80002d0c: 02711463 bne sp,t2,80002d34 + +0000000080002d10 : + 80002d10: 00000297 auipc t0,0x0 + 80002d14: 2f028293 addi t0,t0,752 # 80003000 + 80002d18: 0002b103 ld sp,0(t0) + 80002d1c: 00000013 nop + 80002d20: 00200113 li sp,2 + 80002d24: 00200393 li t2,2 + 80002d28: 01300193 li gp,19 + 80002d2c: 00711463 bne sp,t2,80002d34 + 80002d30: 00301a63 bne zero,gp,80002d44 + +0000000080002d34 : + 80002d34: 00119513 slli a0,gp,0x1 + 80002d38: 00050063 beqz a0,80002d38 + 80002d3c: 00156513 ori a0,a0,1 + 80002d40: 00000073 ecall + +0000000080002d44 : + 80002d44: 00100513 li a0,1 + 80002d48: 00000073 ecall + 80002d4c: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: 00ff .2byte 0xff + 80003002: 00ff .2byte 0xff + 80003004: 00ff .2byte 0xff + 80003006: 00ff .2byte 0xff + +0000000080003008 : + 80003008: ff00 .2byte 0xff00 + 8000300a: ff00 .2byte 0xff00 + 8000300c: ff00 .2byte 0xff00 + 8000300e: ff00 .2byte 0xff00 + +0000000080003010 : + 80003010: 0ff0 .2byte 0xff0 + 80003012: 0ff0 .2byte 0xff0 + 80003014: 0ff0 .2byte 0xff0 + 80003016: 0ff0 .2byte 0xff0 + +0000000080003018 : + 80003018: f00ff00f .4byte 0xf00ff00f + 8000301c: f00ff00f .4byte 0xf00ff00f diff --git a/tests/rv64ui-v-lh b/tests/rv64ui-v-lh new file mode 100644 index 0000000000000000000000000000000000000000..0ab3e81f8872fcadc11a170fd6374fe8c523bde7 GIT binary patch literal 19696 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 JG`~3Y{}=5zInw|D literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-lh.dump b/tests/rv64ui-v-lh.dump new file mode 100644 index 0000000..ba7c64d --- /dev/null +++ b/tests/rv64ui-v-lh.dump @@ -0,0 +1,993 @@ + +rv64ui-v-lh: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 71c50513 addi a0,a0,1820 # 80002bf0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 75050513 addi a0,a0,1872 # 80002c38 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 78450513 addi a0,a0,1924 # 80002c80 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 78850513 addi a0,a0,1928 # 80002c98 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6e068693 addi a3,a3,1760 # 80002cd8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 73050513 addi a0,a0,1840 # 80002d78 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 67850513 addi a0,a0,1656 # 80002da0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 60850513 addi a0,a0,1544 # 80002d40 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5bc50513 addi a0,a0,1468 # 80002d08 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00700793 li a5,7 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 039687b7 lui a5,0x3968 + 80002908: 00080637 lui a2,0x80 + 8000290c: c8378793 addi a5,a5,-893 # 3967c83 <_start-0x7c69837d> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 48050513 addi a0,a0,1152 # 80002dd0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 00009703 lh a4,0(ra) + 80002974: 0ff00393 li t2,255 + 80002978: 00200193 li gp,2 + 8000297c: 24771c63 bne a4,t2,80002bd4 + +0000000080002980 : + 80002980: 00000097 auipc ra,0x0 + 80002984: 68008093 addi ra,ra,1664 # 80003000 + 80002988: 00209703 lh a4,2(ra) + 8000298c: f0000393 li t2,-256 + 80002990: 00300193 li gp,3 + 80002994: 24771063 bne a4,t2,80002bd4 + +0000000080002998 : + 80002998: 00000097 auipc ra,0x0 + 8000299c: 66808093 addi ra,ra,1640 # 80003000 + 800029a0: 00409703 lh a4,4(ra) + 800029a4: 000013b7 lui t2,0x1 + 800029a8: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 800029ac: 00400193 li gp,4 + 800029b0: 22771263 bne a4,t2,80002bd4 + +00000000800029b4 : + 800029b4: 00000097 auipc ra,0x0 + 800029b8: 64c08093 addi ra,ra,1612 # 80003000 + 800029bc: 00609703 lh a4,6(ra) + 800029c0: fffff3b7 lui t2,0xfffff + 800029c4: 00f3839b addiw t2,t2,15 # fffffffffffff00f + 800029c8: 00500193 li gp,5 + 800029cc: 20771463 bne a4,t2,80002bd4 + +00000000800029d0 : + 800029d0: 00000097 auipc ra,0x0 + 800029d4: 63608093 addi ra,ra,1590 # 80003006 + 800029d8: ffa09703 lh a4,-6(ra) + 800029dc: 0ff00393 li t2,255 + 800029e0: 00600193 li gp,6 + 800029e4: 1e771863 bne a4,t2,80002bd4 + +00000000800029e8 : + 800029e8: 00000097 auipc ra,0x0 + 800029ec: 61e08093 addi ra,ra,1566 # 80003006 + 800029f0: ffc09703 lh a4,-4(ra) + 800029f4: f0000393 li t2,-256 + 800029f8: 00700193 li gp,7 + 800029fc: 1c771c63 bne a4,t2,80002bd4 + +0000000080002a00 : + 80002a00: 00000097 auipc ra,0x0 + 80002a04: 60608093 addi ra,ra,1542 # 80003006 + 80002a08: ffe09703 lh a4,-2(ra) + 80002a0c: 000013b7 lui t2,0x1 + 80002a10: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002a14: 00800193 li gp,8 + 80002a18: 1a771e63 bne a4,t2,80002bd4 + +0000000080002a1c : + 80002a1c: 00000097 auipc ra,0x0 + 80002a20: 5ea08093 addi ra,ra,1514 # 80003006 + 80002a24: 00009703 lh a4,0(ra) + 80002a28: fffff3b7 lui t2,0xfffff + 80002a2c: 00f3839b addiw t2,t2,15 # fffffffffffff00f + 80002a30: 00900193 li gp,9 + 80002a34: 1a771063 bne a4,t2,80002bd4 + +0000000080002a38 : + 80002a38: 00000097 auipc ra,0x0 + 80002a3c: 5c808093 addi ra,ra,1480 # 80003000 + 80002a40: fe008093 addi ra,ra,-32 + 80002a44: 02009283 lh t0,32(ra) + 80002a48: 0ff00393 li t2,255 + 80002a4c: 00a00193 li gp,10 + 80002a50: 18729263 bne t0,t2,80002bd4 + +0000000080002a54 : + 80002a54: 00000097 auipc ra,0x0 + 80002a58: 5ac08093 addi ra,ra,1452 # 80003000 + 80002a5c: ffb08093 addi ra,ra,-5 + 80002a60: 00709283 lh t0,7(ra) + 80002a64: f0000393 li t2,-256 + 80002a68: 00b00193 li gp,11 + 80002a6c: 16729463 bne t0,t2,80002bd4 + +0000000080002a70 : + 80002a70: 00c00193 li gp,12 + 80002a74: 00000213 li tp,0 + 80002a78: 00000097 auipc ra,0x0 + 80002a7c: 58a08093 addi ra,ra,1418 # 80003002 + 80002a80: 00209703 lh a4,2(ra) + 80002a84: 00070313 mv t1,a4 + 80002a88: 000013b7 lui t2,0x1 + 80002a8c: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002a90: 14731263 bne t1,t2,80002bd4 + 80002a94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a98: 00200293 li t0,2 + 80002a9c: fc521ee3 bne tp,t0,80002a78 + +0000000080002aa0 : + 80002aa0: 00d00193 li gp,13 + 80002aa4: 00000213 li tp,0 + 80002aa8: 00000097 auipc ra,0x0 + 80002aac: 55c08093 addi ra,ra,1372 # 80003004 + 80002ab0: 00209703 lh a4,2(ra) + 80002ab4: 00000013 nop + 80002ab8: 00070313 mv t1,a4 + 80002abc: fffff3b7 lui t2,0xfffff + 80002ac0: 00f3839b addiw t2,t2,15 # fffffffffffff00f + 80002ac4: 10731863 bne t1,t2,80002bd4 + 80002ac8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002acc: 00200293 li t0,2 + 80002ad0: fc521ce3 bne tp,t0,80002aa8 + +0000000080002ad4 : + 80002ad4: 00e00193 li gp,14 + 80002ad8: 00000213 li tp,0 + 80002adc: 00000097 auipc ra,0x0 + 80002ae0: 52408093 addi ra,ra,1316 # 80003000 + 80002ae4: 00209703 lh a4,2(ra) + 80002ae8: 00000013 nop + 80002aec: 00000013 nop + 80002af0: 00070313 mv t1,a4 + 80002af4: f0000393 li t2,-256 + 80002af8: 0c731e63 bne t1,t2,80002bd4 + 80002afc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b00: 00200293 li t0,2 + 80002b04: fc521ce3 bne tp,t0,80002adc + +0000000080002b08 : + 80002b08: 00f00193 li gp,15 + 80002b0c: 00000213 li tp,0 + 80002b10: 00000097 auipc ra,0x0 + 80002b14: 4f208093 addi ra,ra,1266 # 80003002 + 80002b18: 00209703 lh a4,2(ra) + 80002b1c: 000013b7 lui t2,0x1 + 80002b20: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002b24: 0a771863 bne a4,t2,80002bd4 + 80002b28: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b2c: 00200293 li t0,2 + 80002b30: fe5210e3 bne tp,t0,80002b10 + +0000000080002b34 : + 80002b34: 01000193 li gp,16 + 80002b38: 00000213 li tp,0 + 80002b3c: 00000097 auipc ra,0x0 + 80002b40: 4c808093 addi ra,ra,1224 # 80003004 + 80002b44: 00000013 nop + 80002b48: 00209703 lh a4,2(ra) + 80002b4c: fffff3b7 lui t2,0xfffff + 80002b50: 00f3839b addiw t2,t2,15 # fffffffffffff00f + 80002b54: 08771063 bne a4,t2,80002bd4 + 80002b58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b5c: 00200293 li t0,2 + 80002b60: fc521ee3 bne tp,t0,80002b3c + +0000000080002b64 : + 80002b64: 01100193 li gp,17 + 80002b68: 00000213 li tp,0 + 80002b6c: 00000097 auipc ra,0x0 + 80002b70: 49408093 addi ra,ra,1172 # 80003000 + 80002b74: 00000013 nop + 80002b78: 00000013 nop + 80002b7c: 00209703 lh a4,2(ra) + 80002b80: f0000393 li t2,-256 + 80002b84: 04771863 bne a4,t2,80002bd4 + 80002b88: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b8c: 00200293 li t0,2 + 80002b90: fc521ee3 bne tp,t0,80002b6c + +0000000080002b94 : + 80002b94: 00000297 auipc t0,0x0 + 80002b98: 46c28293 addi t0,t0,1132 # 80003000 + 80002b9c: 00029103 lh sp,0(t0) + 80002ba0: 00200113 li sp,2 + 80002ba4: 00200393 li t2,2 + 80002ba8: 01200193 li gp,18 + 80002bac: 02711463 bne sp,t2,80002bd4 + +0000000080002bb0 : + 80002bb0: 00000297 auipc t0,0x0 + 80002bb4: 45028293 addi t0,t0,1104 # 80003000 + 80002bb8: 00029103 lh sp,0(t0) + 80002bbc: 00000013 nop + 80002bc0: 00200113 li sp,2 + 80002bc4: 00200393 li t2,2 + 80002bc8: 01300193 li gp,19 + 80002bcc: 00711463 bne sp,t2,80002bd4 + 80002bd0: 00301a63 bne zero,gp,80002be4 + +0000000080002bd4 : + 80002bd4: 00119513 slli a0,gp,0x1 + 80002bd8: 00050063 beqz a0,80002bd8 + 80002bdc: 00156513 ori a0,a0,1 + 80002be0: 00000073 ecall + +0000000080002be4 : + 80002be4: 00100513 li a0,1 + 80002be8: 00000073 ecall + 80002bec: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: 00ff .2byte 0xff + +0000000080003002 : + 80003002: ff00 .2byte 0xff00 + +0000000080003004 : + 80003004: 0ff0 .2byte 0xff0 + +0000000080003006 : + 80003006: 0f f0 Address 0x0000000080003006 is out of bounds. + + 8000300a: diff --git a/tests/rv64ui-v-lhu b/tests/rv64ui-v-lhu new file mode 100644 index 0000000000000000000000000000000000000000..bbb0e261d376d1b6b4c00b94c779fdfdb9c05bf4 GIT binary patch literal 19696 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 73450513 addi a0,a0,1844 # 80002c08 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 76850513 addi a0,a0,1896 # 80002c50 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 79c50513 addi a0,a0,1948 # 80002c98 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7a050513 addi a0,a0,1952 # 80002cb0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6f868693 addi a3,a3,1784 # 80002cf0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 74850513 addi a0,a0,1864 # 80002d90 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 69050513 addi a0,a0,1680 # 80002db8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 62050513 addi a0,a0,1568 # 80002d58 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5d450513 addi a0,a0,1492 # 80002d20 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03b00793 li a5,59 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 007667b7 lui a5,0x766 + 80002908: 00080637 lui a2,0x80 + 8000290c: efb78793 addi a5,a5,-261 # 765efb <_start-0x7f89a105> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 49850513 addi a0,a0,1176 # 80002de8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 0000d703 lhu a4,0(ra) + 80002974: 0ff00393 li t2,255 + 80002978: 00200193 li gp,2 + 8000297c: 26771663 bne a4,t2,80002be8 + +0000000080002980 : + 80002980: 00000097 auipc ra,0x0 + 80002984: 68008093 addi ra,ra,1664 # 80003000 + 80002988: 0020d703 lhu a4,2(ra) + 8000298c: 000103b7 lui t2,0x10 + 80002990: f003839b addiw t2,t2,-256 # ff00 <_start-0x7fff0100> + 80002994: 00300193 li gp,3 + 80002998: 24771863 bne a4,t2,80002be8 + +000000008000299c : + 8000299c: 00000097 auipc ra,0x0 + 800029a0: 66408093 addi ra,ra,1636 # 80003000 + 800029a4: 0040d703 lhu a4,4(ra) + 800029a8: 000013b7 lui t2,0x1 + 800029ac: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 800029b0: 00400193 li gp,4 + 800029b4: 22771a63 bne a4,t2,80002be8 + +00000000800029b8 : + 800029b8: 00000097 auipc ra,0x0 + 800029bc: 64808093 addi ra,ra,1608 # 80003000 + 800029c0: 0060d703 lhu a4,6(ra) + 800029c4: 0000f3b7 lui t2,0xf + 800029c8: 00f3839b addiw t2,t2,15 # f00f <_start-0x7fff0ff1> + 800029cc: 00500193 li gp,5 + 800029d0: 20771c63 bne a4,t2,80002be8 + +00000000800029d4 : + 800029d4: 00000097 auipc ra,0x0 + 800029d8: 63208093 addi ra,ra,1586 # 80003006 + 800029dc: ffa0d703 lhu a4,-6(ra) + 800029e0: 0ff00393 li t2,255 + 800029e4: 00600193 li gp,6 + 800029e8: 20771063 bne a4,t2,80002be8 + +00000000800029ec : + 800029ec: 00000097 auipc ra,0x0 + 800029f0: 61a08093 addi ra,ra,1562 # 80003006 + 800029f4: ffc0d703 lhu a4,-4(ra) + 800029f8: 000103b7 lui t2,0x10 + 800029fc: f003839b addiw t2,t2,-256 # ff00 <_start-0x7fff0100> + 80002a00: 00700193 li gp,7 + 80002a04: 1e771263 bne a4,t2,80002be8 + +0000000080002a08 : + 80002a08: 00000097 auipc ra,0x0 + 80002a0c: 5fe08093 addi ra,ra,1534 # 80003006 + 80002a10: ffe0d703 lhu a4,-2(ra) + 80002a14: 000013b7 lui t2,0x1 + 80002a18: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002a1c: 00800193 li gp,8 + 80002a20: 1c771463 bne a4,t2,80002be8 + +0000000080002a24 : + 80002a24: 00000097 auipc ra,0x0 + 80002a28: 5e208093 addi ra,ra,1506 # 80003006 + 80002a2c: 0000d703 lhu a4,0(ra) + 80002a30: 0000f3b7 lui t2,0xf + 80002a34: 00f3839b addiw t2,t2,15 # f00f <_start-0x7fff0ff1> + 80002a38: 00900193 li gp,9 + 80002a3c: 1a771663 bne a4,t2,80002be8 + +0000000080002a40 : + 80002a40: 00000097 auipc ra,0x0 + 80002a44: 5c008093 addi ra,ra,1472 # 80003000 + 80002a48: fe008093 addi ra,ra,-32 + 80002a4c: 0200d283 lhu t0,32(ra) + 80002a50: 0ff00393 li t2,255 + 80002a54: 00a00193 li gp,10 + 80002a58: 18729863 bne t0,t2,80002be8 + +0000000080002a5c : + 80002a5c: 00000097 auipc ra,0x0 + 80002a60: 5a408093 addi ra,ra,1444 # 80003000 + 80002a64: ffb08093 addi ra,ra,-5 + 80002a68: 0070d283 lhu t0,7(ra) + 80002a6c: 000103b7 lui t2,0x10 + 80002a70: f003839b addiw t2,t2,-256 # ff00 <_start-0x7fff0100> + 80002a74: 00b00193 li gp,11 + 80002a78: 16729863 bne t0,t2,80002be8 + +0000000080002a7c : + 80002a7c: 00c00193 li gp,12 + 80002a80: 00000213 li tp,0 + 80002a84: 00000097 auipc ra,0x0 + 80002a88: 57e08093 addi ra,ra,1406 # 80003002 + 80002a8c: 0020d703 lhu a4,2(ra) + 80002a90: 00070313 mv t1,a4 + 80002a94: 000013b7 lui t2,0x1 + 80002a98: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002a9c: 14731663 bne t1,t2,80002be8 + 80002aa0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aa4: 00200293 li t0,2 + 80002aa8: fc521ee3 bne tp,t0,80002a84 + +0000000080002aac : + 80002aac: 00d00193 li gp,13 + 80002ab0: 00000213 li tp,0 + 80002ab4: 00000097 auipc ra,0x0 + 80002ab8: 55008093 addi ra,ra,1360 # 80003004 + 80002abc: 0020d703 lhu a4,2(ra) + 80002ac0: 00000013 nop + 80002ac4: 00070313 mv t1,a4 + 80002ac8: 0000f3b7 lui t2,0xf + 80002acc: 00f3839b addiw t2,t2,15 # f00f <_start-0x7fff0ff1> + 80002ad0: 10731c63 bne t1,t2,80002be8 + 80002ad4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ad8: 00200293 li t0,2 + 80002adc: fc521ce3 bne tp,t0,80002ab4 + +0000000080002ae0 : + 80002ae0: 00e00193 li gp,14 + 80002ae4: 00000213 li tp,0 + 80002ae8: 00000097 auipc ra,0x0 + 80002aec: 51808093 addi ra,ra,1304 # 80003000 + 80002af0: 0020d703 lhu a4,2(ra) + 80002af4: 00000013 nop + 80002af8: 00000013 nop + 80002afc: 00070313 mv t1,a4 + 80002b00: 000103b7 lui t2,0x10 + 80002b04: f003839b addiw t2,t2,-256 # ff00 <_start-0x7fff0100> + 80002b08: 0e731063 bne t1,t2,80002be8 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fc521ae3 bne tp,t0,80002ae8 + +0000000080002b18 : + 80002b18: 00f00193 li gp,15 + 80002b1c: 00000213 li tp,0 + 80002b20: 00000097 auipc ra,0x0 + 80002b24: 4e208093 addi ra,ra,1250 # 80003002 + 80002b28: 0020d703 lhu a4,2(ra) + 80002b2c: 000013b7 lui t2,0x1 + 80002b30: ff03839b addiw t2,t2,-16 # ff0 <_start-0x7ffff010> + 80002b34: 0a771a63 bne a4,t2,80002be8 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5210e3 bne tp,t0,80002b20 + +0000000080002b44 : + 80002b44: 01000193 li gp,16 + 80002b48: 00000213 li tp,0 + 80002b4c: 00000097 auipc ra,0x0 + 80002b50: 4b808093 addi ra,ra,1208 # 80003004 + 80002b54: 00000013 nop + 80002b58: 0020d703 lhu a4,2(ra) + 80002b5c: 0000f3b7 lui t2,0xf + 80002b60: 00f3839b addiw t2,t2,15 # f00f <_start-0x7fff0ff1> + 80002b64: 08771263 bne a4,t2,80002be8 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fc521ee3 bne tp,t0,80002b4c + +0000000080002b74 : + 80002b74: 01100193 li gp,17 + 80002b78: 00000213 li tp,0 + 80002b7c: 00000097 auipc ra,0x0 + 80002b80: 48408093 addi ra,ra,1156 # 80003000 + 80002b84: 00000013 nop + 80002b88: 00000013 nop + 80002b8c: 0020d703 lhu a4,2(ra) + 80002b90: 000103b7 lui t2,0x10 + 80002b94: f003839b addiw t2,t2,-256 # ff00 <_start-0x7fff0100> + 80002b98: 04771863 bne a4,t2,80002be8 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fc521ce3 bne tp,t0,80002b7c + +0000000080002ba8 : + 80002ba8: 00000297 auipc t0,0x0 + 80002bac: 45828293 addi t0,t0,1112 # 80003000 + 80002bb0: 0002d103 lhu sp,0(t0) + 80002bb4: 00200113 li sp,2 + 80002bb8: 00200393 li t2,2 + 80002bbc: 01200193 li gp,18 + 80002bc0: 02711463 bne sp,t2,80002be8 + +0000000080002bc4 : + 80002bc4: 00000297 auipc t0,0x0 + 80002bc8: 43c28293 addi t0,t0,1084 # 80003000 + 80002bcc: 0002d103 lhu sp,0(t0) + 80002bd0: 00000013 nop + 80002bd4: 00200113 li sp,2 + 80002bd8: 00200393 li t2,2 + 80002bdc: 01300193 li gp,19 + 80002be0: 00711463 bne sp,t2,80002be8 + 80002be4: 00301a63 bne zero,gp,80002bf8 + +0000000080002be8 : + 80002be8: 00119513 slli a0,gp,0x1 + 80002bec: 00050063 beqz a0,80002bec + 80002bf0: 00156513 ori a0,a0,1 + 80002bf4: 00000073 ecall + +0000000080002bf8 : + 80002bf8: 00100513 li a0,1 + 80002bfc: 00000073 ecall + 80002c00: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: 00ff .2byte 0xff + +0000000080003002 : + 80003002: ff00 .2byte 0xff00 + +0000000080003004 : + 80003004: 0ff0 .2byte 0xff0 + +0000000080003006 : + 80003006: 0f f0 Address 0x0000000080003006 is out of bounds. + + 8000300a: diff --git a/tests/rv64ui-v-lui b/tests/rv64ui-v-lui new file mode 100644 index 0000000000000000000000000000000000000000..94b747cdcab183cf02640dbe9a290777b85fed4d GIT binary patch literal 17992 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 51450513 addi a0,a0,1300 # 800029e8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 54850513 addi a0,a0,1352 # 80002a30 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 57c50513 addi a0,a0,1404 # 80002a78 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 58050513 addi a0,a0,1408 # 80002a90 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 4d868693 addi a3,a3,1240 # 80002ad0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 52850513 addi a0,a0,1320 # 80002b70 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 47050513 addi a0,a0,1136 # 80002b98 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 40050513 addi a0,a0,1024 # 80002b38 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 3b450513 addi a0,a0,948 # 80002b00 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00e00793 li a5,14 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0caa87b7 lui a5,0xcaa8 + 80002908: 00080637 lui a2,0x80 + 8000290c: 51978793 addi a5,a5,1305 # caa8519 <_start-0x73557ae7> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 27850513 addi a0,a0,632 # 80002bc8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 000000b7 lui ra,0x0 + 8000296c: 00000393 li t2,0 + 80002970: 00200193 li gp,2 + 80002974: 04709a63 bne ra,t2,800029c8 + +0000000080002978 : + 80002978: fffff0b7 lui ra,0xfffff + 8000297c: 4010d093 srai ra,ra,0x1 + 80002980: 80000393 li t2,-2048 + 80002984: 00300193 li gp,3 + 80002988: 04709063 bne ra,t2,800029c8 + +000000008000298c : + 8000298c: 7ffff0b7 lui ra,0x7ffff + 80002990: 4140d093 srai ra,ra,0x14 + 80002994: 7ff00393 li t2,2047 + 80002998: 00400193 li gp,4 + 8000299c: 02709663 bne ra,t2,800029c8 + +00000000800029a0 : + 800029a0: 800000b7 lui ra,0x80000 + 800029a4: 4140d093 srai ra,ra,0x14 + 800029a8: 80000393 li t2,-2048 + 800029ac: 00500193 li gp,5 + 800029b0: 00709c63 bne ra,t2,800029c8 + +00000000800029b4 : + 800029b4: 80000037 lui zero,0x80000 + 800029b8: 00000393 li t2,0 + 800029bc: 00600193 li gp,6 + 800029c0: 00701463 bne zero,t2,800029c8 + 800029c4: 00301a63 bne zero,gp,800029d8 + +00000000800029c8 : + 800029c8: 00119513 slli a0,gp,0x1 + 800029cc: 00050063 beqz a0,800029cc + 800029d0: 00156513 ori a0,a0,1 + 800029d4: 00000073 ecall + +00000000800029d8 : + 800029d8: 00100513 li a0,1 + 800029dc: 00000073 ecall + 800029e0: c0001073 unimp diff --git a/tests/rv64ui-v-lw b/tests/rv64ui-v-lw new file mode 100644 index 0000000000000000000000000000000000000000..9aa4c0e86d50b28a1b8b5b089c09d0095994f1e0 GIT binary patch literal 19704 zcmeHPeQ*@#d4KlycK6T+TC~71n6VEQgK>#+;tnK0kaIB=ahwJ`j!DLL;m~B%I5d11w{U0y)Ht+7sBvf&sBvhOsBvgj zsBvi3sBvhEQRC2RP~#Y6?LFovSQGo$I{q$2gng7&h3K`=KxJ?< zWK!(~~|u+~?P$ zKlba5ulV(**Zq3`!oCvrm9VdbeKqW> zVP6gVYS`Dnz6SO+u&jt=8*`Vtx6z33B1B(ieL$m$Q$U;k))cI@Qv zY+IIS?7J6dnT|LFd4E52a-^Sy{P&}_oatzSP|UXt<8R`9#Qr|c+R*$GMHIC2wBj?4 zTp??6vgTUhr5h%6G|5k5RA6=jvu85vM2_-T-y&;J7V_hxWSvla`Kwbj)_Y}!wa?nt z&yLQH{b77|As=Ql^7x@*=Oc~;?L5X-DYKE>shAxj_A;=V>9IUDX&H$llSShP3XL5d zpS>fe(01ucSvOf|K~8Vlxfm}hKCSm?F%pmjqgN7HJV_#<#D{TR5zMy~o1?L#SM4?< z^3P%#d@_!c6cZS~X7gl`wQW2f)(BvlPg7mJ$G z|Dp90NffszcAojGLu6FQGzgjgj`AC`0h~Xt%8AcE#=AYvg*k*lW=m*m9t3+10n zahW4B#{LMgJP?b|9&eZv4cCz`VvHz~Ff=Zb(L23V+dqsxRGtWKK_0R^VhwJgyfQ`R z5c;GW<7+@!JlGBHbHl^p+vsOsV5!+~j0Sr#cHa)Xr=On0I1kpC4FR%F!Zxs6utrBP zZ_uA()793MX+b}Ih|(n04z6c?IC4%4HdDTT9ODzbE>%8F9gw|-`vCVn1J zhm_03yfR4*D-avTSmc-@h`&_Ge5aqpcW|BW7xeJBphrgqy>Ud)o7&(Xb3;*l$o)oo zAfVd$$W!qBmK{S4zV~C#S3cLZX~l0;z-C$r7%RcIQXp#_*Uw$?TPKi@`~hsIY}>hZ z(D5e=cg+s=5Y_?Z4O|z37=M~HoW54L>yjpgF&6Int%FHD7#ANn*zbPhV7tGK_2;64 zz4W1j<$$&PtAn*%!rq}J=)dcFV;}bHEW!SrA7kInY6bgsB)#!I3Hxm%Jsg*?Uq^(F z2)U?-UlFliN3fKvz2+G|m|ScrAu_U)vemyEb3rBJ$TY@dfsEsmE5*(JC1~^C`5LGo zN5zcx$>LT)Hn;Xk;x<7txApnO?SkLj-Y1Gpf@n7N`NSQ9&)m@`AihBI!d-tSHsn;R zr-6)(N)I(8m?i&Nx<7{~+7HbyQ9{b4z*ow&VE?<<$kpv(4*E=P@rB zzvnr>-Qf2e=l4BvgCsSq!rrd6XzQ8xemb}v^|N33X+x!-hAJ)>2fu^+zx?XS;J49V z6%U*o`friVQH-N$^z{uI3KB)CX2@9FRB7%1HEGW^Q>6bHj7_W)K4lhT>Ch0-3;hcA;H?i2jSKAh3D}3zdt>1s))=h!e{U&) zoq1Ui^2#*UmH-70VxBgA&>Pet7tN_bc7J-R*E)6`&(AD)2ngB-LCPNu3i;+K^r0eH zC(eVH{m5e!eK~}Fw$~OR--h>qm18rSOttK}#P+zcwM{>x6s{G%b{)KABmPfpT#xpt z*Dlns_l#OGD%661tqso>HV=oI|4nR=v2ON{{+A}7FKWxC1#9`Zh`o`*7ejbfjUt|r zal|k#=BG!&?F{1iWM#AM;whpb zu}CkN6E&8A^^gCSPs| z=j=VFj$Uj(<3baaa?Zx`^is`Ni#@3!%*}^pEaAc&{p`cGJ~*~*cx=Y1v|6@V#cVFm zu{pQ5Y*Vu1To`J4aoKJqvn$N8%YK#FmAFCwRg`trhi0*NR$zN)ojm9(8hqROrI>1a z0%d(W4|R@ywwdXdZA$U1=<%0rkcTs8-@RXa#fNvE5ccQd5JG~n^hqDzN4v|GF<)hQ zn8`8T!leCV2^l1jmRN@8DRi)gvpTKPx%<-TL|3Lg*%>+*Z$F%9-4=?swswVf?g-se z|Mdq$O--TtO&db%);VxfXiFq??_3eK{MzMKKdbLaWgd+@{wVYJ#W~I%53LJ@d&7-k z+pQ7rPA5V;b^toaeBJ7&GufJ`SOAAzS4&4cm1^&7yS0%zI}PU7iSSmxtJkz2KAdQa z9}cy5rZZjL24i8(?eqD}Y@)oG1>*cnyT;qwWe$E}XCh^U?hZw5er}&fcW0tEl`t}i z)=;9?NTlW_vQXaLo$2mWD%r&h((z0x)B%dinez_ys{fY^6sbt~S1i;NYVfacUj%7( zwWp0EBy7N?UzNI!Y>BpSN`+fG*eT9V2id6=CkhA^mCd_$Z42GgwjoqsUsqoj{$F_# zonIKpx)nvj!dd!0{~V#neq|tp4{xp_lAqL#3*mSf2rq==r8l+^t`H3@gyRbh3lx#? z1qWBbS0)h6#~^cl!B-wom~_5>eB}W}z%MAw$ML#s<9-*8*BTo~L|OZipICR@zFm=8 zH_X@HY1@f($c68=@mqO&fa`zqC-eP$jpNU_{5-<(mtFYd96#&ATRDEog@4P&C8~1u zheu?8}T=->++l zS>w<>f2VGv|0!@E`th+fPCxFk+aoqlP;TNJCK*$U>A%MH@8JR!xC-1o{_g-@>l5kc zs~!K&d?Q-J@%K1>lKWW?e2EY1#$G&vE=8Z9nK29)HQt1snHKOr7ulL+&S~JNOygvvQT|yPrEB*|y!#o=G02RE9bd9qjgCS0Zt^9RacT`7}H^%A7dH6U}|2r=HBgn>HE7 z5fi5~@h(tS@^vT?Z>0l?w)W1JbbA{D>F!EUi=)Ka?MSiaS)bS)k?72HJ!QuSK?*r# z4kdc2CDGXmm&uMp$#kaFlLzD7hhdepu~ahEf^d-7;Y24e0w{>azY`=ol#WP^~KsP#r>WpMZ2Lg76 z?f?0F2RvXX6J}7UWbF&Spp<`iiA((@Encrf&FuN|cJsY0i?CI_hE>nInO*EeRv$}Sx9;t%unBF3aFo%zLm z|7D2Tnpw_2=Gd2i2W#(qd$+?sciZ!ItYq(Que3gwygux-ohsdz>XJRC&V{@ElKtG;MX_!84Q^lH0}EgMwc9Agzrt~Ezd@I|;~1;: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 73c50513 addi a0,a0,1852 # 80002c10 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 77050513 addi a0,a0,1904 # 80002c58 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7a450513 addi a0,a0,1956 # 80002ca0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7a850513 addi a0,a0,1960 # 80002cb8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 70068693 addi a3,a3,1792 # 80002cf8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 75050513 addi a0,a0,1872 # 80002d98 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 69850513 addi a0,a0,1688 # 80002dc0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 62850513 addi a0,a0,1576 # 80002d60 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5dc50513 addi a0,a0,1500 # 80002d28 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00800793 li a5,8 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 03dd47b7 lui a5,0x3dd4 + 80002908: 00080637 lui a2,0x80 + 8000290c: ebd78793 addi a5,a5,-323 # 3dd3ebd <_start-0x7c22c143> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4a050513 addi a0,a0,1184 # 80002df0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 0000a703 lw a4,0(ra) + 80002974: 00ff03b7 lui t2,0xff0 + 80002978: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 8000297c: 00200193 li gp,2 + 80002980: 26771a63 bne a4,t2,80002bf4 + +0000000080002984 : + 80002984: 00000097 auipc ra,0x0 + 80002988: 67c08093 addi ra,ra,1660 # 80003000 + 8000298c: 0040a703 lw a4,4(ra) + 80002990: ff0103b7 lui t2,0xff010 + 80002994: f003839b addiw t2,t2,-256 # ffffffffff00ff00 + 80002998: 00300193 li gp,3 + 8000299c: 24771c63 bne a4,t2,80002bf4 + +00000000800029a0 : + 800029a0: 00000097 auipc ra,0x0 + 800029a4: 66008093 addi ra,ra,1632 # 80003000 + 800029a8: 0080a703 lw a4,8(ra) + 800029ac: 0ff013b7 lui t2,0xff01 + 800029b0: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 800029b4: 00400193 li gp,4 + 800029b8: 22771e63 bne a4,t2,80002bf4 + +00000000800029bc : + 800029bc: 00000097 auipc ra,0x0 + 800029c0: 64408093 addi ra,ra,1604 # 80003000 + 800029c4: 00c0a703 lw a4,12(ra) + 800029c8: f00ff3b7 lui t2,0xf00ff + 800029cc: 00f3839b addiw t2,t2,15 # fffffffff00ff00f + 800029d0: 00500193 li gp,5 + 800029d4: 22771063 bne a4,t2,80002bf4 + +00000000800029d8 : + 800029d8: 00000097 auipc ra,0x0 + 800029dc: 63408093 addi ra,ra,1588 # 8000300c + 800029e0: ff40a703 lw a4,-12(ra) + 800029e4: 00ff03b7 lui t2,0xff0 + 800029e8: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 800029ec: 00600193 li gp,6 + 800029f0: 20771263 bne a4,t2,80002bf4 + +00000000800029f4 : + 800029f4: 00000097 auipc ra,0x0 + 800029f8: 61808093 addi ra,ra,1560 # 8000300c + 800029fc: ff80a703 lw a4,-8(ra) + 80002a00: ff0103b7 lui t2,0xff010 + 80002a04: f003839b addiw t2,t2,-256 # ffffffffff00ff00 + 80002a08: 00700193 li gp,7 + 80002a0c: 1e771463 bne a4,t2,80002bf4 + +0000000080002a10 : + 80002a10: 00000097 auipc ra,0x0 + 80002a14: 5fc08093 addi ra,ra,1532 # 8000300c + 80002a18: ffc0a703 lw a4,-4(ra) + 80002a1c: 0ff013b7 lui t2,0xff01 + 80002a20: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002a24: 00800193 li gp,8 + 80002a28: 1c771663 bne a4,t2,80002bf4 + +0000000080002a2c : + 80002a2c: 00000097 auipc ra,0x0 + 80002a30: 5e008093 addi ra,ra,1504 # 8000300c + 80002a34: 0000a703 lw a4,0(ra) + 80002a38: f00ff3b7 lui t2,0xf00ff + 80002a3c: 00f3839b addiw t2,t2,15 # fffffffff00ff00f + 80002a40: 00900193 li gp,9 + 80002a44: 1a771863 bne a4,t2,80002bf4 + +0000000080002a48 : + 80002a48: 00000097 auipc ra,0x0 + 80002a4c: 5b808093 addi ra,ra,1464 # 80003000 + 80002a50: fe008093 addi ra,ra,-32 + 80002a54: 0200a283 lw t0,32(ra) + 80002a58: 00ff03b7 lui t2,0xff0 + 80002a5c: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002a60: 00a00193 li gp,10 + 80002a64: 18729863 bne t0,t2,80002bf4 + +0000000080002a68 : + 80002a68: 00000097 auipc ra,0x0 + 80002a6c: 59808093 addi ra,ra,1432 # 80003000 + 80002a70: ffd08093 addi ra,ra,-3 + 80002a74: 0070a283 lw t0,7(ra) + 80002a78: ff0103b7 lui t2,0xff010 + 80002a7c: f003839b addiw t2,t2,-256 # ffffffffff00ff00 + 80002a80: 00b00193 li gp,11 + 80002a84: 16729863 bne t0,t2,80002bf4 + +0000000080002a88 : + 80002a88: 00c00193 li gp,12 + 80002a8c: 00000213 li tp,0 + 80002a90: 00000097 auipc ra,0x0 + 80002a94: 57408093 addi ra,ra,1396 # 80003004 + 80002a98: 0040a703 lw a4,4(ra) + 80002a9c: 00070313 mv t1,a4 + 80002aa0: 0ff013b7 lui t2,0xff01 + 80002aa4: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002aa8: 14731663 bne t1,t2,80002bf4 + 80002aac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ab0: 00200293 li t0,2 + 80002ab4: fc521ee3 bne tp,t0,80002a90 + +0000000080002ab8 : + 80002ab8: 00d00193 li gp,13 + 80002abc: 00000213 li tp,0 + 80002ac0: 00000097 auipc ra,0x0 + 80002ac4: 54808093 addi ra,ra,1352 # 80003008 + 80002ac8: 0040a703 lw a4,4(ra) + 80002acc: 00000013 nop + 80002ad0: 00070313 mv t1,a4 + 80002ad4: f00ff3b7 lui t2,0xf00ff + 80002ad8: 00f3839b addiw t2,t2,15 # fffffffff00ff00f + 80002adc: 10731c63 bne t1,t2,80002bf4 + 80002ae0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae4: 00200293 li t0,2 + 80002ae8: fc521ce3 bne tp,t0,80002ac0 + +0000000080002aec : + 80002aec: 00e00193 li gp,14 + 80002af0: 00000213 li tp,0 + 80002af4: 00000097 auipc ra,0x0 + 80002af8: 50c08093 addi ra,ra,1292 # 80003000 + 80002afc: 0040a703 lw a4,4(ra) + 80002b00: 00000013 nop + 80002b04: 00000013 nop + 80002b08: 00070313 mv t1,a4 + 80002b0c: ff0103b7 lui t2,0xff010 + 80002b10: f003839b addiw t2,t2,-256 # ffffffffff00ff00 + 80002b14: 0e731063 bne t1,t2,80002bf4 + 80002b18: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b1c: 00200293 li t0,2 + 80002b20: fc521ae3 bne tp,t0,80002af4 + +0000000080002b24 : + 80002b24: 00f00193 li gp,15 + 80002b28: 00000213 li tp,0 + 80002b2c: 00000097 auipc ra,0x0 + 80002b30: 4d808093 addi ra,ra,1240 # 80003004 + 80002b34: 0040a703 lw a4,4(ra) + 80002b38: 0ff013b7 lui t2,0xff01 + 80002b3c: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002b40: 0a771a63 bne a4,t2,80002bf4 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5210e3 bne tp,t0,80002b2c + +0000000080002b50 : + 80002b50: 01000193 li gp,16 + 80002b54: 00000213 li tp,0 + 80002b58: 00000097 auipc ra,0x0 + 80002b5c: 4b008093 addi ra,ra,1200 # 80003008 + 80002b60: 00000013 nop + 80002b64: 0040a703 lw a4,4(ra) + 80002b68: f00ff3b7 lui t2,0xf00ff + 80002b6c: 00f3839b addiw t2,t2,15 # fffffffff00ff00f + 80002b70: 08771263 bne a4,t2,80002bf4 + 80002b74: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b78: 00200293 li t0,2 + 80002b7c: fc521ee3 bne tp,t0,80002b58 + +0000000080002b80 : + 80002b80: 01100193 li gp,17 + 80002b84: 00000213 li tp,0 + 80002b88: 00000097 auipc ra,0x0 + 80002b8c: 47808093 addi ra,ra,1144 # 80003000 + 80002b90: 00000013 nop + 80002b94: 00000013 nop + 80002b98: 0040a703 lw a4,4(ra) + 80002b9c: ff0103b7 lui t2,0xff010 + 80002ba0: f003839b addiw t2,t2,-256 # ffffffffff00ff00 + 80002ba4: 04771863 bne a4,t2,80002bf4 + 80002ba8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bac: 00200293 li t0,2 + 80002bb0: fc521ce3 bne tp,t0,80002b88 + +0000000080002bb4 : + 80002bb4: 00000297 auipc t0,0x0 + 80002bb8: 44c28293 addi t0,t0,1100 # 80003000 + 80002bbc: 0002a103 lw sp,0(t0) + 80002bc0: 00200113 li sp,2 + 80002bc4: 00200393 li t2,2 + 80002bc8: 01200193 li gp,18 + 80002bcc: 02711463 bne sp,t2,80002bf4 + +0000000080002bd0 : + 80002bd0: 00000297 auipc t0,0x0 + 80002bd4: 43028293 addi t0,t0,1072 # 80003000 + 80002bd8: 0002a103 lw sp,0(t0) + 80002bdc: 00000013 nop + 80002be0: 00200113 li sp,2 + 80002be4: 00200393 li t2,2 + 80002be8: 01300193 li gp,19 + 80002bec: 00711463 bne sp,t2,80002bf4 + 80002bf0: 00301a63 bne zero,gp,80002c04 + +0000000080002bf4 : + 80002bf4: 00119513 slli a0,gp,0x1 + 80002bf8: 00050063 beqz a0,80002bf8 + 80002bfc: 00156513 ori a0,a0,1 + 80002c00: 00000073 ecall + +0000000080002c04 : + 80002c04: 00100513 li a0,1 + 80002c08: 00000073 ecall + 80002c0c: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: 00ff .2byte 0xff + 80003002: 00ff .2byte 0xff + +0000000080003004 : + 80003004: ff00 .2byte 0xff00 + 80003006: ff00 .2byte 0xff00 + +0000000080003008 : + 80003008: 0ff0 .2byte 0xff0 + 8000300a: 0ff0 .2byte 0xff0 + +000000008000300c : + 8000300c: f00ff00f .4byte 0xf00ff00f diff --git a/tests/rv64ui-v-lwu b/tests/rv64ui-v-lwu new file mode 100644 index 0000000000000000000000000000000000000000..6b836a070b22b2d4ab0e2905413f56e425412c7f GIT binary patch literal 19704 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 78450513 addi a0,a0,1924 # 80002c58 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7b850513 addi a0,a0,1976 # 80002ca0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7ec50513 addi a0,a0,2028 # 80002ce8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7f050513 addi a0,a0,2032 # 80002d00 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 74868693 addi a3,a3,1864 # 80002d40 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 79850513 addi a0,a0,1944 # 80002de0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6e050513 addi a0,a0,1760 # 80002e08 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 67050513 addi a0,a0,1648 # 80002da8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 62450513 addi a0,a0,1572 # 80002d70 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00200793 li a5,2 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 046f07b7 lui a5,0x46f0 + 80002908: 00080637 lui a2,0x80 + 8000290c: b8378793 addi a5,a5,-1149 # 46efb83 <_start-0x7b91047d> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4e850513 addi a0,a0,1256 # 80002e38 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: 0000e703 lwu a4,0(ra) + 80002974: 00ff03b7 lui t2,0xff0 + 80002978: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 8000297c: 00200193 li gp,2 + 80002980: 2a771e63 bne a4,t2,80002c3c + +0000000080002984 : + 80002984: 00000097 auipc ra,0x0 + 80002988: 67c08093 addi ra,ra,1660 # 80003000 + 8000298c: 0040e703 lwu a4,4(ra) + 80002990: 000103b7 lui t2,0x10 + 80002994: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002998: 01039393 slli t2,t2,0x10 + 8000299c: f0038393 addi t2,t2,-256 + 800029a0: 00300193 li gp,3 + 800029a4: 28771c63 bne a4,t2,80002c3c + +00000000800029a8 : + 800029a8: 00000097 auipc ra,0x0 + 800029ac: 65808093 addi ra,ra,1624 # 80003000 + 800029b0: 0080e703 lwu a4,8(ra) + 800029b4: 0ff013b7 lui t2,0xff01 + 800029b8: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 800029bc: 00400193 li gp,4 + 800029c0: 26771e63 bne a4,t2,80002c3c + +00000000800029c4 : + 800029c4: 00000097 auipc ra,0x0 + 800029c8: 63c08093 addi ra,ra,1596 # 80003000 + 800029cc: 00c0e703 lwu a4,12(ra) + 800029d0: 000f03b7 lui t2,0xf0 + 800029d4: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 800029d8: 00c39393 slli t2,t2,0xc + 800029dc: 00f38393 addi t2,t2,15 + 800029e0: 00500193 li gp,5 + 800029e4: 24771c63 bne a4,t2,80002c3c + +00000000800029e8 : + 800029e8: 00000097 auipc ra,0x0 + 800029ec: 62408093 addi ra,ra,1572 # 8000300c + 800029f0: ff40e703 lwu a4,-12(ra) + 800029f4: 00ff03b7 lui t2,0xff0 + 800029f8: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 800029fc: 00600193 li gp,6 + 80002a00: 22771e63 bne a4,t2,80002c3c + +0000000080002a04 : + 80002a04: 00000097 auipc ra,0x0 + 80002a08: 60808093 addi ra,ra,1544 # 8000300c + 80002a0c: ff80e703 lwu a4,-8(ra) + 80002a10: 000103b7 lui t2,0x10 + 80002a14: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002a18: 01039393 slli t2,t2,0x10 + 80002a1c: f0038393 addi t2,t2,-256 + 80002a20: 00700193 li gp,7 + 80002a24: 20771c63 bne a4,t2,80002c3c + +0000000080002a28 : + 80002a28: 00000097 auipc ra,0x0 + 80002a2c: 5e408093 addi ra,ra,1508 # 8000300c + 80002a30: ffc0e703 lwu a4,-4(ra) + 80002a34: 0ff013b7 lui t2,0xff01 + 80002a38: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002a3c: 00800193 li gp,8 + 80002a40: 1e771e63 bne a4,t2,80002c3c + +0000000080002a44 : + 80002a44: 00000097 auipc ra,0x0 + 80002a48: 5c808093 addi ra,ra,1480 # 8000300c + 80002a4c: 0000e703 lwu a4,0(ra) + 80002a50: 000f03b7 lui t2,0xf0 + 80002a54: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002a58: 00c39393 slli t2,t2,0xc + 80002a5c: 00f38393 addi t2,t2,15 + 80002a60: 00900193 li gp,9 + 80002a64: 1c771c63 bne a4,t2,80002c3c + +0000000080002a68 : + 80002a68: 00000097 auipc ra,0x0 + 80002a6c: 59808093 addi ra,ra,1432 # 80003000 + 80002a70: fe008093 addi ra,ra,-32 + 80002a74: 0200e283 lwu t0,32(ra) + 80002a78: 00ff03b7 lui t2,0xff0 + 80002a7c: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002a80: 00a00193 li gp,10 + 80002a84: 1a729c63 bne t0,t2,80002c3c + +0000000080002a88 : + 80002a88: 00000097 auipc ra,0x0 + 80002a8c: 57808093 addi ra,ra,1400 # 80003000 + 80002a90: ffd08093 addi ra,ra,-3 + 80002a94: 0070e283 lwu t0,7(ra) + 80002a98: 000103b7 lui t2,0x10 + 80002a9c: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002aa0: 01039393 slli t2,t2,0x10 + 80002aa4: f0038393 addi t2,t2,-256 + 80002aa8: 00b00193 li gp,11 + 80002aac: 18729863 bne t0,t2,80002c3c + +0000000080002ab0 : + 80002ab0: 00c00193 li gp,12 + 80002ab4: 00000213 li tp,0 + 80002ab8: 00000097 auipc ra,0x0 + 80002abc: 54c08093 addi ra,ra,1356 # 80003004 + 80002ac0: 0040e703 lwu a4,4(ra) + 80002ac4: 00070313 mv t1,a4 + 80002ac8: 0ff013b7 lui t2,0xff01 + 80002acc: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002ad0: 16731663 bne t1,t2,80002c3c + 80002ad4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ad8: 00200293 li t0,2 + 80002adc: fc521ee3 bne tp,t0,80002ab8 + +0000000080002ae0 : + 80002ae0: 00d00193 li gp,13 + 80002ae4: 00000213 li tp,0 + 80002ae8: 00000097 auipc ra,0x0 + 80002aec: 52008093 addi ra,ra,1312 # 80003008 + 80002af0: 0040e703 lwu a4,4(ra) + 80002af4: 00000013 nop + 80002af8: 00070313 mv t1,a4 + 80002afc: 000f03b7 lui t2,0xf0 + 80002b00: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002b04: 00c39393 slli t2,t2,0xc + 80002b08: 00f38393 addi t2,t2,15 + 80002b0c: 12731863 bne t1,t2,80002c3c + 80002b10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b14: 00200293 li t0,2 + 80002b18: fc5218e3 bne tp,t0,80002ae8 + +0000000080002b1c : + 80002b1c: 00e00193 li gp,14 + 80002b20: 00000213 li tp,0 + 80002b24: 00000097 auipc ra,0x0 + 80002b28: 4dc08093 addi ra,ra,1244 # 80003000 + 80002b2c: 0040e703 lwu a4,4(ra) + 80002b30: 00000013 nop + 80002b34: 00000013 nop + 80002b38: 00070313 mv t1,a4 + 80002b3c: 000103b7 lui t2,0x10 + 80002b40: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002b44: 01039393 slli t2,t2,0x10 + 80002b48: f0038393 addi t2,t2,-256 + 80002b4c: 0e731863 bne t1,t2,80002c3c + 80002b50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b54: 00200293 li t0,2 + 80002b58: fc5216e3 bne tp,t0,80002b24 + +0000000080002b5c : + 80002b5c: 00f00193 li gp,15 + 80002b60: 00000213 li tp,0 + 80002b64: 00000097 auipc ra,0x0 + 80002b68: 4a008093 addi ra,ra,1184 # 80003004 + 80002b6c: 0040e703 lwu a4,4(ra) + 80002b70: 0ff013b7 lui t2,0xff01 + 80002b74: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002b78: 0c771263 bne a4,t2,80002c3c + 80002b7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b80: 00200293 li t0,2 + 80002b84: fe5210e3 bne tp,t0,80002b64 + +0000000080002b88 : + 80002b88: 01000193 li gp,16 + 80002b8c: 00000213 li tp,0 + 80002b90: 00000097 auipc ra,0x0 + 80002b94: 47808093 addi ra,ra,1144 # 80003008 + 80002b98: 00000013 nop + 80002b9c: 0040e703 lwu a4,4(ra) + 80002ba0: 000f03b7 lui t2,0xf0 + 80002ba4: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002ba8: 00c39393 slli t2,t2,0xc + 80002bac: 00f38393 addi t2,t2,15 + 80002bb0: 08771663 bne a4,t2,80002c3c + 80002bb4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb8: 00200293 li t0,2 + 80002bbc: fc521ae3 bne tp,t0,80002b90 + +0000000080002bc0 : + 80002bc0: 01100193 li gp,17 + 80002bc4: 00000213 li tp,0 + 80002bc8: 00000097 auipc ra,0x0 + 80002bcc: 43808093 addi ra,ra,1080 # 80003000 + 80002bd0: 00000013 nop + 80002bd4: 00000013 nop + 80002bd8: 0040e703 lwu a4,4(ra) + 80002bdc: 000103b7 lui t2,0x10 + 80002be0: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002be4: 01039393 slli t2,t2,0x10 + 80002be8: f0038393 addi t2,t2,-256 + 80002bec: 04771863 bne a4,t2,80002c3c + 80002bf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf4: 00200293 li t0,2 + 80002bf8: fc5218e3 bne tp,t0,80002bc8 + +0000000080002bfc : + 80002bfc: 00000297 auipc t0,0x0 + 80002c00: 40428293 addi t0,t0,1028 # 80003000 + 80002c04: 0002e103 lwu sp,0(t0) + 80002c08: 00200113 li sp,2 + 80002c0c: 00200393 li t2,2 + 80002c10: 01200193 li gp,18 + 80002c14: 02711463 bne sp,t2,80002c3c + +0000000080002c18 : + 80002c18: 00000297 auipc t0,0x0 + 80002c1c: 3e828293 addi t0,t0,1000 # 80003000 + 80002c20: 0002e103 lwu sp,0(t0) + 80002c24: 00000013 nop + 80002c28: 00200113 li sp,2 + 80002c2c: 00200393 li t2,2 + 80002c30: 01300193 li gp,19 + 80002c34: 00711463 bne sp,t2,80002c3c + 80002c38: 00301a63 bne zero,gp,80002c4c + +0000000080002c3c : + 80002c3c: 00119513 slli a0,gp,0x1 + 80002c40: 00050063 beqz a0,80002c40 + 80002c44: 00156513 ori a0,a0,1 + 80002c48: 00000073 ecall + +0000000080002c4c : + 80002c4c: 00100513 li a0,1 + 80002c50: 00000073 ecall + 80002c54: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: 00ff .2byte 0xff + 80003002: 00ff .2byte 0xff + +0000000080003004 : + 80003004: ff00 .2byte 0xff00 + 80003006: ff00 .2byte 0xff00 + +0000000080003008 : + 80003008: 0ff0 .2byte 0xff0 + 8000300a: 0ff0 .2byte 0xff0 + +000000008000300c : + 8000300c: f00ff00f .4byte 0xf00ff00f diff --git a/tests/rv64ui-v-or b/tests/rv64ui-v-or new file mode 100644 index 0000000000000000000000000000000000000000..ee77bdf63c08e93bf14209493a03506bf5a981a2 GIT binary patch literal 20056 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 aYxm+_i^di19T4@e?FU-wF2PvSt^dDhylA@s literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-or.dump b/tests/rv64ui-v-or.dump new file mode 100644 index 0000000..ceda656 --- /dev/null +++ b/tests/rv64ui-v-or.dump @@ -0,0 +1,1213 @@ + +rv64ui-v-or: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: a8c50513 addi a0,a0,-1396 # 80002f60 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: ac050513 addi a0,a0,-1344 # 80002fa8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: af450513 addi a0,a0,-1292 # 80002ff0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: af850513 addi a0,a0,-1288 # 80003008 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a5068693 addi a3,a3,-1456 # 80003048 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: aa050513 addi a0,a0,-1376 # 800030e8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 9e850513 addi a0,a0,-1560 # 80003110 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 97850513 addi a0,a0,-1672 # 800030b0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 92c50513 addi a0,a0,-1748 # 80003078 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03800793 li a5,56 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 039357b7 lui a5,0x3935 + 80002908: 00080637 lui a2,0x80 + 8000290c: f5d78793 addi a5,a5,-163 # 3934f5d <_start-0x7c6cb0a3> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 7f050513 addi a0,a0,2032 # 80003140 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 000100b7 lui ra,0x10 + 8000296c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002970: 01009093 slli ra,ra,0x10 + 80002974: f0008093 addi ra,ra,-256 + 80002978: 0f0f1137 lui sp,0xf0f1 + 8000297c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002980: 0020e733 or a4,ra,sp + 80002984: 000013b7 lui t2,0x1 + 80002988: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 8000298c: 01439393 slli t2,t2,0x14 + 80002990: f0f38393 addi t2,t2,-241 + 80002994: 00200193 li gp,2 + 80002998: 5a771663 bne a4,t2,80002f44 + +000000008000299c : + 8000299c: 0ff010b7 lui ra,0xff01 + 800029a0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 800029a4: 000f1137 lui sp,0xf1 + 800029a8: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 800029ac: 00c11113 slli sp,sp,0xc + 800029b0: 0f010113 addi sp,sp,240 + 800029b4: 0020e733 or a4,ra,sp + 800029b8: 000103b7 lui t2,0x10 + 800029bc: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 800029c0: 01039393 slli t2,t2,0x10 + 800029c4: ff038393 addi t2,t2,-16 + 800029c8: 00300193 li gp,3 + 800029cc: 56771c63 bne a4,t2,80002f44 + +00000000800029d0 : + 800029d0: 00ff00b7 lui ra,0xff0 + 800029d4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 800029d8: 0f0f1137 lui sp,0xf0f1 + 800029dc: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 800029e0: 0020e733 or a4,ra,sp + 800029e4: 0fff13b7 lui t2,0xfff1 + 800029e8: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 800029ec: 00400193 li gp,4 + 800029f0: 54771a63 bne a4,t2,80002f44 + +00000000800029f4 : + 800029f4: 000f00b7 lui ra,0xf0 + 800029f8: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 800029fc: 00c09093 slli ra,ra,0xc + 80002a00: 00f08093 addi ra,ra,15 + 80002a04: 000f1137 lui sp,0xf1 + 80002a08: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002a0c: 00c11113 slli sp,sp,0xc + 80002a10: 0f010113 addi sp,sp,240 + 80002a14: 0020e733 or a4,ra,sp + 80002a18: 000f13b7 lui t2,0xf1 + 80002a1c: fff3839b addiw t2,t2,-1 # f0fff <_start-0x7ff0f001> + 80002a20: 00c39393 slli t2,t2,0xc + 80002a24: 0ff38393 addi t2,t2,255 + 80002a28: 00500193 li gp,5 + 80002a2c: 50771c63 bne a4,t2,80002f44 + +0000000080002a30 : + 80002a30: 000100b7 lui ra,0x10 + 80002a34: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a38: 01009093 slli ra,ra,0x10 + 80002a3c: f0008093 addi ra,ra,-256 + 80002a40: 0f0f1137 lui sp,0xf0f1 + 80002a44: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002a48: 0020e0b3 or ra,ra,sp + 80002a4c: 000013b7 lui t2,0x1 + 80002a50: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002a54: 01439393 slli t2,t2,0x14 + 80002a58: f0f38393 addi t2,t2,-241 + 80002a5c: 00600193 li gp,6 + 80002a60: 4e709263 bne ra,t2,80002f44 + +0000000080002a64 : + 80002a64: 000100b7 lui ra,0x10 + 80002a68: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a6c: 01009093 slli ra,ra,0x10 + 80002a70: f0008093 addi ra,ra,-256 + 80002a74: 0f0f1137 lui sp,0xf0f1 + 80002a78: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002a7c: 0020e133 or sp,ra,sp + 80002a80: 000013b7 lui t2,0x1 + 80002a84: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002a88: 01439393 slli t2,t2,0x14 + 80002a8c: f0f38393 addi t2,t2,-241 + 80002a90: 00700193 li gp,7 + 80002a94: 4a711863 bne sp,t2,80002f44 + +0000000080002a98 : + 80002a98: 000100b7 lui ra,0x10 + 80002a9c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002aa0: 01009093 slli ra,ra,0x10 + 80002aa4: f0008093 addi ra,ra,-256 + 80002aa8: 0010e0b3 or ra,ra,ra + 80002aac: 000103b7 lui t2,0x10 + 80002ab0: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002ab4: 01039393 slli t2,t2,0x10 + 80002ab8: f0038393 addi t2,t2,-256 + 80002abc: 00800193 li gp,8 + 80002ac0: 48709263 bne ra,t2,80002f44 + +0000000080002ac4 : + 80002ac4: 00000213 li tp,0 + 80002ac8: 000100b7 lui ra,0x10 + 80002acc: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002ad0: 01009093 slli ra,ra,0x10 + 80002ad4: f0008093 addi ra,ra,-256 + 80002ad8: 0f0f1137 lui sp,0xf0f1 + 80002adc: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002ae0: 0020e733 or a4,ra,sp + 80002ae4: 00070313 mv t1,a4 + 80002ae8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aec: 00200293 li t0,2 + 80002af0: fc521ce3 bne tp,t0,80002ac8 + 80002af4: 000013b7 lui t2,0x1 + 80002af8: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002afc: 01439393 slli t2,t2,0x14 + 80002b00: f0f38393 addi t2,t2,-241 + 80002b04: 00900193 li gp,9 + 80002b08: 42731e63 bne t1,t2,80002f44 + +0000000080002b0c : + 80002b0c: 00000213 li tp,0 + 80002b10: 0ff010b7 lui ra,0xff01 + 80002b14: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002b18: 000f1137 lui sp,0xf1 + 80002b1c: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002b20: 00c11113 slli sp,sp,0xc + 80002b24: 0f010113 addi sp,sp,240 + 80002b28: 0020e733 or a4,ra,sp + 80002b2c: 00000013 nop + 80002b30: 00070313 mv t1,a4 + 80002b34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b38: 00200293 li t0,2 + 80002b3c: fc521ae3 bne tp,t0,80002b10 + 80002b40: 000103b7 lui t2,0x10 + 80002b44: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 80002b48: 01039393 slli t2,t2,0x10 + 80002b4c: ff038393 addi t2,t2,-16 + 80002b50: 00a00193 li gp,10 + 80002b54: 3e731863 bne t1,t2,80002f44 + +0000000080002b58 : + 80002b58: 00000213 li tp,0 + 80002b5c: 00ff00b7 lui ra,0xff0 + 80002b60: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b64: 0f0f1137 lui sp,0xf0f1 + 80002b68: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002b6c: 0020e733 or a4,ra,sp + 80002b70: 00000013 nop + 80002b74: 00000013 nop + 80002b78: 00070313 mv t1,a4 + 80002b7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b80: 00200293 li t0,2 + 80002b84: fc521ce3 bne tp,t0,80002b5c + 80002b88: 0fff13b7 lui t2,0xfff1 + 80002b8c: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 80002b90: 00b00193 li gp,11 + 80002b94: 3a731863 bne t1,t2,80002f44 + +0000000080002b98 : + 80002b98: 00000213 li tp,0 + 80002b9c: 000100b7 lui ra,0x10 + 80002ba0: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002ba4: 01009093 slli ra,ra,0x10 + 80002ba8: f0008093 addi ra,ra,-256 + 80002bac: 0f0f1137 lui sp,0xf0f1 + 80002bb0: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002bb4: 0020e733 or a4,ra,sp + 80002bb8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bbc: 00200293 li t0,2 + 80002bc0: fc521ee3 bne tp,t0,80002b9c + 80002bc4: 000013b7 lui t2,0x1 + 80002bc8: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002bcc: 01439393 slli t2,t2,0x14 + 80002bd0: f0f38393 addi t2,t2,-241 + 80002bd4: 00c00193 li gp,12 + 80002bd8: 36771663 bne a4,t2,80002f44 + +0000000080002bdc : + 80002bdc: 00000213 li tp,0 + 80002be0: 0ff010b7 lui ra,0xff01 + 80002be4: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002be8: 000f1137 lui sp,0xf1 + 80002bec: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002bf0: 00c11113 slli sp,sp,0xc + 80002bf4: 0f010113 addi sp,sp,240 + 80002bf8: 00000013 nop + 80002bfc: 0020e733 or a4,ra,sp + 80002c00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c04: 00200293 li t0,2 + 80002c08: fc521ce3 bne tp,t0,80002be0 + 80002c0c: 000103b7 lui t2,0x10 + 80002c10: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 80002c14: 01039393 slli t2,t2,0x10 + 80002c18: ff038393 addi t2,t2,-16 + 80002c1c: 00d00193 li gp,13 + 80002c20: 32771263 bne a4,t2,80002f44 + +0000000080002c24 : + 80002c24: 00000213 li tp,0 + 80002c28: 00ff00b7 lui ra,0xff0 + 80002c2c: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002c30: 0f0f1137 lui sp,0xf0f1 + 80002c34: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002c38: 00000013 nop + 80002c3c: 00000013 nop + 80002c40: 0020e733 or a4,ra,sp + 80002c44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c48: 00200293 li t0,2 + 80002c4c: fc521ee3 bne tp,t0,80002c28 + 80002c50: 0fff13b7 lui t2,0xfff1 + 80002c54: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 80002c58: 00e00193 li gp,14 + 80002c5c: 2e771463 bne a4,t2,80002f44 + +0000000080002c60 : + 80002c60: 00000213 li tp,0 + 80002c64: 000100b7 lui ra,0x10 + 80002c68: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002c6c: 01009093 slli ra,ra,0x10 + 80002c70: f0008093 addi ra,ra,-256 + 80002c74: 00000013 nop + 80002c78: 0f0f1137 lui sp,0xf0f1 + 80002c7c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002c80: 0020e733 or a4,ra,sp + 80002c84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c88: 00200293 li t0,2 + 80002c8c: fc521ce3 bne tp,t0,80002c64 + 80002c90: 000013b7 lui t2,0x1 + 80002c94: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002c98: 01439393 slli t2,t2,0x14 + 80002c9c: f0f38393 addi t2,t2,-241 + 80002ca0: 00f00193 li gp,15 + 80002ca4: 2a771063 bne a4,t2,80002f44 + +0000000080002ca8 : + 80002ca8: 00000213 li tp,0 + 80002cac: 0ff010b7 lui ra,0xff01 + 80002cb0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002cb4: 00000013 nop + 80002cb8: 000f1137 lui sp,0xf1 + 80002cbc: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002cc0: 00c11113 slli sp,sp,0xc + 80002cc4: 0f010113 addi sp,sp,240 + 80002cc8: 00000013 nop + 80002ccc: 0020e733 or a4,ra,sp + 80002cd0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd4: 00200293 li t0,2 + 80002cd8: fc521ae3 bne tp,t0,80002cac + 80002cdc: 000103b7 lui t2,0x10 + 80002ce0: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 80002ce4: 01039393 slli t2,t2,0x10 + 80002ce8: ff038393 addi t2,t2,-16 + 80002cec: 01000193 li gp,16 + 80002cf0: 24771a63 bne a4,t2,80002f44 + +0000000080002cf4 : + 80002cf4: 00000213 li tp,0 + 80002cf8: 00ff00b7 lui ra,0xff0 + 80002cfc: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002d00: 00000013 nop + 80002d04: 00000013 nop + 80002d08: 0f0f1137 lui sp,0xf0f1 + 80002d0c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002d10: 0020e733 or a4,ra,sp + 80002d14: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d18: 00200293 li t0,2 + 80002d1c: fc521ee3 bne tp,t0,80002cf8 + 80002d20: 0fff13b7 lui t2,0xfff1 + 80002d24: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 80002d28: 01100193 li gp,17 + 80002d2c: 20771c63 bne a4,t2,80002f44 + +0000000080002d30 : + 80002d30: 00000213 li tp,0 + 80002d34: 0f0f1137 lui sp,0xf0f1 + 80002d38: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002d3c: 000100b7 lui ra,0x10 + 80002d40: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002d44: 01009093 slli ra,ra,0x10 + 80002d48: f0008093 addi ra,ra,-256 + 80002d4c: 0020e733 or a4,ra,sp + 80002d50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d54: 00200293 li t0,2 + 80002d58: fc521ee3 bne tp,t0,80002d34 + 80002d5c: 000013b7 lui t2,0x1 + 80002d60: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002d64: 01439393 slli t2,t2,0x14 + 80002d68: f0f38393 addi t2,t2,-241 + 80002d6c: 01200193 li gp,18 + 80002d70: 1c771a63 bne a4,t2,80002f44 + +0000000080002d74 : + 80002d74: 00000213 li tp,0 + 80002d78: 000f1137 lui sp,0xf1 + 80002d7c: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002d80: 00c11113 slli sp,sp,0xc + 80002d84: 0f010113 addi sp,sp,240 + 80002d88: 0ff010b7 lui ra,0xff01 + 80002d8c: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002d90: 00000013 nop + 80002d94: 0020e733 or a4,ra,sp + 80002d98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d9c: 00200293 li t0,2 + 80002da0: fc521ce3 bne tp,t0,80002d78 + 80002da4: 000103b7 lui t2,0x10 + 80002da8: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 80002dac: 01039393 slli t2,t2,0x10 + 80002db0: ff038393 addi t2,t2,-16 + 80002db4: 01300193 li gp,19 + 80002db8: 18771663 bne a4,t2,80002f44 + +0000000080002dbc : + 80002dbc: 00000213 li tp,0 + 80002dc0: 0f0f1137 lui sp,0xf0f1 + 80002dc4: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002dc8: 00ff00b7 lui ra,0xff0 + 80002dcc: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002dd0: 00000013 nop + 80002dd4: 00000013 nop + 80002dd8: 0020e733 or a4,ra,sp + 80002ddc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002de0: 00200293 li t0,2 + 80002de4: fc521ee3 bne tp,t0,80002dc0 + 80002de8: 0fff13b7 lui t2,0xfff1 + 80002dec: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 80002df0: 01400193 li gp,20 + 80002df4: 14771863 bne a4,t2,80002f44 + +0000000080002df8 : + 80002df8: 00000213 li tp,0 + 80002dfc: 0f0f1137 lui sp,0xf0f1 + 80002e00: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002e04: 00000013 nop + 80002e08: 000100b7 lui ra,0x10 + 80002e0c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002e10: 01009093 slli ra,ra,0x10 + 80002e14: f0008093 addi ra,ra,-256 + 80002e18: 0020e733 or a4,ra,sp + 80002e1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e20: 00200293 li t0,2 + 80002e24: fc521ce3 bne tp,t0,80002dfc + 80002e28: 000013b7 lui t2,0x1 + 80002e2c: ff13839b addiw t2,t2,-15 # ff1 <_start-0x7ffff00f> + 80002e30: 01439393 slli t2,t2,0x14 + 80002e34: f0f38393 addi t2,t2,-241 + 80002e38: 01500193 li gp,21 + 80002e3c: 10771463 bne a4,t2,80002f44 + +0000000080002e40 : + 80002e40: 00000213 li tp,0 + 80002e44: 000f1137 lui sp,0xf1 + 80002e48: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002e4c: 00c11113 slli sp,sp,0xc + 80002e50: 0f010113 addi sp,sp,240 + 80002e54: 00000013 nop + 80002e58: 0ff010b7 lui ra,0xff01 + 80002e5c: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002e60: 00000013 nop + 80002e64: 0020e733 or a4,ra,sp + 80002e68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e6c: 00200293 li t0,2 + 80002e70: fc521ae3 bne tp,t0,80002e44 + 80002e74: 000103b7 lui t2,0x10 + 80002e78: ff13839b addiw t2,t2,-15 # fff1 <_start-0x7fff000f> + 80002e7c: 01039393 slli t2,t2,0x10 + 80002e80: ff038393 addi t2,t2,-16 + 80002e84: 01600193 li gp,22 + 80002e88: 0a771e63 bne a4,t2,80002f44 + +0000000080002e8c : + 80002e8c: 00000213 li tp,0 + 80002e90: 0f0f1137 lui sp,0xf0f1 + 80002e94: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002e98: 00000013 nop + 80002e9c: 00000013 nop + 80002ea0: 00ff00b7 lui ra,0xff0 + 80002ea4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002ea8: 0020e733 or a4,ra,sp + 80002eac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002eb0: 00200293 li t0,2 + 80002eb4: fc521ee3 bne tp,t0,80002e90 + 80002eb8: 0fff13b7 lui t2,0xfff1 + 80002ebc: fff3839b addiw t2,t2,-1 # fff0fff <_start-0x7000f001> + 80002ec0: 01700193 li gp,23 + 80002ec4: 08771063 bne a4,t2,80002f44 + +0000000080002ec8 : + 80002ec8: 000100b7 lui ra,0x10 + 80002ecc: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002ed0: 01009093 slli ra,ra,0x10 + 80002ed4: f0008093 addi ra,ra,-256 + 80002ed8: 00106133 or sp,zero,ra + 80002edc: 000103b7 lui t2,0x10 + 80002ee0: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002ee4: 01039393 slli t2,t2,0x10 + 80002ee8: f0038393 addi t2,t2,-256 + 80002eec: 01800193 li gp,24 + 80002ef0: 04711a63 bne sp,t2,80002f44 + +0000000080002ef4 : + 80002ef4: 00ff00b7 lui ra,0xff0 + 80002ef8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002efc: 0000e133 or sp,ra,zero + 80002f00: 00ff03b7 lui t2,0xff0 + 80002f04: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002f08: 01900193 li gp,25 + 80002f0c: 02711c63 bne sp,t2,80002f44 + +0000000080002f10 : + 80002f10: 000060b3 or ra,zero,zero + 80002f14: 00000393 li t2,0 + 80002f18: 01a00193 li gp,26 + 80002f1c: 02709463 bne ra,t2,80002f44 + +0000000080002f20 : + 80002f20: 111110b7 lui ra,0x11111 + 80002f24: 1110809b addiw ra,ra,273 # 11111111 <_start-0x6eeeeeef> + 80002f28: 22222137 lui sp,0x22222 + 80002f2c: 2221011b addiw sp,sp,546 # 22222222 <_start-0x5dddddde> + 80002f30: 0020e033 or zero,ra,sp + 80002f34: 00000393 li t2,0 + 80002f38: 01b00193 li gp,27 + 80002f3c: 00701463 bne zero,t2,80002f44 + 80002f40: 00301a63 bne zero,gp,80002f54 + +0000000080002f44 : + 80002f44: 00119513 slli a0,gp,0x1 + 80002f48: 00050063 beqz a0,80002f48 + 80002f4c: 00156513 ori a0,a0,1 + 80002f50: 00000073 ecall + +0000000080002f54 : + 80002f54: 00100513 li a0,1 + 80002f58: 00000073 ecall + 80002f5c: c0001073 unimp diff --git a/tests/rv64ui-v-ori b/tests/rv64ui-v-ori new file mode 100644 index 0000000000000000000000000000000000000000..1342951629e29c813b9b33557f7dc4d63e8828b4 GIT binary patch literal 18632 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 69c50513 addi a0,a0,1692 # 80002b70 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 6d050513 addi a0,a0,1744 # 80002bb8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 70450513 addi a0,a0,1796 # 80002c00 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 70850513 addi a0,a0,1800 # 80002c18 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 66068693 addi a3,a3,1632 # 80002c58 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 6b050513 addi a0,a0,1712 # 80002cf8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 5f850513 addi a0,a0,1528 # 80002d20 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 58850513 addi a0,a0,1416 # 80002cc0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 53c50513 addi a0,a0,1340 # 80002c88 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00d00793 li a5,13 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0a6287b7 lui a5,0xa628 + 80002908: 00080637 lui a2,0x80 + 8000290c: a5878793 addi a5,a5,-1448 # a627a58 <_start-0x759d85a8> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 40050513 addi a0,a0,1024 # 80002d50 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: ff0100b7 lui ra,0xff010 + 8000296c: f000809b addiw ra,ra,-256 # ffffffffff00ff00 + 80002970: f0f0e713 ori a4,ra,-241 + 80002974: f0f00393 li t2,-241 + 80002978: 00200193 li gp,2 + 8000297c: 1c771c63 bne a4,t2,80002b54 + +0000000080002980 : + 80002980: 0ff010b7 lui ra,0xff01 + 80002984: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002988: 0f00e713 ori a4,ra,240 + 8000298c: 0ff013b7 lui t2,0xff01 + 80002990: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002994: 00300193 li gp,3 + 80002998: 1a771e63 bne a4,t2,80002b54 + +000000008000299c : + 8000299c: 00ff00b7 lui ra,0xff0 + 800029a0: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 800029a4: 70f0e713 ori a4,ra,1807 + 800029a8: 00ff03b7 lui t2,0xff0 + 800029ac: 7ff3839b addiw t2,t2,2047 # ff07ff <_start-0x7f00f801> + 800029b0: 00400193 li gp,4 + 800029b4: 1a771063 bne a4,t2,80002b54 + +00000000800029b8 : + 800029b8: f00ff0b7 lui ra,0xf00ff + 800029bc: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 800029c0: 0f00e713 ori a4,ra,240 + 800029c4: f00ff3b7 lui t2,0xf00ff + 800029c8: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 800029cc: 00500193 li gp,5 + 800029d0: 18771263 bne a4,t2,80002b54 + +00000000800029d4 : + 800029d4: 000100b7 lui ra,0x10 + 800029d8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 800029dc: 01009093 slli ra,ra,0x10 + 800029e0: f0008093 addi ra,ra,-256 + 800029e4: 0f00e093 ori ra,ra,240 + 800029e8: 000103b7 lui t2,0x10 + 800029ec: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 800029f0: 01039393 slli t2,t2,0x10 + 800029f4: ff038393 addi t2,t2,-16 + 800029f8: 00600193 li gp,6 + 800029fc: 14709c63 bne ra,t2,80002b54 + +0000000080002a00 : + 80002a00: 00000213 li tp,0 + 80002a04: 0ff010b7 lui ra,0xff01 + 80002a08: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002a0c: 0f00e713 ori a4,ra,240 + 80002a10: 00070313 mv t1,a4 + 80002a14: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a18: 00200293 li t0,2 + 80002a1c: fe5214e3 bne tp,t0,80002a04 + 80002a20: 0ff013b7 lui t2,0xff01 + 80002a24: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002a28: 00700193 li gp,7 + 80002a2c: 12731463 bne t1,t2,80002b54 + +0000000080002a30 : + 80002a30: 00000213 li tp,0 + 80002a34: 00ff00b7 lui ra,0xff0 + 80002a38: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002a3c: 70f0e713 ori a4,ra,1807 + 80002a40: 00000013 nop + 80002a44: 00070313 mv t1,a4 + 80002a48: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a4c: 00200293 li t0,2 + 80002a50: fe5212e3 bne tp,t0,80002a34 + 80002a54: 00ff03b7 lui t2,0xff0 + 80002a58: 7ff3839b addiw t2,t2,2047 # ff07ff <_start-0x7f00f801> + 80002a5c: 00800193 li gp,8 + 80002a60: 0e731a63 bne t1,t2,80002b54 + +0000000080002a64 : + 80002a64: 00000213 li tp,0 + 80002a68: f00ff0b7 lui ra,0xf00ff + 80002a6c: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 80002a70: 0f00e713 ori a4,ra,240 + 80002a74: 00000013 nop + 80002a78: 00000013 nop + 80002a7c: 00070313 mv t1,a4 + 80002a80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a84: 00200293 li t0,2 + 80002a88: fe5210e3 bne tp,t0,80002a68 + 80002a8c: f00ff3b7 lui t2,0xf00ff + 80002a90: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 80002a94: 00900193 li gp,9 + 80002a98: 0a731e63 bne t1,t2,80002b54 + +0000000080002a9c : + 80002a9c: 00000213 li tp,0 + 80002aa0: 0ff010b7 lui ra,0xff01 + 80002aa4: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002aa8: 0f00e713 ori a4,ra,240 + 80002aac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ab0: 00200293 li t0,2 + 80002ab4: fe5216e3 bne tp,t0,80002aa0 + 80002ab8: 0ff013b7 lui t2,0xff01 + 80002abc: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002ac0: 00a00193 li gp,10 + 80002ac4: 08771863 bne a4,t2,80002b54 + +0000000080002ac8 : + 80002ac8: 00000213 li tp,0 + 80002acc: 00ff00b7 lui ra,0xff0 + 80002ad0: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002ad4: 00000013 nop + 80002ad8: f0f0e713 ori a4,ra,-241 + 80002adc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ae0: 00200293 li t0,2 + 80002ae4: fe5214e3 bne tp,t0,80002acc + 80002ae8: fff00393 li t2,-1 + 80002aec: 00b00193 li gp,11 + 80002af0: 06771263 bne a4,t2,80002b54 + +0000000080002af4 : + 80002af4: 00000213 li tp,0 + 80002af8: f00ff0b7 lui ra,0xf00ff + 80002afc: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 80002b00: 00000013 nop + 80002b04: 00000013 nop + 80002b08: 0f00e713 ori a4,ra,240 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5212e3 bne tp,t0,80002af8 + 80002b18: f00ff3b7 lui t2,0xf00ff + 80002b1c: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 80002b20: 00c00193 li gp,12 + 80002b24: 02771863 bne a4,t2,80002b54 + +0000000080002b28 : + 80002b28: 0f006093 ori ra,zero,240 + 80002b2c: 0f000393 li t2,240 + 80002b30: 00d00193 li gp,13 + 80002b34: 02709063 bne ra,t2,80002b54 + +0000000080002b38 : + 80002b38: 00ff00b7 lui ra,0xff0 + 80002b3c: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b40: 70f0e013 ori zero,ra,1807 + 80002b44: 00000393 li t2,0 + 80002b48: 00e00193 li gp,14 + 80002b4c: 00701463 bne zero,t2,80002b54 + 80002b50: 00301a63 bne zero,gp,80002b64 + +0000000080002b54 : + 80002b54: 00119513 slli a0,gp,0x1 + 80002b58: 00050063 beqz a0,80002b58 + 80002b5c: 00156513 ori a0,a0,1 + 80002b60: 00000073 ecall + +0000000080002b64 : + 80002b64: 00100513 li a0,1 + 80002b68: 00000073 ecall + 80002b6c: c0001073 unimp diff --git a/tests/rv64ui-v-sb b/tests/rv64ui-v-sb new file mode 100644 index 0000000000000000000000000000000000000000..7a433470e2d8b83eff6f71ac004c7c65febc063e GIT binary patch literal 20000 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 8a450513 addi a0,a0,-1884 # 80002d78 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 8d850513 addi a0,a0,-1832 # 80002dc0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 90c50513 addi a0,a0,-1780 # 80002e08 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 91050513 addi a0,a0,-1776 # 80002e20 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 86868693 addi a3,a3,-1944 # 80002e60 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 8b850513 addi a0,a0,-1864 # 80002f00 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 80050513 addi a0,a0,-2048 # 80002f28 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 79050513 addi a0,a0,1936 # 80002ec8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 74450513 addi a0,a0,1860 # 80002e90 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01300793 li a5,19 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 061a97b7 lui a5,0x61a9 + 80002908: 00080637 lui a2,0x80 + 8000290c: 7fc78793 addi a5,a5,2044 # 61a97fc <_start-0x79e56804> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 60850513 addi a0,a0,1544 # 80002f58 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000097 auipc ra,0x0 + 8000296c: 69808093 addi ra,ra,1688 # 80003000 + 80002970: faa00113 li sp,-86 + 80002974: 00208023 sb sp,0(ra) + 80002978: 00008703 lb a4,0(ra) + 8000297c: faa00393 li t2,-86 + 80002980: 00200193 li gp,2 + 80002984: 3c771c63 bne a4,t2,80002d5c + +0000000080002988 : + 80002988: 00000097 auipc ra,0x0 + 8000298c: 67808093 addi ra,ra,1656 # 80003000 + 80002990: 00000113 li sp,0 + 80002994: 002080a3 sb sp,1(ra) + 80002998: 00108703 lb a4,1(ra) + 8000299c: 00000393 li t2,0 + 800029a0: 00300193 li gp,3 + 800029a4: 3a771c63 bne a4,t2,80002d5c + +00000000800029a8 : + 800029a8: 00000097 auipc ra,0x0 + 800029ac: 65808093 addi ra,ra,1624 # 80003000 + 800029b0: fffff137 lui sp,0xfffff + 800029b4: fa01011b addiw sp,sp,-96 # ffffffffffffefa0 + 800029b8: 00208123 sb sp,2(ra) + 800029bc: 00209703 lh a4,2(ra) + 800029c0: fffff3b7 lui t2,0xfffff + 800029c4: fa03839b addiw t2,t2,-96 # ffffffffffffefa0 + 800029c8: 00400193 li gp,4 + 800029cc: 38771863 bne a4,t2,80002d5c + +00000000800029d0 : + 800029d0: 00000097 auipc ra,0x0 + 800029d4: 63008093 addi ra,ra,1584 # 80003000 + 800029d8: 00a00113 li sp,10 + 800029dc: 002081a3 sb sp,3(ra) + 800029e0: 00308703 lb a4,3(ra) + 800029e4: 00a00393 li t2,10 + 800029e8: 00500193 li gp,5 + 800029ec: 36771863 bne a4,t2,80002d5c + +00000000800029f0 : + 800029f0: 00000097 auipc ra,0x0 + 800029f4: 61708093 addi ra,ra,1559 # 80003007 + 800029f8: faa00113 li sp,-86 + 800029fc: fe208ea3 sb sp,-3(ra) + 80002a00: ffd08703 lb a4,-3(ra) + 80002a04: faa00393 li t2,-86 + 80002a08: 00600193 li gp,6 + 80002a0c: 34771863 bne a4,t2,80002d5c + +0000000080002a10 : + 80002a10: 00000097 auipc ra,0x0 + 80002a14: 5f708093 addi ra,ra,1527 # 80003007 + 80002a18: 00000113 li sp,0 + 80002a1c: fe208f23 sb sp,-2(ra) + 80002a20: ffe08703 lb a4,-2(ra) + 80002a24: 00000393 li t2,0 + 80002a28: 00700193 li gp,7 + 80002a2c: 32771863 bne a4,t2,80002d5c + +0000000080002a30 : + 80002a30: 00000097 auipc ra,0x0 + 80002a34: 5d708093 addi ra,ra,1495 # 80003007 + 80002a38: fa000113 li sp,-96 + 80002a3c: fe208fa3 sb sp,-1(ra) + 80002a40: fff08703 lb a4,-1(ra) + 80002a44: fa000393 li t2,-96 + 80002a48: 00800193 li gp,8 + 80002a4c: 30771863 bne a4,t2,80002d5c + +0000000080002a50 : + 80002a50: 00000097 auipc ra,0x0 + 80002a54: 5b708093 addi ra,ra,1463 # 80003007 + 80002a58: 00a00113 li sp,10 + 80002a5c: 00208023 sb sp,0(ra) + 80002a60: 00008703 lb a4,0(ra) + 80002a64: 00a00393 li t2,10 + 80002a68: 00900193 li gp,9 + 80002a6c: 2e771863 bne a4,t2,80002d5c + +0000000080002a70 : + 80002a70: 00000097 auipc ra,0x0 + 80002a74: 59808093 addi ra,ra,1432 # 80003008 + 80002a78: 12345137 lui sp,0x12345 + 80002a7c: 6781011b addiw sp,sp,1656 # 12345678 <_start-0x6dcba988> + 80002a80: fe008213 addi tp,ra,-32 + 80002a84: 02220023 sb sp,32(tp) # 20 <_start-0x7fffffe0> + 80002a88: 00008283 lb t0,0(ra) + 80002a8c: 07800393 li t2,120 + 80002a90: 00a00193 li gp,10 + 80002a94: 2c729463 bne t0,t2,80002d5c + +0000000080002a98 : + 80002a98: 00000097 auipc ra,0x0 + 80002a9c: 57008093 addi ra,ra,1392 # 80003008 + 80002aa0: 00003137 lui sp,0x3 + 80002aa4: 0981011b addiw sp,sp,152 # 3098 <_start-0x7fffcf68> + 80002aa8: ffa08093 addi ra,ra,-6 + 80002aac: 002083a3 sb sp,7(ra) + 80002ab0: 00000217 auipc tp,0x0 + 80002ab4: 55920213 addi tp,tp,1369 # 80003009 + 80002ab8: 00020283 lb t0,0(tp) # 0 <_start-0x80000000> + 80002abc: f9800393 li t2,-104 + 80002ac0: 00b00193 li gp,11 + 80002ac4: 28729c63 bne t0,t2,80002d5c + +0000000080002ac8 : + 80002ac8: 00c00193 li gp,12 + 80002acc: 00000213 li tp,0 + 80002ad0: fdd00093 li ra,-35 + 80002ad4: 00000117 auipc sp,0x0 + 80002ad8: 52c10113 addi sp,sp,1324 # 80003000 + 80002adc: 00110023 sb ra,0(sp) + 80002ae0: 00010703 lb a4,0(sp) + 80002ae4: fdd00393 li t2,-35 + 80002ae8: 26771a63 bne a4,t2,80002d5c + 80002aec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002af0: 00200293 li t0,2 + 80002af4: fc521ee3 bne tp,t0,80002ad0 + +0000000080002af8 : + 80002af8: 00d00193 li gp,13 + 80002afc: 00000213 li tp,0 + 80002b00: fcd00093 li ra,-51 + 80002b04: 00000117 auipc sp,0x0 + 80002b08: 4fc10113 addi sp,sp,1276 # 80003000 + 80002b0c: 00000013 nop + 80002b10: 001100a3 sb ra,1(sp) + 80002b14: 00110703 lb a4,1(sp) + 80002b18: fcd00393 li t2,-51 + 80002b1c: 24771063 bne a4,t2,80002d5c + 80002b20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b24: 00200293 li t0,2 + 80002b28: fc521ce3 bne tp,t0,80002b00 + +0000000080002b2c : + 80002b2c: 00e00193 li gp,14 + 80002b30: 00000213 li tp,0 + 80002b34: fcc00093 li ra,-52 + 80002b38: 00000117 auipc sp,0x0 + 80002b3c: 4c810113 addi sp,sp,1224 # 80003000 + 80002b40: 00000013 nop + 80002b44: 00000013 nop + 80002b48: 00110123 sb ra,2(sp) + 80002b4c: 00210703 lb a4,2(sp) + 80002b50: fcc00393 li t2,-52 + 80002b54: 20771463 bne a4,t2,80002d5c + 80002b58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b5c: 00200293 li t0,2 + 80002b60: fc521ae3 bne tp,t0,80002b34 + +0000000080002b64 : + 80002b64: 00f00193 li gp,15 + 80002b68: 00000213 li tp,0 + 80002b6c: fbc00093 li ra,-68 + 80002b70: 00000013 nop + 80002b74: 00000117 auipc sp,0x0 + 80002b78: 48c10113 addi sp,sp,1164 # 80003000 + 80002b7c: 001101a3 sb ra,3(sp) + 80002b80: 00310703 lb a4,3(sp) + 80002b84: fbc00393 li t2,-68 + 80002b88: 1c771a63 bne a4,t2,80002d5c + 80002b8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b90: 00200293 li t0,2 + 80002b94: fc521ce3 bne tp,t0,80002b6c + +0000000080002b98 : + 80002b98: 01000193 li gp,16 + 80002b9c: 00000213 li tp,0 + 80002ba0: fbb00093 li ra,-69 + 80002ba4: 00000013 nop + 80002ba8: 00000117 auipc sp,0x0 + 80002bac: 45810113 addi sp,sp,1112 # 80003000 + 80002bb0: 00000013 nop + 80002bb4: 00110223 sb ra,4(sp) + 80002bb8: 00410703 lb a4,4(sp) + 80002bbc: fbb00393 li t2,-69 + 80002bc0: 18771e63 bne a4,t2,80002d5c + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fc521ae3 bne tp,t0,80002ba0 + +0000000080002bd0 : + 80002bd0: 01100193 li gp,17 + 80002bd4: 00000213 li tp,0 + 80002bd8: fab00093 li ra,-85 + 80002bdc: 00000013 nop + 80002be0: 00000013 nop + 80002be4: 00000117 auipc sp,0x0 + 80002be8: 41c10113 addi sp,sp,1052 # 80003000 + 80002bec: 001102a3 sb ra,5(sp) + 80002bf0: 00510703 lb a4,5(sp) + 80002bf4: fab00393 li t2,-85 + 80002bf8: 16771263 bne a4,t2,80002d5c + 80002bfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c00: 00200293 li t0,2 + 80002c04: fc521ae3 bne tp,t0,80002bd8 + +0000000080002c08 : + 80002c08: 01200193 li gp,18 + 80002c0c: 00000213 li tp,0 + 80002c10: 00000117 auipc sp,0x0 + 80002c14: 3f010113 addi sp,sp,1008 # 80003000 + 80002c18: 03300093 li ra,51 + 80002c1c: 00110023 sb ra,0(sp) + 80002c20: 00010703 lb a4,0(sp) + 80002c24: 03300393 li t2,51 + 80002c28: 12771a63 bne a4,t2,80002d5c + 80002c2c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c30: 00200293 li t0,2 + 80002c34: fc521ee3 bne tp,t0,80002c10 + +0000000080002c38 : + 80002c38: 01300193 li gp,19 + 80002c3c: 00000213 li tp,0 + 80002c40: 00000117 auipc sp,0x0 + 80002c44: 3c010113 addi sp,sp,960 # 80003000 + 80002c48: 02300093 li ra,35 + 80002c4c: 00000013 nop + 80002c50: 001100a3 sb ra,1(sp) + 80002c54: 00110703 lb a4,1(sp) + 80002c58: 02300393 li t2,35 + 80002c5c: 10771063 bne a4,t2,80002d5c + 80002c60: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c64: 00200293 li t0,2 + 80002c68: fc521ce3 bne tp,t0,80002c40 + +0000000080002c6c : + 80002c6c: 01400193 li gp,20 + 80002c70: 00000213 li tp,0 + 80002c74: 00000117 auipc sp,0x0 + 80002c78: 38c10113 addi sp,sp,908 # 80003000 + 80002c7c: 02200093 li ra,34 + 80002c80: 00000013 nop + 80002c84: 00000013 nop + 80002c88: 00110123 sb ra,2(sp) + 80002c8c: 00210703 lb a4,2(sp) + 80002c90: 02200393 li t2,34 + 80002c94: 0c771463 bne a4,t2,80002d5c + 80002c98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c9c: 00200293 li t0,2 + 80002ca0: fc521ae3 bne tp,t0,80002c74 + +0000000080002ca4 : + 80002ca4: 01500193 li gp,21 + 80002ca8: 00000213 li tp,0 + 80002cac: 00000117 auipc sp,0x0 + 80002cb0: 35410113 addi sp,sp,852 # 80003000 + 80002cb4: 00000013 nop + 80002cb8: 01200093 li ra,18 + 80002cbc: 001101a3 sb ra,3(sp) + 80002cc0: 00310703 lb a4,3(sp) + 80002cc4: 01200393 li t2,18 + 80002cc8: 08771a63 bne a4,t2,80002d5c + 80002ccc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd0: 00200293 li t0,2 + 80002cd4: fc521ce3 bne tp,t0,80002cac + +0000000080002cd8 : + 80002cd8: 01600193 li gp,22 + 80002cdc: 00000213 li tp,0 + 80002ce0: 00000117 auipc sp,0x0 + 80002ce4: 32010113 addi sp,sp,800 # 80003000 + 80002ce8: 00000013 nop + 80002cec: 01100093 li ra,17 + 80002cf0: 00000013 nop + 80002cf4: 00110223 sb ra,4(sp) + 80002cf8: 00410703 lb a4,4(sp) + 80002cfc: 01100393 li t2,17 + 80002d00: 04771e63 bne a4,t2,80002d5c + 80002d04: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d08: 00200293 li t0,2 + 80002d0c: fc521ae3 bne tp,t0,80002ce0 + +0000000080002d10 : + 80002d10: 01700193 li gp,23 + 80002d14: 00000213 li tp,0 + 80002d18: 00000117 auipc sp,0x0 + 80002d1c: 2e810113 addi sp,sp,744 # 80003000 + 80002d20: 00000013 nop + 80002d24: 00000013 nop + 80002d28: 00100093 li ra,1 + 80002d2c: 001102a3 sb ra,5(sp) + 80002d30: 00510703 lb a4,5(sp) + 80002d34: 00100393 li t2,1 + 80002d38: 02771263 bne a4,t2,80002d5c + 80002d3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d40: 00200293 li t0,2 + 80002d44: fc521ae3 bne tp,t0,80002d18 + 80002d48: 0ef00513 li a0,239 + 80002d4c: 00000597 auipc a1,0x0 + 80002d50: 2b458593 addi a1,a1,692 # 80003000 + 80002d54: 00a581a3 sb a0,3(a1) + 80002d58: 00301a63 bne zero,gp,80002d6c + +0000000080002d5c : + 80002d5c: 00119513 slli a0,gp,0x1 + 80002d60: 00050063 beqz a0,80002d60 + 80002d64: 00156513 ori a0,a0,1 + 80002d68: 00000073 ecall + +0000000080002d6c : + 80002d6c: 00100513 li a0,1 + 80002d70: 00000073 ecall + 80002d74: c0001073 unimp + +Disassembly of section .data: + +0000000080003000 : + 80003000: jal t6,800016fe + +0000000080003001 : + 80003001: jal t6,800016ff + +0000000080003002 : + 80003002: jal t6,80001700 + +0000000080003003 : + 80003003: jal t6,80001701 + +0000000080003004 : + 80003004: jal t6,80001702 + +0000000080003005 : + 80003005: jal t6,80001703 + +0000000080003006 : + 80003006: jal t6,80001704 + +0000000080003007 : + 80003007: ef Address 0x0000000080003007 is out of bounds. + + 8000300b: + +0000000080003008 : + 80003008: ef Address 0x0000000080003008 is out of bounds. + + 8000300c: + +0000000080003009 : + 80003009: ef Address 0x0000000080003009 is out of bounds. + + 8000300d: diff --git a/tests/rv64ui-v-sd b/tests/rv64ui-v-sd new file mode 100644 index 0000000000000000000000000000000000000000..96458a40aa5492e7e942382e4e3f99f3ce4e847e GIT binary patch literal 24168 zcmeHPeQ*?Ip8oap^z`J5Owxf#A*BPYfM0Qv8AyP@hE*0%_gv6LJU=SL&Ja?P%$ONS zth(Br*iPcQD%9O2?E)hi^hmwB^g%74%k*cVwLPz zM>QnkSVV;=Ddq;YWy@@R_E|Xl0_V0TR!XeS#}4L}%q~Z{pk3N>43?Q-fE}>;D4AVu z37S{r>#<5(k6$^3!+^tp!+^tp!+^tp!+^tp!+^tp!+^tp!@$>)fhZlPXdro8G*EY& z0R|NOz&5ZeE|l06{J=M`EBKLbU{~;?-N3GRP-0i`W8A>5cu`_k@=#(|@=;<}3Q%HK z3Q=NLicn%#7NEqg6r;r6%ltjA@6#I_dxLWe) zt5Y7aT9WnZlq}XrUcDye71v04`kGXpxK_&7*QWBtby9)8E>$4bN`-oDs!&`n73u3! zMdAi&fxaQNK>UVOtbZd_EUuEII0bz15}`~DmylXpNosJTOAT*zsWlBQwf0Gu8tind z;TPO$&FgNp_OM$Ge&A8VpLo=oKX}yIFFa~c$b)X4TC+3{`gzbVfPMk=3!q;B{UYcW zLB9z4MbIyXelhfmp1w!)ZkX%*fJktVP%lvCK2{@;hpdM2X?!gRW60Pn;*iM=0ZJ`}e^AsK$2mR;K3 z^JI*V7hfEG?TQW=MRJoE7MPyE^jV#;FGcAK?~>8$5z-?=WbBh&=?j-=xa0gJ^Ur*% z$A+ec|2Q%=pACI8^7xT#<|7XJ%{+#e$Wx)z!8$WWtYu&&lVf=*(n1mk$EUUDWE$=o znYu0|(>m$=jBIqY9yz^Z=AykSyOfTu>5x|vv<^vR@kH@24mKa!Wm(YQl}(O@yDpeM zL!LM56xd`ON2yL={OX&>r|e|0cSw%X5X*h2(>{ z_ESi@K*KM3rnIEw3Q2ut4Ejmfg)WN$b(40C7Vfj~eV#utJUaT?l*xTkb{mq<=bxCK zR^;yA7(bCjakXsbnZA%AE#E`Es8ipUKi8|l`78328XPj)WB8}?B;&x+9X!kGS-Y6> z@5-Oe${%FBoBd6Zdcv%)T^#-WB>K^m;^{=&KPf2Q9>^qdj{NtIlhW;BxrkcgGn6rD zotz;x3I4ZjLfypl@RCcD`eyXoLV@*FaOLwE9uJR2{#aRv^(Cudt7{R3E*wN$k`>oK z$p2)=r4M@0_XmmPfmmE-f5VulzKnbkV@Q^S%!o)@$3&U3eE@AJ@9=*Md3Zd7M(=7$ z%a=&cpiTCmfAz=C zF*JyAgZ3PrC^F7Z2x|W>ij!2@Tg}>V@VMgNOzG|s^iS|wCi_I_X1s1v`+>o>dSryg ze(v>UChsKF6I4G#%w&7h#xHo-o|hAg{~ z`;~Z)*JtMAxdhwqnlTjP|9;Hz%E!7gA-lDF=uF67Z87+kN68q$`Ag^B#y;fZ`4qaB zOx=>CM}&-sdQlC&E@HioV8}^x&eNV7Utq`q(vssIqk9v^f{(Pl6X=hlq`f%4SX|{U zfzRLZIZ#H9vL5dAh-(CozNS+W*9wxpw$m-H6Wsc`PEo8CM7_4tC9W4-`ua`*@p+@C zZ}_EHo$?v&)uip0Js06S?hBH*0&R5=ZJa-0^<&xR?p=gF(AD*pHMZowYxd{2<-eJ? zKbyS1b`s-)@q3c<+Yf$^bACS*Z0BUitUz&-{27MFrgiD@6 zAKPJ|GpD=%O!_g5#fd^U=6X;3_5xou@=HsP3W`*Sd(UAuAN)*PfO&GV(5tWNL^~9^ znGCB(-H+3-8}}9Y#7q%a*JUBqg_EQ)Oe(Jp&y3gL7Qaq#6YVG)xvF}aH)dvZ~H(*>?L`oCp=d-6sQ7(x_ z_e7yudwELj{|r9P;~pQOc#m8jUqR*Ct0QH~gSe;4qk^^W?wi8ci}wfPKF>PHtYvHP z6z}M-l=6p!-jV5PqkHp<>26tw_iXo#t)Q@VE|+C8Lh zKjs+B_kVB5-VJGwETrWL%q?E>@5MN+{j|f6m1v5nU+QJo{g*n7XD{Ra*#{oHg7T@K z(p`Qbz4;Q_P!^1RC&9~hCX?DSkapWyy?n3R$a*nO~1J;LlIVejnpTzhB8(9>iXCs2xgh7iQu-~KRzKREcwzTSPP{e` z%+DKGo4SRxCGGcdyARFAYun>|9tlh#|EbwHZ96ufJ6L@8@Vp=RN%97gk8Jcuf=DQwSOIt_wKLcbEZFi6`wt<{nv84cUC`nBl_nj&nYE; zK)bwfTq$93Zw*`R-`S)*O?WH~U{A@q^9 zuPtoZKEA$sV?S({EVpbO4k{&Iz;@+QZadFNo}PZ=odEeuF_vB5T&GvLD062&d??E; zo9UoojKN1}Dff|Q2>qnJ)K*~#$IUg%nbYs(A4s15*k1x0LT8m4EW!Okpv)QI`k9Zl z>)UTpT%}ms9KhUh|D++Dw)Bp_#q>V1^n^PUJWsM`G_ksqGAB@{pZN&XS(OO z?xCUs$>YZ?-Ho?0T~oit^etpgpk6<54Ei_D=r3aWqn3XE=S=@Sro;WOz;g!kEo9QD z(@(som9__FbWPtRur=D5{(mhzknDeJR(GRn`VN-3khd$7M!lYX3;IiD^iAJBOaI)* zO#cwmnYAI@fZUBpU6Kiu(1B!7o#9)>wH{KnMeSuXdM4k& zEWOV1j86zcZ4ugaNPFmW!y){ zH^$?UwnTHZHL$axd3U67ZJ?pCu`RG+ePCtfwr>Y&YXg;4HwTt4x8T~q>QLa8>?$nP zH@BEMt!amIs0z!J43HR%_T3j|A4Q2egyfy4p@_v@w!D4-UPy z`j&=Rthu%6Y9|$D8qBU0;njARE^FSsJJQs!JJ8%3PqgjP7z@j;ozItM6XtH_iStYK zYObx9*m?VgNK6ad6bPIATsx0Ft&xscL`y^(1Cb6b63b3xzP$Ie#`nZx(KelC9NY` zUlB~^iim_ih}qu*%&HXGR|*4o`J1ze@HbM51k3D^WypEOVT0k7Mz39vO6U%_!ilr&HIfi>5) z{fg9h^IZ82rk+T6RaQR>4@cbQ)_vhGokmKH4=K6h%<2!QjMvfoN!Jja3 ziE8TR+If=8)2(xHyn@3f(nC4;_c`95gLiST>+P#N``vd@;w%bMOGi13CC| zj<3wYZ{v6{2d@JDW#f(lb9r8O4f#6YF7(?+ms#?7MQm=?yfKS&nC|8BKjZQ%dBry1 zKG?|}?>m5(x(IzhG?=$3Nuwer{(s@Ddm1$sIiYI;$ee<%#F@D3{;M#`K%kA98L~oP5`CJLh;_c7G#H`z!6+Y-Hf!@%a}MUS;CxsMmA-?j-mF%&RLxVBbrsm6Af+P z-L|zW($GkcN1B>j>*LK$2xL!Ngz7CJ=C>ur+_Q!?TQky{XnV?x4;3-wl-L#Np!!H_ zBTPnHc17a}yF2V`*s~j2Q4@>>XYDqLajxy0^mAmY-1bC=uZf#Cb z1=p=$5LL8A!Dj>0sH~`=3U)yikE0bT;^xtOZmnoYfa%Bgpt-0*i?*~N;Ow6Me>=Yp zYHSE$1ln8DJmC}4%y+JNt=pF3<#LovpHGi$uqDl^fO(|5tzza_H*;p4RG^sSpN~i4 zkK3oL2g(_(T>oLNU&STt=jK!2uz*60^X$!@ADK_K-HClp{B=D3EoL>Q?YSGLWd{5U zoH3g-`Sa)SneUE&g@OBW_4_RUwtlWZJAONW?^?cN_O)Hw`i!6K&Cc7#cH)F#K^x%Z zGd%8G|F(X1nM1K@VL#VDhg%uj3b3!mZpV)$o94!Tam;YXF;;XuWL?zd7`Oe}qF7Eb Rul~`8EeW>%Hhas}|6d7gnZy79 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sd.dump b/tests/rv64ui-v-sd.dump new file mode 100644 index 0000000..d5796d8 --- /dev/null +++ b/tests/rv64ui-v-sd.dump @@ -0,0 +1,1273 @@ + +rv64ui-v-sd: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000b117 auipc sp,0xb + 80000098: e4c10113 addi sp,sp,-436 # 8000aee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00004617 auipc a2,0x4 + 80002394: c7060613 addi a2,a2,-912 # 80006000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00008597 auipc a1,0x8 + 800023b0: c5c58593 addi a1,a1,-932 # 8000a008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00008897 auipc a7,0x8 + 800023c4: c408b883 ld a7,-960(a7) # 8000a000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00003797 auipc a5,0x3 + 800023f8: c0c78793 addi a5,a5,-1012 # 80005000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00008797 auipc a5,0x8 + 800024cc: b207bc23 sd zero,-1224(a5) # 8000a000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: af450513 addi a0,a0,-1292 # 80002fc8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: b2850513 addi a0,a0,-1240 # 80003010 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b5c50513 addi a0,a0,-1188 # 80003058 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b6050513 addi a0,a0,-1184 # 80003070 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: ab868693 addi a3,a3,-1352 # 800030b0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: b0850513 addi a0,a0,-1272 # 80003150 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00003497 auipc s1,0x3 + 80002668: 99c48493 addi s1,s1,-1636 # 80005000 + 8000266c: 00004b97 auipc s7,0x4 + 80002670: 994b8b93 addi s7,s7,-1644 # 80006000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00008d97 auipc s11,0x8 + 80002680: 984d8d93 addi s11,s11,-1660 # 8000a000 + 80002684: 00008a17 auipc s4,0x8 + 80002688: 984a0a13 addi s4,s4,-1660 # 8000a008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a5050513 addi a0,a0,-1456 # 80003178 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9e050513 addi a0,a0,-1568 # 80003118 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 99450513 addi a0,a0,-1644 # 800030e0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00006797 auipc a5,0x6 + 80002774: 89078793 addi a5,a5,-1904 # 80008000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00007817 auipc a6,0x7 + 80002788: 87c80813 addi a6,a6,-1924 # 80009000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00005517 auipc a0,0x5 + 80002798: 86c50513 addi a0,a0,-1940 # 80007000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00004897 auipc a7,0x4 + 800027b0: 85488893 addi a7,a7,-1964 # 80006000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00003717 auipc a4,0x3 + 8000285c: b9870713 addi a4,a4,-1128 # 800053f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00007617 auipc a2,0x7 + 80002874: 78d63c23 sd a3,1944(a2) # 8000a008 + 80002878: 00003317 auipc t1,0x3 + 8000287c: f6830313 addi t1,t1,-152 # 800057e0 + 80002880: 00007697 auipc a3,0x7 + 80002884: 78f6b023 sd a5,1920(a3) # 8000a000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00a00793 li a5,10 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00003797 auipc a5,0x3 + 800028d4: f007b423 sd zero,-248(a5) # 800057d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 036b47b7 lui a5,0x36b4 + 80002908: 00080637 lui a2,0x80 + 8000290c: c8578793 addi a5,a5,-891 # 36b3c85 <_start-0x7c94c37b> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 85850513 addi a0,a0,-1960 # 800031a8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00001097 auipc ra,0x1 + 8000296c: 69808093 addi ra,ra,1688 # 80004000 + 80002970: 00550137 lui sp,0x550 + 80002974: 0551011b addiw sp,sp,85 # 550055 <_start-0x7faaffab> + 80002978: 01011113 slli sp,sp,0x10 + 8000297c: 05510113 addi sp,sp,85 + 80002980: 01111113 slli sp,sp,0x11 + 80002984: 0aa10113 addi sp,sp,170 + 80002988: 0020b023 sd sp,0(ra) + 8000298c: 0000b703 ld a4,0(ra) + 80002990: 005503b7 lui t2,0x550 + 80002994: 0553839b addiw t2,t2,85 # 550055 <_start-0x7faaffab> + 80002998: 01039393 slli t2,t2,0x10 + 8000299c: 05538393 addi t2,t2,85 + 800029a0: 01139393 slli t2,t2,0x11 + 800029a4: 0aa38393 addi t2,t2,170 + 800029a8: 00200193 li gp,2 + 800029ac: 60771063 bne a4,t2,80002fac + +00000000800029b0 : + 800029b0: 00001097 auipc ra,0x1 + 800029b4: 65008093 addi ra,ra,1616 # 80004000 + 800029b8: ffd50137 lui sp,0xffd50 + 800029bc: 0551011b addiw sp,sp,85 # ffffffffffd50055 + 800029c0: 01011113 slli sp,sp,0x10 + 800029c4: 05510113 addi sp,sp,85 + 800029c8: 00d11113 slli sp,sp,0xd + 800029cc: 00b10113 addi sp,sp,11 + 800029d0: 00c11113 slli sp,sp,0xc + 800029d4: a0010113 addi sp,sp,-1536 + 800029d8: 0020b423 sd sp,8(ra) + 800029dc: 0080b703 ld a4,8(ra) + 800029e0: ffd503b7 lui t2,0xffd50 + 800029e4: 0553839b addiw t2,t2,85 # ffffffffffd50055 + 800029e8: 01039393 slli t2,t2,0x10 + 800029ec: 05538393 addi t2,t2,85 + 800029f0: 00d39393 slli t2,t2,0xd + 800029f4: 00b38393 addi t2,t2,11 + 800029f8: 00c39393 slli t2,t2,0xc + 800029fc: a0038393 addi t2,t2,-1536 + 80002a00: 00300193 li gp,3 + 80002a04: 5a771463 bne a4,t2,80002fac + +0000000080002a08 : + 80002a08: 00001097 auipc ra,0x1 + 80002a0c: 5f808093 addi ra,ra,1528 # 80004000 + 80002a10: 00550137 lui sp,0x550 + 80002a14: 0551011b addiw sp,sp,85 # 550055 <_start-0x7faaffab> + 80002a18: 00d11113 slli sp,sp,0xd + 80002a1c: 00b10113 addi sp,sp,11 + 80002a20: 00c11113 slli sp,sp,0xc + 80002a24: a0110113 addi sp,sp,-1535 + 80002a28: 00c11113 slli sp,sp,0xc + 80002a2c: aa010113 addi sp,sp,-1376 + 80002a30: 0020b823 sd sp,16(ra) + 80002a34: 0100b703 ld a4,16(ra) + 80002a38: 005503b7 lui t2,0x550 + 80002a3c: 0553839b addiw t2,t2,85 # 550055 <_start-0x7faaffab> + 80002a40: 00d39393 slli t2,t2,0xd + 80002a44: 00b38393 addi t2,t2,11 + 80002a48: 00c39393 slli t2,t2,0xc + 80002a4c: a0138393 addi t2,t2,-1535 + 80002a50: 00c39393 slli t2,t2,0xc + 80002a54: aa038393 addi t2,t2,-1376 + 80002a58: 00400193 li gp,4 + 80002a5c: 54771863 bne a4,t2,80002fac + +0000000080002a60 : + 80002a60: 00001097 auipc ra,0x1 + 80002a64: 5a008093 addi ra,ra,1440 # 80004000 + 80002a68: fffd0137 lui sp,0xfffd0 + 80002a6c: 0551011b addiw sp,sp,85 # fffffffffffd0055 + 80002a70: 01011113 slli sp,sp,0x10 + 80002a74: 05510113 addi sp,sp,85 + 80002a78: 01011113 slli sp,sp,0x10 + 80002a7c: 05510113 addi sp,sp,85 + 80002a80: 00d11113 slli sp,sp,0xd + 80002a84: 00a10113 addi sp,sp,10 + 80002a88: 0020bc23 sd sp,24(ra) + 80002a8c: 0180b703 ld a4,24(ra) + 80002a90: fffd03b7 lui t2,0xfffd0 + 80002a94: 0553839b addiw t2,t2,85 # fffffffffffd0055 + 80002a98: 01039393 slli t2,t2,0x10 + 80002a9c: 05538393 addi t2,t2,85 + 80002aa0: 01039393 slli t2,t2,0x10 + 80002aa4: 05538393 addi t2,t2,85 + 80002aa8: 00d39393 slli t2,t2,0xd + 80002aac: 00a38393 addi t2,t2,10 + 80002ab0: 00500193 li gp,5 + 80002ab4: 4e771c63 bne a4,t2,80002fac + +0000000080002ab8 : + 80002ab8: 00001097 auipc ra,0x1 + 80002abc: 58008093 addi ra,ra,1408 # 80004038 + 80002ac0: 00550137 lui sp,0x550 + 80002ac4: 0551011b addiw sp,sp,85 # 550055 <_start-0x7faaffab> + 80002ac8: 01011113 slli sp,sp,0x10 + 80002acc: 05510113 addi sp,sp,85 + 80002ad0: 01111113 slli sp,sp,0x11 + 80002ad4: 0aa10113 addi sp,sp,170 + 80002ad8: fe20b423 sd sp,-24(ra) + 80002adc: fe80b703 ld a4,-24(ra) + 80002ae0: 005503b7 lui t2,0x550 + 80002ae4: 0553839b addiw t2,t2,85 # 550055 <_start-0x7faaffab> + 80002ae8: 01039393 slli t2,t2,0x10 + 80002aec: 05538393 addi t2,t2,85 + 80002af0: 01139393 slli t2,t2,0x11 + 80002af4: 0aa38393 addi t2,t2,170 + 80002af8: 00600193 li gp,6 + 80002afc: 4a771863 bne a4,t2,80002fac + +0000000080002b00 : + 80002b00: 00001097 auipc ra,0x1 + 80002b04: 53808093 addi ra,ra,1336 # 80004038 + 80002b08: ffd50137 lui sp,0xffd50 + 80002b0c: 0551011b addiw sp,sp,85 # ffffffffffd50055 + 80002b10: 01011113 slli sp,sp,0x10 + 80002b14: 05510113 addi sp,sp,85 + 80002b18: 00d11113 slli sp,sp,0xd + 80002b1c: 00b10113 addi sp,sp,11 + 80002b20: 00c11113 slli sp,sp,0xc + 80002b24: a0010113 addi sp,sp,-1536 + 80002b28: fe20b823 sd sp,-16(ra) + 80002b2c: ff00b703 ld a4,-16(ra) + 80002b30: ffd503b7 lui t2,0xffd50 + 80002b34: 0553839b addiw t2,t2,85 # ffffffffffd50055 + 80002b38: 01039393 slli t2,t2,0x10 + 80002b3c: 05538393 addi t2,t2,85 + 80002b40: 00d39393 slli t2,t2,0xd + 80002b44: 00b38393 addi t2,t2,11 + 80002b48: 00c39393 slli t2,t2,0xc + 80002b4c: a0038393 addi t2,t2,-1536 + 80002b50: 00700193 li gp,7 + 80002b54: 44771c63 bne a4,t2,80002fac + +0000000080002b58 : + 80002b58: 00001097 auipc ra,0x1 + 80002b5c: 4e008093 addi ra,ra,1248 # 80004038 + 80002b60: 00550137 lui sp,0x550 + 80002b64: 0551011b addiw sp,sp,85 # 550055 <_start-0x7faaffab> + 80002b68: 00d11113 slli sp,sp,0xd + 80002b6c: 00b10113 addi sp,sp,11 + 80002b70: 00c11113 slli sp,sp,0xc + 80002b74: a0110113 addi sp,sp,-1535 + 80002b78: 00c11113 slli sp,sp,0xc + 80002b7c: aa010113 addi sp,sp,-1376 + 80002b80: fe20bc23 sd sp,-8(ra) + 80002b84: ff80b703 ld a4,-8(ra) + 80002b88: 005503b7 lui t2,0x550 + 80002b8c: 0553839b addiw t2,t2,85 # 550055 <_start-0x7faaffab> + 80002b90: 00d39393 slli t2,t2,0xd + 80002b94: 00b38393 addi t2,t2,11 + 80002b98: 00c39393 slli t2,t2,0xc + 80002b9c: a0138393 addi t2,t2,-1535 + 80002ba0: 00c39393 slli t2,t2,0xc + 80002ba4: aa038393 addi t2,t2,-1376 + 80002ba8: 00800193 li gp,8 + 80002bac: 40771063 bne a4,t2,80002fac + +0000000080002bb0 : + 80002bb0: 00001097 auipc ra,0x1 + 80002bb4: 48808093 addi ra,ra,1160 # 80004038 + 80002bb8: fffd0137 lui sp,0xfffd0 + 80002bbc: 0551011b addiw sp,sp,85 # fffffffffffd0055 + 80002bc0: 01011113 slli sp,sp,0x10 + 80002bc4: 05510113 addi sp,sp,85 + 80002bc8: 01011113 slli sp,sp,0x10 + 80002bcc: 05510113 addi sp,sp,85 + 80002bd0: 00d11113 slli sp,sp,0xd + 80002bd4: 00a10113 addi sp,sp,10 + 80002bd8: 0020b023 sd sp,0(ra) + 80002bdc: 0000b703 ld a4,0(ra) + 80002be0: fffd03b7 lui t2,0xfffd0 + 80002be4: 0553839b addiw t2,t2,85 # fffffffffffd0055 + 80002be8: 01039393 slli t2,t2,0x10 + 80002bec: 05538393 addi t2,t2,85 + 80002bf0: 01039393 slli t2,t2,0x10 + 80002bf4: 05538393 addi t2,t2,85 + 80002bf8: 00d39393 slli t2,t2,0xd + 80002bfc: 00a38393 addi t2,t2,10 + 80002c00: 00900193 li gp,9 + 80002c04: 3a771463 bne a4,t2,80002fac + +0000000080002c08 : + 80002c08: 00001097 auipc ra,0x1 + 80002c0c: 43808093 addi ra,ra,1080 # 80004040 + 80002c10: 00247137 lui sp,0x247 + 80002c14: 8ad1011b addiw sp,sp,-1875 # 2468ad <_start-0x7fdb9753> + 80002c18: 00e11113 slli sp,sp,0xe + 80002c1c: c0910113 addi sp,sp,-1015 + 80002c20: 00d11113 slli sp,sp,0xd + 80002c24: 34510113 addi sp,sp,837 + 80002c28: 00c11113 slli sp,sp,0xc + 80002c2c: 67810113 addi sp,sp,1656 + 80002c30: fe008213 addi tp,ra,-32 + 80002c34: 02223023 sd sp,32(tp) # 20 <_start-0x7fffffe0> + 80002c38: 0000b283 ld t0,0(ra) + 80002c3c: 002473b7 lui t2,0x247 + 80002c40: 8ad3839b addiw t2,t2,-1875 # 2468ad <_start-0x7fdb9753> + 80002c44: 00e39393 slli t2,t2,0xe + 80002c48: c0938393 addi t2,t2,-1015 + 80002c4c: 00d39393 slli t2,t2,0xd + 80002c50: 34538393 addi t2,t2,837 + 80002c54: 00c39393 slli t2,t2,0xc + 80002c58: 67838393 addi t2,t2,1656 + 80002c5c: 00a00193 li gp,10 + 80002c60: 34729663 bne t0,t2,80002fac + +0000000080002c64 : + 80002c64: 00001097 auipc ra,0x1 + 80002c68: 3dc08093 addi ra,ra,988 # 80004040 + 80002c6c: 00b04137 lui sp,0xb04 + 80002c70: 2611011b addiw sp,sp,609 # b04261 <_start-0x7f4fbd9f> + 80002c74: 00c11113 slli sp,sp,0xc + 80002c78: 30b10113 addi sp,sp,779 + 80002c7c: 00f11113 slli sp,sp,0xf + 80002c80: 21310113 addi sp,sp,531 + 80002c84: 00c11113 slli sp,sp,0xc + 80002c88: 09810113 addi sp,sp,152 + 80002c8c: ffd08093 addi ra,ra,-3 + 80002c90: 0020b5a3 sd sp,11(ra) + 80002c94: 00001217 auipc tp,0x1 + 80002c98: 3b420213 addi tp,tp,948 # 80004048 + 80002c9c: 00023283 ld t0,0(tp) # 0 <_start-0x80000000> + 80002ca0: 00b043b7 lui t2,0xb04 + 80002ca4: 2613839b addiw t2,t2,609 # b04261 <_start-0x7f4fbd9f> + 80002ca8: 00c39393 slli t2,t2,0xc + 80002cac: 30b38393 addi t2,t2,779 + 80002cb0: 00f39393 slli t2,t2,0xf + 80002cb4: 21338393 addi t2,t2,531 + 80002cb8: 00c39393 slli t2,t2,0xc + 80002cbc: 09838393 addi t2,t2,152 + 80002cc0: 00b00193 li gp,11 + 80002cc4: 2e729463 bne t0,t2,80002fac + +0000000080002cc8 : + 80002cc8: 00c00193 li gp,12 + 80002ccc: 00000213 li tp,0 + 80002cd0: 0abbd0b7 lui ra,0xabbd + 80002cd4: cdd0809b addiw ra,ra,-803 # abbccdd <_start-0x75443323> + 80002cd8: 00001117 auipc sp,0x1 + 80002cdc: 32810113 addi sp,sp,808 # 80004000 + 80002ce0: 00113023 sd ra,0(sp) + 80002ce4: 00013703 ld a4,0(sp) + 80002ce8: 0abbd3b7 lui t2,0xabbd + 80002cec: cdd3839b addiw t2,t2,-803 # abbccdd <_start-0x75443323> + 80002cf0: 2a771e63 bne a4,t2,80002fac + 80002cf4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cf8: 00200293 li t0,2 + 80002cfc: fc521ae3 bne tp,t0,80002cd0 + +0000000080002d00 : + 80002d00: 00d00193 li gp,13 + 80002d04: 00000213 li tp,0 + 80002d08: 0aabc0b7 lui ra,0xaabc + 80002d0c: ccd0809b addiw ra,ra,-819 # aabbccd <_start-0x75544333> + 80002d10: 00001117 auipc sp,0x1 + 80002d14: 2f010113 addi sp,sp,752 # 80004000 + 80002d18: 00000013 nop + 80002d1c: 00113423 sd ra,8(sp) + 80002d20: 00813703 ld a4,8(sp) + 80002d24: 0aabc3b7 lui t2,0xaabc + 80002d28: ccd3839b addiw t2,t2,-819 # aabbccd <_start-0x75544333> + 80002d2c: 28771063 bne a4,t2,80002fac + 80002d30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d34: 00200293 li t0,2 + 80002d38: fc5218e3 bne tp,t0,80002d08 + +0000000080002d3c : + 80002d3c: 00e00193 li gp,14 + 80002d40: 00000213 li tp,0 + 80002d44: 0daac0b7 lui ra,0xdaac + 80002d48: bcc0809b addiw ra,ra,-1076 # daabbcc <_start-0x72554434> + 80002d4c: 00001117 auipc sp,0x1 + 80002d50: 2b410113 addi sp,sp,692 # 80004000 + 80002d54: 00000013 nop + 80002d58: 00000013 nop + 80002d5c: 00113823 sd ra,16(sp) + 80002d60: 01013703 ld a4,16(sp) + 80002d64: 0daac3b7 lui t2,0xdaac + 80002d68: bcc3839b addiw t2,t2,-1076 # daabbcc <_start-0x72554434> + 80002d6c: 24771063 bne a4,t2,80002fac + 80002d70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d74: 00200293 li t0,2 + 80002d78: fc5216e3 bne tp,t0,80002d44 + +0000000080002d7c : + 80002d7c: 00f00193 li gp,15 + 80002d80: 00000213 li tp,0 + 80002d84: 0ddab0b7 lui ra,0xddab + 80002d88: bbc0809b addiw ra,ra,-1092 # ddaabbc <_start-0x72255444> + 80002d8c: 00000013 nop + 80002d90: 00001117 auipc sp,0x1 + 80002d94: 27010113 addi sp,sp,624 # 80004000 + 80002d98: 00113c23 sd ra,24(sp) + 80002d9c: 01813703 ld a4,24(sp) + 80002da0: 0ddab3b7 lui t2,0xddab + 80002da4: bbc3839b addiw t2,t2,-1092 # ddaabbc <_start-0x72255444> + 80002da8: 20771263 bne a4,t2,80002fac + 80002dac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002db0: 00200293 li t0,2 + 80002db4: fc5218e3 bne tp,t0,80002d84 + +0000000080002db8 : + 80002db8: 01000193 li gp,16 + 80002dbc: 00000213 li tp,0 + 80002dc0: 0cddb0b7 lui ra,0xcddb + 80002dc4: abb0809b addiw ra,ra,-1349 # cddaabb <_start-0x73225545> + 80002dc8: 00000013 nop + 80002dcc: 00001117 auipc sp,0x1 + 80002dd0: 23410113 addi sp,sp,564 # 80004000 + 80002dd4: 00000013 nop + 80002dd8: 02113023 sd ra,32(sp) + 80002ddc: 02013703 ld a4,32(sp) + 80002de0: 0cddb3b7 lui t2,0xcddb + 80002de4: abb3839b addiw t2,t2,-1349 # cddaabb <_start-0x73225545> + 80002de8: 1c771263 bne a4,t2,80002fac + 80002dec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002df0: 00200293 li t0,2 + 80002df4: fc5216e3 bne tp,t0,80002dc0 + +0000000080002df8 : + 80002df8: 01100193 li gp,17 + 80002dfc: 00000213 li tp,0 + 80002e00: 0ccde0b7 lui ra,0xccde + 80002e04: aab0809b addiw ra,ra,-1365 # ccddaab <_start-0x73322555> + 80002e08: 00000013 nop + 80002e0c: 00000013 nop + 80002e10: 00001117 auipc sp,0x1 + 80002e14: 1f010113 addi sp,sp,496 # 80004000 + 80002e18: 02113423 sd ra,40(sp) + 80002e1c: 02813703 ld a4,40(sp) + 80002e20: 0ccde3b7 lui t2,0xccde + 80002e24: aab3839b addiw t2,t2,-1365 # ccddaab <_start-0x73322555> + 80002e28: 18771263 bne a4,t2,80002fac + 80002e2c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e30: 00200293 li t0,2 + 80002e34: fc5216e3 bne tp,t0,80002e00 + +0000000080002e38 : + 80002e38: 01200193 li gp,18 + 80002e3c: 00000213 li tp,0 + 80002e40: 00001117 auipc sp,0x1 + 80002e44: 1c010113 addi sp,sp,448 # 80004000 + 80002e48: 001120b7 lui ra,0x112 + 80002e4c: 2330809b addiw ra,ra,563 # 112233 <_start-0x7feeddcd> + 80002e50: 00113023 sd ra,0(sp) + 80002e54: 00013703 ld a4,0(sp) + 80002e58: 001123b7 lui t2,0x112 + 80002e5c: 2333839b addiw t2,t2,563 # 112233 <_start-0x7feeddcd> + 80002e60: 14771663 bne a4,t2,80002fac + 80002e64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e68: 00200293 li t0,2 + 80002e6c: fc521ae3 bne tp,t0,80002e40 + +0000000080002e70 : + 80002e70: 01300193 li gp,19 + 80002e74: 00000213 li tp,0 + 80002e78: 00001117 auipc sp,0x1 + 80002e7c: 18810113 addi sp,sp,392 # 80004000 + 80002e80: 300110b7 lui ra,0x30011 + 80002e84: 2230809b addiw ra,ra,547 # 30011223 <_start-0x4ffeeddd> + 80002e88: 00000013 nop + 80002e8c: 00113423 sd ra,8(sp) + 80002e90: 00813703 ld a4,8(sp) + 80002e94: 300113b7 lui t2,0x30011 + 80002e98: 2233839b addiw t2,t2,547 # 30011223 <_start-0x4ffeeddd> + 80002e9c: 10771863 bne a4,t2,80002fac + 80002ea0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ea4: 00200293 li t0,2 + 80002ea8: fc5218e3 bne tp,t0,80002e78 + +0000000080002eac : + 80002eac: 01400193 li gp,20 + 80002eb0: 00000213 li tp,0 + 80002eb4: 00001117 auipc sp,0x1 + 80002eb8: 14c10113 addi sp,sp,332 # 80004000 + 80002ebc: 330010b7 lui ra,0x33001 + 80002ec0: 1220809b addiw ra,ra,290 # 33001122 <_start-0x4cffeede> + 80002ec4: 00000013 nop + 80002ec8: 00000013 nop + 80002ecc: 00113823 sd ra,16(sp) + 80002ed0: 01013703 ld a4,16(sp) + 80002ed4: 330013b7 lui t2,0x33001 + 80002ed8: 1223839b addiw t2,t2,290 # 33001122 <_start-0x4cffeede> + 80002edc: 0c771863 bne a4,t2,80002fac + 80002ee0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ee4: 00200293 li t0,2 + 80002ee8: fc5216e3 bne tp,t0,80002eb4 + +0000000080002eec : + 80002eec: 01500193 li gp,21 + 80002ef0: 00000213 li tp,0 + 80002ef4: 00001117 auipc sp,0x1 + 80002ef8: 10c10113 addi sp,sp,268 # 80004000 + 80002efc: 00000013 nop + 80002f00: 233000b7 lui ra,0x23300 + 80002f04: 1120809b addiw ra,ra,274 # 23300112 <_start-0x5ccffeee> + 80002f08: 00113c23 sd ra,24(sp) + 80002f0c: 01813703 ld a4,24(sp) + 80002f10: 233003b7 lui t2,0x23300 + 80002f14: 1123839b addiw t2,t2,274 # 23300112 <_start-0x5ccffeee> + 80002f18: 08771a63 bne a4,t2,80002fac + 80002f1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f20: 00200293 li t0,2 + 80002f24: fc5218e3 bne tp,t0,80002ef4 + +0000000080002f28 : + 80002f28: 01600193 li gp,22 + 80002f2c: 00000213 li tp,0 + 80002f30: 00001117 auipc sp,0x1 + 80002f34: 0d010113 addi sp,sp,208 # 80004000 + 80002f38: 00000013 nop + 80002f3c: 223300b7 lui ra,0x22330 + 80002f40: 0110809b addiw ra,ra,17 # 22330011 <_start-0x5dccffef> + 80002f44: 00000013 nop + 80002f48: 02113023 sd ra,32(sp) + 80002f4c: 02013703 ld a4,32(sp) + 80002f50: 223303b7 lui t2,0x22330 + 80002f54: 0113839b addiw t2,t2,17 # 22330011 <_start-0x5dccffef> + 80002f58: 04771a63 bne a4,t2,80002fac + 80002f5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f60: 00200293 li t0,2 + 80002f64: fc5216e3 bne tp,t0,80002f30 + +0000000080002f68 : + 80002f68: 01700193 li gp,23 + 80002f6c: 00000213 li tp,0 + 80002f70: 00001117 auipc sp,0x1 + 80002f74: 09010113 addi sp,sp,144 # 80004000 + 80002f78: 00000013 nop + 80002f7c: 00000013 nop + 80002f80: 122330b7 lui ra,0x12233 + 80002f84: 0010809b addiw ra,ra,1 # 12233001 <_start-0x6ddccfff> + 80002f88: 02113423 sd ra,40(sp) + 80002f8c: 02813703 ld a4,40(sp) + 80002f90: 122333b7 lui t2,0x12233 + 80002f94: 0013839b addiw t2,t2,1 # 12233001 <_start-0x6ddccfff> + 80002f98: 00771a63 bne a4,t2,80002fac + 80002f9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002fa0: 00200293 li t0,2 + 80002fa4: fc5216e3 bne tp,t0,80002f70 + 80002fa8: 00301a63 bne zero,gp,80002fbc + +0000000080002fac : + 80002fac: 00119513 slli a0,gp,0x1 + 80002fb0: 00050063 beqz a0,80002fb0 + 80002fb4: 00156513 ori a0,a0,1 + 80002fb8: 00000073 ecall + +0000000080002fbc : + 80002fbc: 00100513 li a0,1 + 80002fc0: 00000073 ecall + 80002fc4: c0001073 unimp + +Disassembly of section .data: + +0000000080004000 : + 80004000: deadbeef jal t4,7ffdf5ea <_start-0x20a16> + 80004004: deadbeef jal t4,7ffdf5ee <_start-0x20a12> + +0000000080004008 : + 80004008: deadbeef jal t4,7ffdf5f2 <_start-0x20a0e> + 8000400c: deadbeef jal t4,7ffdf5f6 <_start-0x20a0a> + +0000000080004010 : + 80004010: deadbeef jal t4,7ffdf5fa <_start-0x20a06> + 80004014: deadbeef jal t4,7ffdf5fe <_start-0x20a02> + +0000000080004018 : + 80004018: deadbeef jal t4,7ffdf602 <_start-0x209fe> + 8000401c: deadbeef jal t4,7ffdf606 <_start-0x209fa> + +0000000080004020 : + 80004020: deadbeef jal t4,7ffdf60a <_start-0x209f6> + 80004024: deadbeef jal t4,7ffdf60e <_start-0x209f2> + +0000000080004028 : + 80004028: deadbeef jal t4,7ffdf612 <_start-0x209ee> + 8000402c: deadbeef jal t4,7ffdf616 <_start-0x209ea> + +0000000080004030 : + 80004030: deadbeef jal t4,7ffdf61a <_start-0x209e6> + 80004034: deadbeef jal t4,7ffdf61e <_start-0x209e2> + +0000000080004038 : + 80004038: deadbeef jal t4,7ffdf622 <_start-0x209de> + 8000403c: deadbeef jal t4,7ffdf626 <_start-0x209da> + +0000000080004040 : + 80004040: deadbeef jal t4,7ffdf62a <_start-0x209d6> + 80004044: deadbeef jal t4,7ffdf62e <_start-0x209d2> + +0000000080004048 : + 80004048: deadbeef jal t4,7ffdf632 <_start-0x209ce> + 8000404c: deadbeef jal t4,7ffdf636 <_start-0x209ca> diff --git a/tests/rv64ui-v-sh b/tests/rv64ui-v-sh new file mode 100644 index 0000000000000000000000000000000000000000..0dfbfc0e16be078841118551dbf60949a2e8b244 GIT binary patch literal 24104 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sh.dump b/tests/rv64ui-v-sh.dump new file mode 100644 index 0000000..cd808e5 --- /dev/null +++ b/tests/rv64ui-v-sh.dump @@ -0,0 +1,1150 @@ + +rv64ui-v-sh: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000b117 auipc sp,0xb + 80000098: e4c10113 addi sp,sp,-436 # 8000aee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00004617 auipc a2,0x4 + 80002394: c7060613 addi a2,a2,-912 # 80006000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00008597 auipc a1,0x8 + 800023b0: c5c58593 addi a1,a1,-932 # 8000a008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00008897 auipc a7,0x8 + 800023c4: c408b883 ld a7,-960(a7) # 8000a000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00003797 auipc a5,0x3 + 800023f8: c0c78793 addi a5,a5,-1012 # 80005000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00008797 auipc a5,0x8 + 800024cc: b207bc23 sd zero,-1224(a5) # 8000a000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 92c50513 addi a0,a0,-1748 # 80002e00 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 96050513 addi a0,a0,-1696 # 80002e48 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 99450513 addi a0,a0,-1644 # 80002e90 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 99850513 addi a0,a0,-1640 # 80002ea8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 8f068693 addi a3,a3,-1808 # 80002ee8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 94050513 addi a0,a0,-1728 # 80002f88 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00003497 auipc s1,0x3 + 80002668: 99c48493 addi s1,s1,-1636 # 80005000 + 8000266c: 00004b97 auipc s7,0x4 + 80002670: 994b8b93 addi s7,s7,-1644 # 80006000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00008d97 auipc s11,0x8 + 80002680: 984d8d93 addi s11,s11,-1660 # 8000a000 + 80002684: 00008a17 auipc s4,0x8 + 80002688: 984a0a13 addi s4,s4,-1660 # 8000a008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 88850513 addi a0,a0,-1912 # 80002fb0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 81850513 addi a0,a0,-2024 # 80002f50 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 7cc50513 addi a0,a0,1996 # 80002f18 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00006797 auipc a5,0x6 + 80002774: 89078793 addi a5,a5,-1904 # 80008000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00007817 auipc a6,0x7 + 80002788: 87c80813 addi a6,a6,-1924 # 80009000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00005517 auipc a0,0x5 + 80002798: 86c50513 addi a0,a0,-1940 # 80007000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00004897 auipc a7,0x4 + 800027b0: 85488893 addi a7,a7,-1964 # 80006000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00003717 auipc a4,0x3 + 8000285c: b9870713 addi a4,a4,-1128 # 800053f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00007617 auipc a2,0x7 + 80002874: 78d63c23 sd a3,1944(a2) # 8000a008 + 80002878: 00003317 auipc t1,0x3 + 8000287c: f6830313 addi t1,t1,-152 # 800057e0 + 80002880: 00007697 auipc a3,0x7 + 80002884: 78f6b023 sd a5,1920(a3) # 8000a000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03300793 li a5,51 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00003797 auipc a5,0x3 + 800028d4: f007b423 sd zero,-248(a5) # 800057d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0adbd7b7 lui a5,0xadbd + 80002908: 00080637 lui a2,0x80 + 8000290c: 91078793 addi a5,a5,-1776 # adbc910 <_start-0x752436f0> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 69050513 addi a0,a0,1680 # 80002fe0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00001097 auipc ra,0x1 + 8000296c: 69808093 addi ra,ra,1688 # 80004000 + 80002970: 0aa00113 li sp,170 + 80002974: 00209023 sh sp,0(ra) + 80002978: 00009703 lh a4,0(ra) + 8000297c: 0aa00393 li t2,170 + 80002980: 00200193 li gp,2 + 80002984: 44771e63 bne a4,t2,80002de0 + +0000000080002988 : + 80002988: 00001097 auipc ra,0x1 + 8000298c: 67808093 addi ra,ra,1656 # 80004000 + 80002990: ffffb137 lui sp,0xffffb + 80002994: a001011b addiw sp,sp,-1536 # ffffffffffffaa00 + 80002998: 00209123 sh sp,2(ra) + 8000299c: 00209703 lh a4,2(ra) + 800029a0: ffffb3b7 lui t2,0xffffb + 800029a4: a003839b addiw t2,t2,-1536 # ffffffffffffaa00 + 800029a8: 00300193 li gp,3 + 800029ac: 42771a63 bne a4,t2,80002de0 + +00000000800029b0 : + 800029b0: 00001097 auipc ra,0x1 + 800029b4: 65008093 addi ra,ra,1616 # 80004000 + 800029b8: beef1137 lui sp,0xbeef1 + 800029bc: aa01011b addiw sp,sp,-1376 # ffffffffbeef0aa0 + 800029c0: 00209223 sh sp,4(ra) + 800029c4: 0040a703 lw a4,4(ra) + 800029c8: beef13b7 lui t2,0xbeef1 + 800029cc: aa03839b addiw t2,t2,-1376 # ffffffffbeef0aa0 + 800029d0: 00400193 li gp,4 + 800029d4: 40771663 bne a4,t2,80002de0 + +00000000800029d8 : + 800029d8: 00001097 auipc ra,0x1 + 800029dc: 62808093 addi ra,ra,1576 # 80004000 + 800029e0: ffffa137 lui sp,0xffffa + 800029e4: 00a1011b addiw sp,sp,10 # ffffffffffffa00a + 800029e8: 00209323 sh sp,6(ra) + 800029ec: 00609703 lh a4,6(ra) + 800029f0: ffffa3b7 lui t2,0xffffa + 800029f4: 00a3839b addiw t2,t2,10 # ffffffffffffa00a + 800029f8: 00500193 li gp,5 + 800029fc: 3e771263 bne a4,t2,80002de0 + +0000000080002a00 : + 80002a00: 00001097 auipc ra,0x1 + 80002a04: 60e08093 addi ra,ra,1550 # 8000400e + 80002a08: 0aa00113 li sp,170 + 80002a0c: fe209d23 sh sp,-6(ra) + 80002a10: ffa09703 lh a4,-6(ra) + 80002a14: 0aa00393 li t2,170 + 80002a18: 00600193 li gp,6 + 80002a1c: 3c771263 bne a4,t2,80002de0 + +0000000080002a20 : + 80002a20: 00001097 auipc ra,0x1 + 80002a24: 5ee08093 addi ra,ra,1518 # 8000400e + 80002a28: ffffb137 lui sp,0xffffb + 80002a2c: a001011b addiw sp,sp,-1536 # ffffffffffffaa00 + 80002a30: fe209e23 sh sp,-4(ra) + 80002a34: ffc09703 lh a4,-4(ra) + 80002a38: ffffb3b7 lui t2,0xffffb + 80002a3c: a003839b addiw t2,t2,-1536 # ffffffffffffaa00 + 80002a40: 00700193 li gp,7 + 80002a44: 38771e63 bne a4,t2,80002de0 + +0000000080002a48 : + 80002a48: 00001097 auipc ra,0x1 + 80002a4c: 5c608093 addi ra,ra,1478 # 8000400e + 80002a50: 00001137 lui sp,0x1 + 80002a54: aa01011b addiw sp,sp,-1376 # aa0 <_start-0x7ffff560> + 80002a58: fe209f23 sh sp,-2(ra) + 80002a5c: ffe09703 lh a4,-2(ra) + 80002a60: 000013b7 lui t2,0x1 + 80002a64: aa03839b addiw t2,t2,-1376 # aa0 <_start-0x7ffff560> + 80002a68: 00800193 li gp,8 + 80002a6c: 36771a63 bne a4,t2,80002de0 + +0000000080002a70 : + 80002a70: 00001097 auipc ra,0x1 + 80002a74: 59e08093 addi ra,ra,1438 # 8000400e + 80002a78: ffffa137 lui sp,0xffffa + 80002a7c: 00a1011b addiw sp,sp,10 # ffffffffffffa00a + 80002a80: 00209023 sh sp,0(ra) + 80002a84: 00009703 lh a4,0(ra) + 80002a88: ffffa3b7 lui t2,0xffffa + 80002a8c: 00a3839b addiw t2,t2,10 # ffffffffffffa00a + 80002a90: 00900193 li gp,9 + 80002a94: 34771663 bne a4,t2,80002de0 + +0000000080002a98 : + 80002a98: 00001097 auipc ra,0x1 + 80002a9c: 57808093 addi ra,ra,1400 # 80004010 + 80002aa0: 12345137 lui sp,0x12345 + 80002aa4: 6781011b addiw sp,sp,1656 # 12345678 <_start-0x6dcba988> + 80002aa8: fe008213 addi tp,ra,-32 + 80002aac: 02221023 sh sp,32(tp) # 20 <_start-0x7fffffe0> + 80002ab0: 00009283 lh t0,0(ra) + 80002ab4: 000053b7 lui t2,0x5 + 80002ab8: 6783839b addiw t2,t2,1656 # 5678 <_start-0x7fffa988> + 80002abc: 00a00193 li gp,10 + 80002ac0: 32729063 bne t0,t2,80002de0 + +0000000080002ac4 : + 80002ac4: 00001097 auipc ra,0x1 + 80002ac8: 54c08093 addi ra,ra,1356 # 80004010 + 80002acc: 00003137 lui sp,0x3 + 80002ad0: 0981011b addiw sp,sp,152 # 3098 <_start-0x7fffcf68> + 80002ad4: ffb08093 addi ra,ra,-5 + 80002ad8: 002093a3 sh sp,7(ra) + 80002adc: 00001217 auipc tp,0x1 + 80002ae0: 53620213 addi tp,tp,1334 # 80004012 + 80002ae4: 00021283 lh t0,0(tp) # 0 <_start-0x80000000> + 80002ae8: 000033b7 lui t2,0x3 + 80002aec: 0983839b addiw t2,t2,152 # 3098 <_start-0x7fffcf68> + 80002af0: 00b00193 li gp,11 + 80002af4: 2e729663 bne t0,t2,80002de0 + +0000000080002af8 : + 80002af8: 00c00193 li gp,12 + 80002afc: 00000213 li tp,0 + 80002b00: ffffd0b7 lui ra,0xffffd + 80002b04: cdd0809b addiw ra,ra,-803 # ffffffffffffccdd + 80002b08: 00001117 auipc sp,0x1 + 80002b0c: 4f810113 addi sp,sp,1272 # 80004000 + 80002b10: 00111023 sh ra,0(sp) + 80002b14: 00011703 lh a4,0(sp) + 80002b18: ffffd3b7 lui t2,0xffffd + 80002b1c: cdd3839b addiw t2,t2,-803 # ffffffffffffccdd + 80002b20: 2c771063 bne a4,t2,80002de0 + 80002b24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b28: 00200293 li t0,2 + 80002b2c: fc521ae3 bne tp,t0,80002b00 + +0000000080002b30 : + 80002b30: 00d00193 li gp,13 + 80002b34: 00000213 li tp,0 + 80002b38: ffffc0b7 lui ra,0xffffc + 80002b3c: ccd0809b addiw ra,ra,-819 # ffffffffffffbccd + 80002b40: 00001117 auipc sp,0x1 + 80002b44: 4c010113 addi sp,sp,1216 # 80004000 + 80002b48: 00000013 nop + 80002b4c: 00111123 sh ra,2(sp) + 80002b50: 00211703 lh a4,2(sp) + 80002b54: ffffc3b7 lui t2,0xffffc + 80002b58: ccd3839b addiw t2,t2,-819 # ffffffffffffbccd + 80002b5c: 28771263 bne a4,t2,80002de0 + 80002b60: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b64: 00200293 li t0,2 + 80002b68: fc5218e3 bne tp,t0,80002b38 + +0000000080002b6c : + 80002b6c: 00e00193 li gp,14 + 80002b70: 00000213 li tp,0 + 80002b74: ffffc0b7 lui ra,0xffffc + 80002b78: bcc0809b addiw ra,ra,-1076 # ffffffffffffbbcc + 80002b7c: 00001117 auipc sp,0x1 + 80002b80: 48410113 addi sp,sp,1156 # 80004000 + 80002b84: 00000013 nop + 80002b88: 00000013 nop + 80002b8c: 00111223 sh ra,4(sp) + 80002b90: 00411703 lh a4,4(sp) + 80002b94: ffffc3b7 lui t2,0xffffc + 80002b98: bcc3839b addiw t2,t2,-1076 # ffffffffffffbbcc + 80002b9c: 24771263 bne a4,t2,80002de0 + 80002ba0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba4: 00200293 li t0,2 + 80002ba8: fc5216e3 bne tp,t0,80002b74 + +0000000080002bac : + 80002bac: 00f00193 li gp,15 + 80002bb0: 00000213 li tp,0 + 80002bb4: ffffb0b7 lui ra,0xffffb + 80002bb8: bbc0809b addiw ra,ra,-1092 # ffffffffffffabbc + 80002bbc: 00000013 nop + 80002bc0: 00001117 auipc sp,0x1 + 80002bc4: 44010113 addi sp,sp,1088 # 80004000 + 80002bc8: 00111323 sh ra,6(sp) + 80002bcc: 00611703 lh a4,6(sp) + 80002bd0: ffffb3b7 lui t2,0xffffb + 80002bd4: bbc3839b addiw t2,t2,-1092 # ffffffffffffabbc + 80002bd8: 20771463 bne a4,t2,80002de0 + 80002bdc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002be0: 00200293 li t0,2 + 80002be4: fc5218e3 bne tp,t0,80002bb4 + +0000000080002be8 : + 80002be8: 01000193 li gp,16 + 80002bec: 00000213 li tp,0 + 80002bf0: ffffb0b7 lui ra,0xffffb + 80002bf4: abb0809b addiw ra,ra,-1349 # ffffffffffffaabb + 80002bf8: 00000013 nop + 80002bfc: 00001117 auipc sp,0x1 + 80002c00: 40410113 addi sp,sp,1028 # 80004000 + 80002c04: 00000013 nop + 80002c08: 00111423 sh ra,8(sp) + 80002c0c: 00811703 lh a4,8(sp) + 80002c10: ffffb3b7 lui t2,0xffffb + 80002c14: abb3839b addiw t2,t2,-1349 # ffffffffffffaabb + 80002c18: 1c771463 bne a4,t2,80002de0 + 80002c1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c20: 00200293 li t0,2 + 80002c24: fc5216e3 bne tp,t0,80002bf0 + +0000000080002c28 : + 80002c28: 01100193 li gp,17 + 80002c2c: 00000213 li tp,0 + 80002c30: ffffe0b7 lui ra,0xffffe + 80002c34: aab0809b addiw ra,ra,-1365 # ffffffffffffdaab + 80002c38: 00000013 nop + 80002c3c: 00000013 nop + 80002c40: 00001117 auipc sp,0x1 + 80002c44: 3c010113 addi sp,sp,960 # 80004000 + 80002c48: 00111523 sh ra,10(sp) + 80002c4c: 00a11703 lh a4,10(sp) + 80002c50: ffffe3b7 lui t2,0xffffe + 80002c54: aab3839b addiw t2,t2,-1365 # ffffffffffffdaab + 80002c58: 18771463 bne a4,t2,80002de0 + 80002c5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c60: 00200293 li t0,2 + 80002c64: fc5216e3 bne tp,t0,80002c30 + +0000000080002c68 : + 80002c68: 01200193 li gp,18 + 80002c6c: 00000213 li tp,0 + 80002c70: 00001117 auipc sp,0x1 + 80002c74: 39010113 addi sp,sp,912 # 80004000 + 80002c78: 000020b7 lui ra,0x2 + 80002c7c: 2330809b addiw ra,ra,563 # 2233 <_start-0x7fffddcd> + 80002c80: 00111023 sh ra,0(sp) + 80002c84: 00011703 lh a4,0(sp) + 80002c88: 000023b7 lui t2,0x2 + 80002c8c: 2333839b addiw t2,t2,563 # 2233 <_start-0x7fffddcd> + 80002c90: 14771863 bne a4,t2,80002de0 + 80002c94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c98: 00200293 li t0,2 + 80002c9c: fc521ae3 bne tp,t0,80002c70 + +0000000080002ca0 : + 80002ca0: 01300193 li gp,19 + 80002ca4: 00000213 li tp,0 + 80002ca8: 00001117 auipc sp,0x1 + 80002cac: 35810113 addi sp,sp,856 # 80004000 + 80002cb0: 000010b7 lui ra,0x1 + 80002cb4: 2230809b addiw ra,ra,547 # 1223 <_start-0x7fffeddd> + 80002cb8: 00000013 nop + 80002cbc: 00111123 sh ra,2(sp) + 80002cc0: 00211703 lh a4,2(sp) + 80002cc4: 000013b7 lui t2,0x1 + 80002cc8: 2233839b addiw t2,t2,547 # 1223 <_start-0x7fffeddd> + 80002ccc: 10771a63 bne a4,t2,80002de0 + 80002cd0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd4: 00200293 li t0,2 + 80002cd8: fc5218e3 bne tp,t0,80002ca8 + +0000000080002cdc : + 80002cdc: 01400193 li gp,20 + 80002ce0: 00000213 li tp,0 + 80002ce4: 00001117 auipc sp,0x1 + 80002ce8: 31c10113 addi sp,sp,796 # 80004000 + 80002cec: 000010b7 lui ra,0x1 + 80002cf0: 1220809b addiw ra,ra,290 # 1122 <_start-0x7fffeede> + 80002cf4: 00000013 nop + 80002cf8: 00000013 nop + 80002cfc: 00111223 sh ra,4(sp) + 80002d00: 00411703 lh a4,4(sp) + 80002d04: 000013b7 lui t2,0x1 + 80002d08: 1223839b addiw t2,t2,290 # 1122 <_start-0x7fffeede> + 80002d0c: 0c771a63 bne a4,t2,80002de0 + 80002d10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d14: 00200293 li t0,2 + 80002d18: fc5216e3 bne tp,t0,80002ce4 + +0000000080002d1c : + 80002d1c: 01500193 li gp,21 + 80002d20: 00000213 li tp,0 + 80002d24: 00001117 auipc sp,0x1 + 80002d28: 2dc10113 addi sp,sp,732 # 80004000 + 80002d2c: 00000013 nop + 80002d30: 11200093 li ra,274 + 80002d34: 00111323 sh ra,6(sp) + 80002d38: 00611703 lh a4,6(sp) + 80002d3c: 11200393 li t2,274 + 80002d40: 0a771063 bne a4,t2,80002de0 + 80002d44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d48: 00200293 li t0,2 + 80002d4c: fc521ce3 bne tp,t0,80002d24 + +0000000080002d50 : + 80002d50: 01600193 li gp,22 + 80002d54: 00000213 li tp,0 + 80002d58: 00001117 auipc sp,0x1 + 80002d5c: 2a810113 addi sp,sp,680 # 80004000 + 80002d60: 00000013 nop + 80002d64: 01100093 li ra,17 + 80002d68: 00000013 nop + 80002d6c: 00111423 sh ra,8(sp) + 80002d70: 00811703 lh a4,8(sp) + 80002d74: 01100393 li t2,17 + 80002d78: 06771463 bne a4,t2,80002de0 + 80002d7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d80: 00200293 li t0,2 + 80002d84: fc521ae3 bne tp,t0,80002d58 + +0000000080002d88 : + 80002d88: 01700193 li gp,23 + 80002d8c: 00000213 li tp,0 + 80002d90: 00001117 auipc sp,0x1 + 80002d94: 27010113 addi sp,sp,624 # 80004000 + 80002d98: 00000013 nop + 80002d9c: 00000013 nop + 80002da0: 000030b7 lui ra,0x3 + 80002da4: 0010809b addiw ra,ra,1 # 3001 <_start-0x7fffcfff> + 80002da8: 00111523 sh ra,10(sp) + 80002dac: 00a11703 lh a4,10(sp) + 80002db0: 000033b7 lui t2,0x3 + 80002db4: 0013839b addiw t2,t2,1 # 3001 <_start-0x7fffcfff> + 80002db8: 02771463 bne a4,t2,80002de0 + 80002dbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc0: 00200293 li t0,2 + 80002dc4: fc5216e3 bne tp,t0,80002d90 + 80002dc8: 0000c537 lui a0,0xc + 80002dcc: eef5051b addiw a0,a0,-273 # beef <_start-0x7fff4111> + 80002dd0: 00001597 auipc a1,0x1 + 80002dd4: 23058593 addi a1,a1,560 # 80004000 + 80002dd8: 00a59323 sh a0,6(a1) + 80002ddc: 00301a63 bne zero,gp,80002df0 + +0000000080002de0 : + 80002de0: 00119513 slli a0,gp,0x1 + 80002de4: 00050063 beqz a0,80002de4 + 80002de8: 00156513 ori a0,a0,1 + 80002dec: 00000073 ecall + +0000000080002df0 : + 80002df0: 00100513 li a0,1 + 80002df4: 00000073 ecall + 80002df8: c0001073 unimp + +Disassembly of section .data: + +0000000080004000 : + 80004000: jal t4,7ffff3ee <_start-0xc12> + +0000000080004002 : + 80004002: jal t4,7ffff3f0 <_start-0xc10> + +0000000080004004 : + 80004004: jal t4,7ffff3f2 <_start-0xc0e> + +0000000080004006 : + 80004006: jal t4,7ffff3f4 <_start-0xc0c> + +0000000080004008 : + 80004008: jal t4,7ffff3f6 <_start-0xc0a> + +000000008000400a : + 8000400a: jal t4,7ffff3f8 <_start-0xc08> + +000000008000400c : + 8000400c: jal t4,7ffff3fa <_start-0xc06> + +000000008000400e : + 8000400e: jal t4,7ffff3fc <_start-0xc04> + +0000000080004010 : + 80004010: jal t4,7ffff3fe <_start-0xc02> + +0000000080004012 : + 80004012: ef be Address 0x0000000080004012 is out of bounds. + + 80004016: diff --git a/tests/rv64ui-v-simple b/tests/rv64ui-v-simple new file mode 100644 index 0000000000000000000000000000000000000000..43bb9cd1d5a70370d4efc342a0567095b8ff791f GIT binary patch literal 17664 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 4a450513 addi a0,a0,1188 # 80002978 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 4d850513 addi a0,a0,1240 # 800029c0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 50c50513 addi a0,a0,1292 # 80002a08 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 51050513 addi a0,a0,1296 # 80002a20 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 46868693 addi a3,a3,1128 # 80002a60 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 4b850513 addi a0,a0,1208 # 80002b00 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 40050513 addi a0,a0,1024 # 80002b28 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 39050513 addi a0,a0,912 # 80002ac8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 34450513 addi a0,a0,836 # 80002a90 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03000793 li a5,48 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 07a657b7 lui a5,0x7a65 + 80002908: 00080637 lui a2,0x80 + 8000290c: bab78793 addi a5,a5,-1109 # 7a64bab <_start-0x7859b455> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 20850513 addi a0,a0,520 # 80002b58 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00100513 li a0,1 + 8000296c: 00000073 ecall + 80002970: c0001073 unimp diff --git a/tests/rv64ui-v-sll b/tests/rv64ui-v-sll new file mode 100644 index 0000000000000000000000000000000000000000..e006df412cffd1a26b597533bd2d709b519d7a43 GIT binary patch literal 20712 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sll.dump b/tests/rv64ui-v-sll.dump new file mode 100644 index 0000000..b0f6397 --- /dev/null +++ b/tests/rv64ui-v-sll.dump @@ -0,0 +1,1263 @@ + +rv64ui-v-sll: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: abc50513 addi a0,a0,-1348 # 80002f90 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: af050513 addi a0,a0,-1296 # 80002fd8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b2450513 addi a0,a0,-1244 # 80003020 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b2850513 addi a0,a0,-1240 # 80003038 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a8068693 addi a3,a3,-1408 # 80003078 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: ad050513 addi a0,a0,-1328 # 80003118 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a1850513 addi a0,a0,-1512 # 80003140 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9a850513 addi a0,a0,-1624 # 800030e0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 95c50513 addi a0,a0,-1700 # 800030a8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02b00793 li a5,43 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 063c27b7 lui a5,0x63c2 + 80002908: 00080637 lui a2,0x80 + 8000290c: 9ad78793 addi a5,a5,-1619 # 63c19ad <_start-0x79c3e653> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 82050513 addi a0,a0,-2016 # 80003170 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00100093 li ra,1 + 8000296c: 00000113 li sp,0 + 80002970: 00209733 sll a4,ra,sp + 80002974: 00100393 li t2,1 + 80002978: 00200193 li gp,2 + 8000297c: 5e771c63 bne a4,t2,80002f74 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 00209733 sll a4,ra,sp + 8000298c: 00200393 li t2,2 + 80002990: 00300193 li gp,3 + 80002994: 5e771063 bne a4,t2,80002f74 + +0000000080002998 : + 80002998: 00100093 li ra,1 + 8000299c: 00700113 li sp,7 + 800029a0: 00209733 sll a4,ra,sp + 800029a4: 08000393 li t2,128 + 800029a8: 00400193 li gp,4 + 800029ac: 5c771463 bne a4,t2,80002f74 + +00000000800029b0 : + 800029b0: 00100093 li ra,1 + 800029b4: 00e00113 li sp,14 + 800029b8: 00209733 sll a4,ra,sp + 800029bc: 000043b7 lui t2,0x4 + 800029c0: 00500193 li gp,5 + 800029c4: 5a771863 bne a4,t2,80002f74 + +00000000800029c8 : + 800029c8: 00100093 li ra,1 + 800029cc: 01f00113 li sp,31 + 800029d0: 00209733 sll a4,ra,sp + 800029d4: 0010039b addiw t2,zero,1 + 800029d8: 01f39393 slli t2,t2,0x1f + 800029dc: 00600193 li gp,6 + 800029e0: 58771a63 bne a4,t2,80002f74 + +00000000800029e4 : + 800029e4: fff00093 li ra,-1 + 800029e8: 00000113 li sp,0 + 800029ec: 00209733 sll a4,ra,sp + 800029f0: fff00393 li t2,-1 + 800029f4: 00700193 li gp,7 + 800029f8: 56771e63 bne a4,t2,80002f74 + +00000000800029fc : + 800029fc: fff00093 li ra,-1 + 80002a00: 00100113 li sp,1 + 80002a04: 00209733 sll a4,ra,sp + 80002a08: ffe00393 li t2,-2 + 80002a0c: 00800193 li gp,8 + 80002a10: 56771263 bne a4,t2,80002f74 + +0000000080002a14 : + 80002a14: fff00093 li ra,-1 + 80002a18: 00700113 li sp,7 + 80002a1c: 00209733 sll a4,ra,sp + 80002a20: f8000393 li t2,-128 + 80002a24: 00900193 li gp,9 + 80002a28: 54771663 bne a4,t2,80002f74 + +0000000080002a2c : + 80002a2c: fff00093 li ra,-1 + 80002a30: 00e00113 li sp,14 + 80002a34: 00209733 sll a4,ra,sp + 80002a38: ffffc3b7 lui t2,0xffffc + 80002a3c: 00a00193 li gp,10 + 80002a40: 52771a63 bne a4,t2,80002f74 + +0000000080002a44 : + 80002a44: fff00093 li ra,-1 + 80002a48: 01f00113 li sp,31 + 80002a4c: 00209733 sll a4,ra,sp + 80002a50: 800003b7 lui t2,0x80000 + 80002a54: 00b00193 li gp,11 + 80002a58: 50771e63 bne a4,t2,80002f74 + +0000000080002a5c : + 80002a5c: 212120b7 lui ra,0x21212 + 80002a60: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a64: 00000113 li sp,0 + 80002a68: 00209733 sll a4,ra,sp + 80002a6c: 212123b7 lui t2,0x21212 + 80002a70: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a74: 00c00193 li gp,12 + 80002a78: 4e771e63 bne a4,t2,80002f74 + +0000000080002a7c : + 80002a7c: 212120b7 lui ra,0x21212 + 80002a80: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a84: 00100113 li sp,1 + 80002a88: 00209733 sll a4,ra,sp + 80002a8c: 424243b7 lui t2,0x42424 + 80002a90: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002a94: 00d00193 li gp,13 + 80002a98: 4c771e63 bne a4,t2,80002f74 + +0000000080002a9c : + 80002a9c: 212120b7 lui ra,0x21212 + 80002aa0: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002aa4: 00700113 li sp,7 + 80002aa8: 00209733 sll a4,ra,sp + 80002aac: 010913b7 lui t2,0x1091 + 80002ab0: 9093839b addiw t2,t2,-1783 # 1090909 <_start-0x7ef6f6f7> + 80002ab4: 00c39393 slli t2,t2,0xc + 80002ab8: 08038393 addi t2,t2,128 + 80002abc: 00e00193 li gp,14 + 80002ac0: 4a771a63 bne a4,t2,80002f74 + +0000000080002ac4 : + 80002ac4: 212120b7 lui ra,0x21212 + 80002ac8: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002acc: 00e00113 li sp,14 + 80002ad0: 00209733 sll a4,ra,sp + 80002ad4: 212123b7 lui t2,0x21212 + 80002ad8: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002adc: 00e39393 slli t2,t2,0xe + 80002ae0: 00f00193 li gp,15 + 80002ae4: 48771863 bne a4,t2,80002f74 + +0000000080002ae8 : + 80002ae8: 212120b7 lui ra,0x21212 + 80002aec: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002af0: 01f00113 li sp,31 + 80002af4: 00209733 sll a4,ra,sp + 80002af8: 212123b7 lui t2,0x21212 + 80002afc: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b00: 01f39393 slli t2,t2,0x1f + 80002b04: 01000193 li gp,16 + 80002b08: 46771663 bne a4,t2,80002f74 + +0000000080002b0c : + 80002b0c: 212120b7 lui ra,0x21212 + 80002b10: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b14: fc000113 li sp,-64 + 80002b18: 00209733 sll a4,ra,sp + 80002b1c: 212123b7 lui t2,0x21212 + 80002b20: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b24: 01100193 li gp,17 + 80002b28: 44771663 bne a4,t2,80002f74 + +0000000080002b2c : + 80002b2c: 212120b7 lui ra,0x21212 + 80002b30: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b34: fc100113 li sp,-63 + 80002b38: 00209733 sll a4,ra,sp + 80002b3c: 424243b7 lui t2,0x42424 + 80002b40: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002b44: 01200193 li gp,18 + 80002b48: 42771663 bne a4,t2,80002f74 + +0000000080002b4c : + 80002b4c: 212120b7 lui ra,0x21212 + 80002b50: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b54: fc700113 li sp,-57 + 80002b58: 00209733 sll a4,ra,sp + 80002b5c: 010913b7 lui t2,0x1091 + 80002b60: 9093839b addiw t2,t2,-1783 # 1090909 <_start-0x7ef6f6f7> + 80002b64: 00c39393 slli t2,t2,0xc + 80002b68: 08038393 addi t2,t2,128 + 80002b6c: 01300193 li gp,19 + 80002b70: 40771263 bne a4,t2,80002f74 + +0000000080002b74 : + 80002b74: 212120b7 lui ra,0x21212 + 80002b78: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b7c: fce00113 li sp,-50 + 80002b80: 00209733 sll a4,ra,sp + 80002b84: 212123b7 lui t2,0x21212 + 80002b88: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b8c: 00e39393 slli t2,t2,0xe + 80002b90: 01400193 li gp,20 + 80002b94: 3e771063 bne a4,t2,80002f74 + +0000000080002b98 : + 80002b98: 212120b7 lui ra,0x21212 + 80002b9c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ba0: fff00113 li sp,-1 + 80002ba4: 00209733 sll a4,ra,sp + 80002ba8: fff0039b addiw t2,zero,-1 + 80002bac: 03f39393 slli t2,t2,0x3f + 80002bb0: 01500193 li gp,21 + 80002bb4: 3c771063 bne a4,t2,80002f74 + +0000000080002bb8 : + 80002bb8: 00100093 li ra,1 + 80002bbc: 03f00113 li sp,63 + 80002bc0: 00209733 sll a4,ra,sp + 80002bc4: fff0039b addiw t2,zero,-1 + 80002bc8: 03f39393 slli t2,t2,0x3f + 80002bcc: 03200193 li gp,50 + 80002bd0: 3a771263 bne a4,t2,80002f74 + +0000000080002bd4 : + 80002bd4: fff00093 li ra,-1 + 80002bd8: 02700113 li sp,39 + 80002bdc: 00209733 sll a4,ra,sp + 80002be0: fff0039b addiw t2,zero,-1 + 80002be4: 02739393 slli t2,t2,0x27 + 80002be8: 03300193 li gp,51 + 80002bec: 38771463 bne a4,t2,80002f74 + +0000000080002bf0 : + 80002bf0: 212120b7 lui ra,0x21212 + 80002bf4: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002bf8: 02b00113 li sp,43 + 80002bfc: 00209733 sll a4,ra,sp + 80002c00: 000123b7 lui t2,0x12 + 80002c04: 1213839b addiw t2,t2,289 # 12121 <_start-0x7ffededf> + 80002c08: 02b39393 slli t2,t2,0x2b + 80002c0c: 03400193 li gp,52 + 80002c10: 36771263 bne a4,t2,80002f74 + +0000000080002c14 : + 80002c14: 00100093 li ra,1 + 80002c18: 00700113 li sp,7 + 80002c1c: 002090b3 sll ra,ra,sp + 80002c20: 08000393 li t2,128 + 80002c24: 01600193 li gp,22 + 80002c28: 34709663 bne ra,t2,80002f74 + +0000000080002c2c : + 80002c2c: 00100093 li ra,1 + 80002c30: 00e00113 li sp,14 + 80002c34: 00209133 sll sp,ra,sp + 80002c38: 000043b7 lui t2,0x4 + 80002c3c: 01700193 li gp,23 + 80002c40: 32711a63 bne sp,t2,80002f74 + +0000000080002c44 : + 80002c44: 00300093 li ra,3 + 80002c48: 001090b3 sll ra,ra,ra + 80002c4c: 01800393 li t2,24 + 80002c50: 01800193 li gp,24 + 80002c54: 32709063 bne ra,t2,80002f74 + +0000000080002c58 : + 80002c58: 00000213 li tp,0 + 80002c5c: 00100093 li ra,1 + 80002c60: 00700113 li sp,7 + 80002c64: 00209733 sll a4,ra,sp + 80002c68: 00070313 mv t1,a4 + 80002c6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c70: 00200293 li t0,2 + 80002c74: fe5214e3 bne tp,t0,80002c5c + 80002c78: 08000393 li t2,128 + 80002c7c: 01900193 li gp,25 + 80002c80: 2e731a63 bne t1,t2,80002f74 + +0000000080002c84 : + 80002c84: 00000213 li tp,0 + 80002c88: 00100093 li ra,1 + 80002c8c: 00e00113 li sp,14 + 80002c90: 00209733 sll a4,ra,sp + 80002c94: 00000013 nop + 80002c98: 00070313 mv t1,a4 + 80002c9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ca0: 00200293 li t0,2 + 80002ca4: fe5212e3 bne tp,t0,80002c88 + 80002ca8: 000043b7 lui t2,0x4 + 80002cac: 01a00193 li gp,26 + 80002cb0: 2c731263 bne t1,t2,80002f74 + +0000000080002cb4 : + 80002cb4: 00000213 li tp,0 + 80002cb8: 00100093 li ra,1 + 80002cbc: 01f00113 li sp,31 + 80002cc0: 00209733 sll a4,ra,sp + 80002cc4: 00000013 nop + 80002cc8: 00000013 nop + 80002ccc: 00070313 mv t1,a4 + 80002cd0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd4: 00200293 li t0,2 + 80002cd8: fe5210e3 bne tp,t0,80002cb8 + 80002cdc: 0010039b addiw t2,zero,1 + 80002ce0: 01f39393 slli t2,t2,0x1f + 80002ce4: 01b00193 li gp,27 + 80002ce8: 28731663 bne t1,t2,80002f74 + +0000000080002cec : + 80002cec: 00000213 li tp,0 + 80002cf0: 00100093 li ra,1 + 80002cf4: 00700113 li sp,7 + 80002cf8: 00209733 sll a4,ra,sp + 80002cfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d00: 00200293 li t0,2 + 80002d04: fe5216e3 bne tp,t0,80002cf0 + 80002d08: 08000393 li t2,128 + 80002d0c: 01c00193 li gp,28 + 80002d10: 26771263 bne a4,t2,80002f74 + +0000000080002d14 : + 80002d14: 00000213 li tp,0 + 80002d18: 00100093 li ra,1 + 80002d1c: 00e00113 li sp,14 + 80002d20: 00000013 nop + 80002d24: 00209733 sll a4,ra,sp + 80002d28: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d2c: 00200293 li t0,2 + 80002d30: fe5214e3 bne tp,t0,80002d18 + 80002d34: 000043b7 lui t2,0x4 + 80002d38: 01d00193 li gp,29 + 80002d3c: 22771c63 bne a4,t2,80002f74 + +0000000080002d40 : + 80002d40: 00000213 li tp,0 + 80002d44: 00100093 li ra,1 + 80002d48: 01f00113 li sp,31 + 80002d4c: 00000013 nop + 80002d50: 00000013 nop + 80002d54: 00209733 sll a4,ra,sp + 80002d58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d5c: 00200293 li t0,2 + 80002d60: fe5212e3 bne tp,t0,80002d44 + 80002d64: 0010039b addiw t2,zero,1 + 80002d68: 01f39393 slli t2,t2,0x1f + 80002d6c: 01e00193 li gp,30 + 80002d70: 20771263 bne a4,t2,80002f74 + +0000000080002d74 : + 80002d74: 00000213 li tp,0 + 80002d78: 00100093 li ra,1 + 80002d7c: 00000013 nop + 80002d80: 00700113 li sp,7 + 80002d84: 00209733 sll a4,ra,sp + 80002d88: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d8c: 00200293 li t0,2 + 80002d90: fe5214e3 bne tp,t0,80002d78 + 80002d94: 08000393 li t2,128 + 80002d98: 01f00193 li gp,31 + 80002d9c: 1c771c63 bne a4,t2,80002f74 + +0000000080002da0 : + 80002da0: 00000213 li tp,0 + 80002da4: 00100093 li ra,1 + 80002da8: 00000013 nop + 80002dac: 00e00113 li sp,14 + 80002db0: 00000013 nop + 80002db4: 00209733 sll a4,ra,sp + 80002db8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dbc: 00200293 li t0,2 + 80002dc0: fe5212e3 bne tp,t0,80002da4 + 80002dc4: 000043b7 lui t2,0x4 + 80002dc8: 02000193 li gp,32 + 80002dcc: 1a771463 bne a4,t2,80002f74 + +0000000080002dd0 : + 80002dd0: 00000213 li tp,0 + 80002dd4: 00100093 li ra,1 + 80002dd8: 00000013 nop + 80002ddc: 00000013 nop + 80002de0: 01f00113 li sp,31 + 80002de4: 00209733 sll a4,ra,sp + 80002de8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dec: 00200293 li t0,2 + 80002df0: fe5212e3 bne tp,t0,80002dd4 + 80002df4: 0010039b addiw t2,zero,1 + 80002df8: 01f39393 slli t2,t2,0x1f + 80002dfc: 02100193 li gp,33 + 80002e00: 16771a63 bne a4,t2,80002f74 + +0000000080002e04 : + 80002e04: 00000213 li tp,0 + 80002e08: 00700113 li sp,7 + 80002e0c: 00100093 li ra,1 + 80002e10: 00209733 sll a4,ra,sp + 80002e14: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e18: 00200293 li t0,2 + 80002e1c: fe5216e3 bne tp,t0,80002e08 + 80002e20: 08000393 li t2,128 + 80002e24: 02200193 li gp,34 + 80002e28: 14771663 bne a4,t2,80002f74 + +0000000080002e2c : + 80002e2c: 00000213 li tp,0 + 80002e30: 00e00113 li sp,14 + 80002e34: 00100093 li ra,1 + 80002e38: 00000013 nop + 80002e3c: 00209733 sll a4,ra,sp + 80002e40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e44: 00200293 li t0,2 + 80002e48: fe5214e3 bne tp,t0,80002e30 + 80002e4c: 000043b7 lui t2,0x4 + 80002e50: 02300193 li gp,35 + 80002e54: 12771063 bne a4,t2,80002f74 + +0000000080002e58 : + 80002e58: 00000213 li tp,0 + 80002e5c: 01f00113 li sp,31 + 80002e60: 00100093 li ra,1 + 80002e64: 00000013 nop + 80002e68: 00000013 nop + 80002e6c: 00209733 sll a4,ra,sp + 80002e70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e74: 00200293 li t0,2 + 80002e78: fe5212e3 bne tp,t0,80002e5c + 80002e7c: 0010039b addiw t2,zero,1 + 80002e80: 01f39393 slli t2,t2,0x1f + 80002e84: 02400193 li gp,36 + 80002e88: 0e771663 bne a4,t2,80002f74 + +0000000080002e8c : + 80002e8c: 00000213 li tp,0 + 80002e90: 00700113 li sp,7 + 80002e94: 00000013 nop + 80002e98: 00100093 li ra,1 + 80002e9c: 00209733 sll a4,ra,sp + 80002ea0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ea4: 00200293 li t0,2 + 80002ea8: fe5214e3 bne tp,t0,80002e90 + 80002eac: 08000393 li t2,128 + 80002eb0: 02500193 li gp,37 + 80002eb4: 0c771063 bne a4,t2,80002f74 + +0000000080002eb8 : + 80002eb8: 00000213 li tp,0 + 80002ebc: 00e00113 li sp,14 + 80002ec0: 00000013 nop + 80002ec4: 00100093 li ra,1 + 80002ec8: 00000013 nop + 80002ecc: 00209733 sll a4,ra,sp + 80002ed0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ed4: 00200293 li t0,2 + 80002ed8: fe5212e3 bne tp,t0,80002ebc + 80002edc: 000043b7 lui t2,0x4 + 80002ee0: 02600193 li gp,38 + 80002ee4: 08771863 bne a4,t2,80002f74 + +0000000080002ee8 : + 80002ee8: 00000213 li tp,0 + 80002eec: 01f00113 li sp,31 + 80002ef0: 00000013 nop + 80002ef4: 00000013 nop + 80002ef8: 00100093 li ra,1 + 80002efc: 00209733 sll a4,ra,sp + 80002f00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f04: 00200293 li t0,2 + 80002f08: fe5212e3 bne tp,t0,80002eec + 80002f0c: 0010039b addiw t2,zero,1 + 80002f10: 01f39393 slli t2,t2,0x1f + 80002f14: 02700193 li gp,39 + 80002f18: 04771e63 bne a4,t2,80002f74 + +0000000080002f1c : + 80002f1c: 00f00093 li ra,15 + 80002f20: 00101133 sll sp,zero,ra + 80002f24: 00000393 li t2,0 + 80002f28: 02800193 li gp,40 + 80002f2c: 04711463 bne sp,t2,80002f74 + +0000000080002f30 : + 80002f30: 02000093 li ra,32 + 80002f34: 00009133 sll sp,ra,zero + 80002f38: 02000393 li t2,32 + 80002f3c: 02900193 li gp,41 + 80002f40: 02711a63 bne sp,t2,80002f74 + +0000000080002f44 : + 80002f44: 000010b3 sll ra,zero,zero + 80002f48: 00000393 li t2,0 + 80002f4c: 02a00193 li gp,42 + 80002f50: 02709263 bne ra,t2,80002f74 + +0000000080002f54 : + 80002f54: 40000093 li ra,1024 + 80002f58: 00001137 lui sp,0x1 + 80002f5c: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002f60: 00209033 sll zero,ra,sp + 80002f64: 00000393 li t2,0 + 80002f68: 02b00193 li gp,43 + 80002f6c: 00701463 bne zero,t2,80002f74 + 80002f70: 00301a63 bne zero,gp,80002f84 + +0000000080002f74 : + 80002f74: 00119513 slli a0,gp,0x1 + 80002f78: 00050063 beqz a0,80002f78 + 80002f7c: 00156513 ori a0,a0,1 + 80002f80: 00000073 ecall + +0000000080002f84 : + 80002f84: 00100513 li a0,1 + 80002f88: 00000073 ecall + 80002f8c: c0001073 unimp diff --git a/tests/rv64ui-v-slli b/tests/rv64ui-v-slli new file mode 100644 index 0000000000000000000000000000000000000000..50f11dd9791a79cc1336b6ede1d9a05422ee78e4 GIT binary patch literal 19352 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-slli.dump b/tests/rv64ui-v-slli.dump new file mode 100644 index 0000000..c97dbec --- /dev/null +++ b/tests/rv64ui-v-slli.dump @@ -0,0 +1,1030 @@ + +rv64ui-v-slli: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 7ac50513 addi a0,a0,1964 # 80002c80 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7e050513 addi a0,a0,2016 # 80002cc8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 81450513 addi a0,a0,-2028 # 80002d10 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 81850513 addi a0,a0,-2024 # 80002d28 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 77068693 addi a3,a3,1904 # 80002d68 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 7c050513 addi a0,a0,1984 # 80002e08 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 70850513 addi a0,a0,1800 # 80002e30 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 69850513 addi a0,a0,1688 # 80002dd0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 64c50513 addi a0,a0,1612 # 80002d98 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02100793 li a5,33 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0f9957b7 lui a5,0xf995 + 80002908: 00080637 lui a2,0x80 + 8000290c: 0d278793 addi a5,a5,210 # f9950d2 <_start-0x7066af2e> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 51050513 addi a0,a0,1296 # 80002e60 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00100093 li ra,1 + 8000296c: 00009713 slli a4,ra,0x0 + 80002970: 00100393 li t2,1 + 80002974: 00200193 li gp,2 + 80002978: 2e771463 bne a4,t2,80002c60 + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 00109713 slli a4,ra,0x1 + 80002984: 00200393 li t2,2 + 80002988: 00300193 li gp,3 + 8000298c: 2c771a63 bne a4,t2,80002c60 + +0000000080002990 : + 80002990: 00100093 li ra,1 + 80002994: 00709713 slli a4,ra,0x7 + 80002998: 08000393 li t2,128 + 8000299c: 00400193 li gp,4 + 800029a0: 2c771063 bne a4,t2,80002c60 + +00000000800029a4 : + 800029a4: 00100093 li ra,1 + 800029a8: 00e09713 slli a4,ra,0xe + 800029ac: 000043b7 lui t2,0x4 + 800029b0: 00500193 li gp,5 + 800029b4: 2a771663 bne a4,t2,80002c60 + +00000000800029b8 : + 800029b8: 00100093 li ra,1 + 800029bc: 01f09713 slli a4,ra,0x1f + 800029c0: 0010039b addiw t2,zero,1 + 800029c4: 01f39393 slli t2,t2,0x1f + 800029c8: 00600193 li gp,6 + 800029cc: 28771a63 bne a4,t2,80002c60 + +00000000800029d0 : + 800029d0: fff00093 li ra,-1 + 800029d4: 00009713 slli a4,ra,0x0 + 800029d8: fff00393 li t2,-1 + 800029dc: 00700193 li gp,7 + 800029e0: 28771063 bne a4,t2,80002c60 + +00000000800029e4 : + 800029e4: fff00093 li ra,-1 + 800029e8: 00109713 slli a4,ra,0x1 + 800029ec: ffe00393 li t2,-2 + 800029f0: 00800193 li gp,8 + 800029f4: 26771663 bne a4,t2,80002c60 + +00000000800029f8 : + 800029f8: fff00093 li ra,-1 + 800029fc: 00709713 slli a4,ra,0x7 + 80002a00: f8000393 li t2,-128 + 80002a04: 00900193 li gp,9 + 80002a08: 24771c63 bne a4,t2,80002c60 + +0000000080002a0c : + 80002a0c: fff00093 li ra,-1 + 80002a10: 00e09713 slli a4,ra,0xe + 80002a14: ffffc3b7 lui t2,0xffffc + 80002a18: 00a00193 li gp,10 + 80002a1c: 24771263 bne a4,t2,80002c60 + +0000000080002a20 : + 80002a20: fff00093 li ra,-1 + 80002a24: 01f09713 slli a4,ra,0x1f + 80002a28: 800003b7 lui t2,0x80000 + 80002a2c: 00b00193 li gp,11 + 80002a30: 22771863 bne a4,t2,80002c60 + +0000000080002a34 : + 80002a34: 212120b7 lui ra,0x21212 + 80002a38: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a3c: 00009713 slli a4,ra,0x0 + 80002a40: 212123b7 lui t2,0x21212 + 80002a44: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a48: 00c00193 li gp,12 + 80002a4c: 20771a63 bne a4,t2,80002c60 + +0000000080002a50 : + 80002a50: 212120b7 lui ra,0x21212 + 80002a54: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a58: 00109713 slli a4,ra,0x1 + 80002a5c: 424243b7 lui t2,0x42424 + 80002a60: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002a64: 00d00193 li gp,13 + 80002a68: 1e771c63 bne a4,t2,80002c60 + +0000000080002a6c : + 80002a6c: 212120b7 lui ra,0x21212 + 80002a70: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a74: 00709713 slli a4,ra,0x7 + 80002a78: 010913b7 lui t2,0x1091 + 80002a7c: 9093839b addiw t2,t2,-1783 # 1090909 <_start-0x7ef6f6f7> + 80002a80: 00c39393 slli t2,t2,0xc + 80002a84: 08038393 addi t2,t2,128 + 80002a88: 00e00193 li gp,14 + 80002a8c: 1c771a63 bne a4,t2,80002c60 + +0000000080002a90 : + 80002a90: 212120b7 lui ra,0x21212 + 80002a94: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a98: 00e09713 slli a4,ra,0xe + 80002a9c: 212123b7 lui t2,0x21212 + 80002aa0: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002aa4: 00e39393 slli t2,t2,0xe + 80002aa8: 00f00193 li gp,15 + 80002aac: 1a771a63 bne a4,t2,80002c60 + +0000000080002ab0 : + 80002ab0: 212120b7 lui ra,0x21212 + 80002ab4: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ab8: 01f09713 slli a4,ra,0x1f + 80002abc: 212123b7 lui t2,0x21212 + 80002ac0: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002ac4: 01f39393 slli t2,t2,0x1f + 80002ac8: 01000193 li gp,16 + 80002acc: 18771a63 bne a4,t2,80002c60 + +0000000080002ad0 : + 80002ad0: 00100093 li ra,1 + 80002ad4: 03f09713 slli a4,ra,0x3f + 80002ad8: fff0039b addiw t2,zero,-1 + 80002adc: 03f39393 slli t2,t2,0x3f + 80002ae0: 03200193 li gp,50 + 80002ae4: 16771e63 bne a4,t2,80002c60 + +0000000080002ae8 : + 80002ae8: fff00093 li ra,-1 + 80002aec: 02709713 slli a4,ra,0x27 + 80002af0: fff0039b addiw t2,zero,-1 + 80002af4: 02739393 slli t2,t2,0x27 + 80002af8: 03300193 li gp,51 + 80002afc: 16771263 bne a4,t2,80002c60 + +0000000080002b00 : + 80002b00: 212120b7 lui ra,0x21212 + 80002b04: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b08: 02b09713 slli a4,ra,0x2b + 80002b0c: 000123b7 lui t2,0x12 + 80002b10: 1213839b addiw t2,t2,289 # 12121 <_start-0x7ffededf> + 80002b14: 02b39393 slli t2,t2,0x2b + 80002b18: 03400193 li gp,52 + 80002b1c: 14771263 bne a4,t2,80002c60 + +0000000080002b20 : + 80002b20: 00100093 li ra,1 + 80002b24: 00709093 slli ra,ra,0x7 + 80002b28: 08000393 li t2,128 + 80002b2c: 01100193 li gp,17 + 80002b30: 12709863 bne ra,t2,80002c60 + +0000000080002b34 : + 80002b34: 00000213 li tp,0 + 80002b38: 00100093 li ra,1 + 80002b3c: 00709713 slli a4,ra,0x7 + 80002b40: 00070313 mv t1,a4 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5216e3 bne tp,t0,80002b38 + 80002b50: 08000393 li t2,128 + 80002b54: 01200193 li gp,18 + 80002b58: 10731463 bne t1,t2,80002c60 + +0000000080002b5c : + 80002b5c: 00000213 li tp,0 + 80002b60: 00100093 li ra,1 + 80002b64: 00e09713 slli a4,ra,0xe + 80002b68: 00000013 nop + 80002b6c: 00070313 mv t1,a4 + 80002b70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b74: 00200293 li t0,2 + 80002b78: fe5214e3 bne tp,t0,80002b60 + 80002b7c: 000043b7 lui t2,0x4 + 80002b80: 01300193 li gp,19 + 80002b84: 0c731e63 bne t1,t2,80002c60 + +0000000080002b88 : + 80002b88: 00000213 li tp,0 + 80002b8c: 00100093 li ra,1 + 80002b90: 01f09713 slli a4,ra,0x1f + 80002b94: 00000013 nop + 80002b98: 00000013 nop + 80002b9c: 00070313 mv t1,a4 + 80002ba0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba4: 00200293 li t0,2 + 80002ba8: fe5212e3 bne tp,t0,80002b8c + 80002bac: 0010039b addiw t2,zero,1 + 80002bb0: 01f39393 slli t2,t2,0x1f + 80002bb4: 01400193 li gp,20 + 80002bb8: 0a731463 bne t1,t2,80002c60 + +0000000080002bbc : + 80002bbc: 00000213 li tp,0 + 80002bc0: 00100093 li ra,1 + 80002bc4: 00709713 slli a4,ra,0x7 + 80002bc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bcc: 00200293 li t0,2 + 80002bd0: fe5218e3 bne tp,t0,80002bc0 + 80002bd4: 08000393 li t2,128 + 80002bd8: 01500193 li gp,21 + 80002bdc: 08771263 bne a4,t2,80002c60 + +0000000080002be0 : + 80002be0: 00000213 li tp,0 + 80002be4: 00100093 li ra,1 + 80002be8: 00000013 nop + 80002bec: 00e09713 slli a4,ra,0xe + 80002bf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf4: 00200293 li t0,2 + 80002bf8: fe5216e3 bne tp,t0,80002be4 + 80002bfc: 000043b7 lui t2,0x4 + 80002c00: 01600193 li gp,22 + 80002c04: 04771e63 bne a4,t2,80002c60 + +0000000080002c08 : + 80002c08: 00000213 li tp,0 + 80002c0c: 00100093 li ra,1 + 80002c10: 00000013 nop + 80002c14: 00000013 nop + 80002c18: 01f09713 slli a4,ra,0x1f + 80002c1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c20: 00200293 li t0,2 + 80002c24: fe5214e3 bne tp,t0,80002c0c + 80002c28: 0010039b addiw t2,zero,1 + 80002c2c: 01f39393 slli t2,t2,0x1f + 80002c30: 01700193 li gp,23 + 80002c34: 02771663 bne a4,t2,80002c60 + +0000000080002c38 : + 80002c38: 01f01093 slli ra,zero,0x1f + 80002c3c: 00000393 li t2,0 + 80002c40: 01800193 li gp,24 + 80002c44: 00709e63 bne ra,t2,80002c60 + +0000000080002c48 : + 80002c48: 02100093 li ra,33 + 80002c4c: 01409013 slli zero,ra,0x14 + 80002c50: 00000393 li t2,0 + 80002c54: 01900193 li gp,25 + 80002c58: 00701463 bne zero,t2,80002c60 + 80002c5c: 00301a63 bne zero,gp,80002c70 + +0000000080002c60 : + 80002c60: 00119513 slli a0,gp,0x1 + 80002c64: 00050063 beqz a0,80002c64 + 80002c68: 00156513 ori a0,a0,1 + 80002c6c: 00000073 ecall + +0000000080002c70 : + 80002c70: 00100513 li a0,1 + 80002c74: 00000073 ecall + 80002c78: c0001073 unimp diff --git a/tests/rv64ui-v-slliw b/tests/rv64ui-v-slliw new file mode 100644 index 0000000000000000000000000000000000000000..62e29c86488cab99789a86459883a79b5f93907b GIT binary patch literal 19408 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-slliw.dump b/tests/rv64ui-v-slliw.dump new file mode 100644 index 0000000..e6bb0ad --- /dev/null +++ b/tests/rv64ui-v-slliw.dump @@ -0,0 +1,1039 @@ + +rv64ui-v-slliw: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 7c450513 addi a0,a0,1988 # 80002c98 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7f850513 addi a0,a0,2040 # 80002ce0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 82c50513 addi a0,a0,-2004 # 80002d28 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 83050513 addi a0,a0,-2000 # 80002d40 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 78868693 addi a3,a3,1928 # 80002d80 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 7d850513 addi a0,a0,2008 # 80002e20 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 72050513 addi a0,a0,1824 # 80002e48 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 6b050513 addi a0,a0,1712 # 80002de8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 66450513 addi a0,a0,1636 # 80002db0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 01000793 li a5,16 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0a2947b7 lui a5,0xa294 + 80002908: 00080637 lui a2,0x80 + 8000290c: def78793 addi a5,a5,-529 # a293def <_start-0x75d6c211> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 52850513 addi a0,a0,1320 # 80002e78 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00100093 li ra,1 + 8000296c: 0000971b slliw a4,ra,0x0 + 80002970: 00100393 li t2,1 + 80002974: 00200193 li gp,2 + 80002978: 30771263 bne a4,t2,80002c7c + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 0010971b slliw a4,ra,0x1 + 80002984: 00200393 li t2,2 + 80002988: 00300193 li gp,3 + 8000298c: 2e771863 bne a4,t2,80002c7c + +0000000080002990 : + 80002990: 00100093 li ra,1 + 80002994: 0070971b slliw a4,ra,0x7 + 80002998: 08000393 li t2,128 + 8000299c: 00400193 li gp,4 + 800029a0: 2c771e63 bne a4,t2,80002c7c + +00000000800029a4 : + 800029a4: 00100093 li ra,1 + 800029a8: 00e0971b slliw a4,ra,0xe + 800029ac: 000043b7 lui t2,0x4 + 800029b0: 00500193 li gp,5 + 800029b4: 2c771463 bne a4,t2,80002c7c + +00000000800029b8 : + 800029b8: 00100093 li ra,1 + 800029bc: 01f0971b slliw a4,ra,0x1f + 800029c0: 800003b7 lui t2,0x80000 + 800029c4: 00600193 li gp,6 + 800029c8: 2a771a63 bne a4,t2,80002c7c + +00000000800029cc : + 800029cc: fff00093 li ra,-1 + 800029d0: 0000971b slliw a4,ra,0x0 + 800029d4: fff00393 li t2,-1 + 800029d8: 00700193 li gp,7 + 800029dc: 2a771063 bne a4,t2,80002c7c + +00000000800029e0 : + 800029e0: fff00093 li ra,-1 + 800029e4: 0010971b slliw a4,ra,0x1 + 800029e8: ffe00393 li t2,-2 + 800029ec: 00800193 li gp,8 + 800029f0: 28771663 bne a4,t2,80002c7c + +00000000800029f4 : + 800029f4: fff00093 li ra,-1 + 800029f8: 0070971b slliw a4,ra,0x7 + 800029fc: f8000393 li t2,-128 + 80002a00: 00900193 li gp,9 + 80002a04: 26771c63 bne a4,t2,80002c7c + +0000000080002a08 : + 80002a08: fff00093 li ra,-1 + 80002a0c: 00e0971b slliw a4,ra,0xe + 80002a10: ffffc3b7 lui t2,0xffffc + 80002a14: 00a00193 li gp,10 + 80002a18: 26771263 bne a4,t2,80002c7c + +0000000080002a1c : + 80002a1c: fff00093 li ra,-1 + 80002a20: 01f0971b slliw a4,ra,0x1f + 80002a24: 800003b7 lui t2,0x80000 + 80002a28: 00b00193 li gp,11 + 80002a2c: 24771863 bne a4,t2,80002c7c + +0000000080002a30 : + 80002a30: 212120b7 lui ra,0x21212 + 80002a34: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a38: 0000971b slliw a4,ra,0x0 + 80002a3c: 212123b7 lui t2,0x21212 + 80002a40: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a44: 00c00193 li gp,12 + 80002a48: 22771a63 bne a4,t2,80002c7c + +0000000080002a4c : + 80002a4c: 212120b7 lui ra,0x21212 + 80002a50: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a54: 0010971b slliw a4,ra,0x1 + 80002a58: 424243b7 lui t2,0x42424 + 80002a5c: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002a60: 00d00193 li gp,13 + 80002a64: 20771c63 bne a4,t2,80002c7c + +0000000080002a68 : + 80002a68: 212120b7 lui ra,0x21212 + 80002a6c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a70: 0070971b slliw a4,ra,0x7 + 80002a74: 909093b7 lui t2,0x90909 + 80002a78: 0803839b addiw t2,t2,128 # ffffffff90909080 + 80002a7c: 00e00193 li gp,14 + 80002a80: 1e771e63 bne a4,t2,80002c7c + +0000000080002a84 : + 80002a84: 212120b7 lui ra,0x21212 + 80002a88: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a8c: 00e0971b slliw a4,ra,0xe + 80002a90: 484843b7 lui t2,0x48484 + 80002a94: 00f00193 li gp,15 + 80002a98: 1e771263 bne a4,t2,80002c7c + +0000000080002a9c : + 80002a9c: 212120b7 lui ra,0x21212 + 80002aa0: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002aa4: 01f0971b slliw a4,ra,0x1f + 80002aa8: 800003b7 lui t2,0x80000 + 80002aac: 01000193 li gp,16 + 80002ab0: 1c771663 bne a4,t2,80002c7c + +0000000080002ab4 : + 80002ab4: fff120b7 lui ra,0xfff12 + 80002ab8: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002abc: 00c09093 slli ra,ra,0xc + 80002ac0: 67808093 addi ra,ra,1656 + 80002ac4: 0000971b slliw a4,ra,0x0 + 80002ac8: 123453b7 lui t2,0x12345 + 80002acc: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002ad0: 02c00193 li gp,44 + 80002ad4: 1a771463 bne a4,t2,80002c7c + +0000000080002ad8 : + 80002ad8: fff120b7 lui ra,0xfff12 + 80002adc: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002ae0: 00c09093 slli ra,ra,0xc + 80002ae4: 67808093 addi ra,ra,1656 + 80002ae8: 0040971b slliw a4,ra,0x4 + 80002aec: 234563b7 lui t2,0x23456 + 80002af0: 7803839b addiw t2,t2,1920 # 23456780 <_start-0x5cba9880> + 80002af4: 02d00193 li gp,45 + 80002af8: 18771263 bne a4,t2,80002c7c + +0000000080002afc : + 80002afc: 000920b7 lui ra,0x92 + 80002b00: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002b04: 00c09093 slli ra,ra,0xc + 80002b08: 67808093 addi ra,ra,1656 + 80002b0c: 0000971b slliw a4,ra,0x0 + 80002b10: 923453b7 lui t2,0x92345 + 80002b14: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002b18: 02e00193 li gp,46 + 80002b1c: 16771063 bne a4,t2,80002c7c + +0000000080002b20 : + 80002b20: 000990b7 lui ra,0x99 + 80002b24: 3450809b addiw ra,ra,837 # 99345 <_start-0x7ff66cbb> + 80002b28: 00c09093 slli ra,ra,0xc + 80002b2c: 67808093 addi ra,ra,1656 + 80002b30: 0040971b slliw a4,ra,0x4 + 80002b34: 934563b7 lui t2,0x93456 + 80002b38: 7803839b addiw t2,t2,1920 # ffffffff93456780 + 80002b3c: 02f00193 li gp,47 + 80002b40: 12771e63 bne a4,t2,80002c7c + +0000000080002b44 : + 80002b44: 00100093 li ra,1 + 80002b48: 0070909b slliw ra,ra,0x7 + 80002b4c: 08000393 li t2,128 + 80002b50: 01100193 li gp,17 + 80002b54: 12709463 bne ra,t2,80002c7c + +0000000080002b58 : + 80002b58: 00000213 li tp,0 + 80002b5c: 00100093 li ra,1 + 80002b60: 0070971b slliw a4,ra,0x7 + 80002b64: 00070313 mv t1,a4 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fe5216e3 bne tp,t0,80002b5c + 80002b74: 08000393 li t2,128 + 80002b78: 01200193 li gp,18 + 80002b7c: 10731063 bne t1,t2,80002c7c + +0000000080002b80 : + 80002b80: 00000213 li tp,0 + 80002b84: 00100093 li ra,1 + 80002b88: 00e0971b slliw a4,ra,0xe + 80002b8c: 00000013 nop + 80002b90: 00070313 mv t1,a4 + 80002b94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b98: 00200293 li t0,2 + 80002b9c: fe5214e3 bne tp,t0,80002b84 + 80002ba0: 000043b7 lui t2,0x4 + 80002ba4: 01300193 li gp,19 + 80002ba8: 0c731a63 bne t1,t2,80002c7c + +0000000080002bac : + 80002bac: 00000213 li tp,0 + 80002bb0: 00100093 li ra,1 + 80002bb4: 01f0971b slliw a4,ra,0x1f + 80002bb8: 00000013 nop + 80002bbc: 00000013 nop + 80002bc0: 00070313 mv t1,a4 + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fe5212e3 bne tp,t0,80002bb0 + 80002bd0: 800003b7 lui t2,0x80000 + 80002bd4: 01400193 li gp,20 + 80002bd8: 0a731263 bne t1,t2,80002c7c + +0000000080002bdc : + 80002bdc: 00000213 li tp,0 + 80002be0: 00100093 li ra,1 + 80002be4: 0070971b slliw a4,ra,0x7 + 80002be8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bec: 00200293 li t0,2 + 80002bf0: fe5218e3 bne tp,t0,80002be0 + 80002bf4: 08000393 li t2,128 + 80002bf8: 01500193 li gp,21 + 80002bfc: 08771063 bne a4,t2,80002c7c + +0000000080002c00 : + 80002c00: 00000213 li tp,0 + 80002c04: 00100093 li ra,1 + 80002c08: 00000013 nop + 80002c0c: 00e0971b slliw a4,ra,0xe + 80002c10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c14: 00200293 li t0,2 + 80002c18: fe5216e3 bne tp,t0,80002c04 + 80002c1c: 000043b7 lui t2,0x4 + 80002c20: 01600193 li gp,22 + 80002c24: 04771c63 bne a4,t2,80002c7c + +0000000080002c28 : + 80002c28: 00000213 li tp,0 + 80002c2c: 00100093 li ra,1 + 80002c30: 00000013 nop + 80002c34: 00000013 nop + 80002c38: 01f0971b slliw a4,ra,0x1f + 80002c3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c40: 00200293 li t0,2 + 80002c44: fe5214e3 bne tp,t0,80002c2c + 80002c48: 800003b7 lui t2,0x80000 + 80002c4c: 01700193 li gp,23 + 80002c50: 02771663 bne a4,t2,80002c7c + +0000000080002c54 : + 80002c54: 01f0109b slliw ra,zero,0x1f + 80002c58: 00000393 li t2,0 + 80002c5c: 01800193 li gp,24 + 80002c60: 00709e63 bne ra,t2,80002c7c + +0000000080002c64 : + 80002c64: 01f00093 li ra,31 + 80002c68: 01c0901b slliw zero,ra,0x1c + 80002c6c: 00000393 li t2,0 + 80002c70: 01900193 li gp,25 + 80002c74: 00701463 bne zero,t2,80002c7c + 80002c78: 00301a63 bne zero,gp,80002c8c + +0000000080002c7c : + 80002c7c: 00119513 slli a0,gp,0x1 + 80002c80: 00050063 beqz a0,80002c80 + 80002c84: 00156513 ori a0,a0,1 + 80002c88: 00000073 ecall + +0000000080002c8c : + 80002c8c: 00100513 li a0,1 + 80002c90: 00000073 ecall + 80002c94: c0001073 unimp diff --git a/tests/rv64ui-v-sllw b/tests/rv64ui-v-sllw new file mode 100644 index 0000000000000000000000000000000000000000..8d4c4f58e25be515c562453e90dfc2714b7622ae GIT binary patch literal 20744 zcmeHPe{dV+nSNKR)hf0VE8Zl^BpFb$fdmRhwv^b!PEZIT8A`b%w1hcm9c8UJp4yhM z4X>lkYe9R9d}tDV{XcAxjh_rA~fe&6mUYyIWUd+&A$0@<63E)l;W!%87c+p~47NNziRG`JK zRHDVMRH4PLEJll6S%Mb3QjHe-AnWgO*Og>;U(o+DaN#Had1+nbGvnAlQb^cKNuLnD z7|2%oH$f(4o{9(Pn|gi5m(12I(}Nij>m)(1%Lrn<8Ch(Uyn18CE8Z?G(r?c!61PYd`j$+E*d$fzO_@ruS*p^TGgabN zX|cXFvsm0FEz!4SmWX#q)%qQoYH^b!B`M%bE)|xk;iaTD*O40B?oz{hU20?0r8Ym} zQiJ_&HT<+&ZG73SHoxIkgFo@8;eYd}jsM|Mn?LiYL17VW7paYF7r}lJ>?>hk3HwUe zSHgZV>=(m+G3*z^z8dz`u&;)F^`#p0-ME)7ts|cr-0Qov&WBi78)P`zz%sRYuTPN# zHqN0x!4fa0TxOumK$(Fu17!xv43rrtGf-xr%s`oeG6Q7>$_$hlC^JxIpv*v-fieSS z2FeVS87MPQW}wVKnSnnE26An0Q*L5}jHzDAd4@@QLUx6Y4&(pyCDI=I*d>lgWMr0; zG2o|HzBe&5eqwm0Elo83*vB(WN6bS$FaVtlsqaJnU!$g+=_rCQn`;}!|B3e#`~Pv) zhvJqfB%`0lWtVp3JQOe>*X=kPm$q^7yW7<|B^y%{<1}$TOkLsfZaPzGYx7(_?um z(sB|t|BZA`1LMM%L;d^oA#Cun)ESuJ=QAXcBeq zuhtv9WSoGlcZFb#j$qzkJjbUN8|SA4b?7i9Nvav#z{YUowBp}Ixq%7PCwN^Z`$X90 zy>3#6fWf!=)&yO8)$7a4W3xGVk{VVbHq=wx?w&I|tKh*KJV?PB5jbBYv1EnNSpg-NfY zEuP?+=DAn14litT60T& z>6-QYru;Vx*0ag$i)Sz|7{6yYzkd&YPjh}h6mOEGhBf%MYd!jU;=}I`Hlcm$%inLP zbW^@!YpO{~azTy8m`7(<^4gP_xWmCK^UWP7etcBND<~dxy z!Sj9F(iwgh^)$rm=`BTC#Q1sZ(uT-q+H>;C!Trd2K>jO?*YDW;RD=CB{=#&}?ul>HxJF8FD%5w=h6&M2P3tlB&|V;uh>*6LG)=^HREtRSTg z>+{DSk)m7{je)5uwfV}7I&=Bmj~JP(B(ek$t$>j z7F>$gD=44%DR(mU)b`xwZ(oHarKc8lP4?RKxB|>>D?> zwyAH)g^Pthy8>R)A@}c1Tn+d8E}pGs&lxphSf~O2in$(R9_B}1U)12ix;e0awc

n!Sf03lek}wzaUME&_kVk&ga47 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sllw.dump b/tests/rv64ui-v-sllw.dump new file mode 100644 index 0000000..acb58e4 --- /dev/null +++ b/tests/rv64ui-v-sllw.dump @@ -0,0 +1,1265 @@ + +rv64ui-v-sllw: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: abc50513 addi a0,a0,-1348 # 80002f90 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: af050513 addi a0,a0,-1296 # 80002fd8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b2450513 addi a0,a0,-1244 # 80003020 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b2850513 addi a0,a0,-1240 # 80003038 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a8068693 addi a3,a3,-1408 # 80003078 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: ad050513 addi a0,a0,-1328 # 80003118 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a1850513 addi a0,a0,-1512 # 80003140 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9a850513 addi a0,a0,-1624 # 800030e0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 95c50513 addi a0,a0,-1700 # 800030a8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02f00793 li a5,47 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 09afd7b7 lui a5,0x9afd + 80002908: 00080637 lui a2,0x80 + 8000290c: 1b578793 addi a5,a5,437 # 9afd1b5 <_start-0x76502e4b> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 82050513 addi a0,a0,-2016 # 80003170 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00100093 li ra,1 + 8000296c: 00000113 li sp,0 + 80002970: 0020973b sllw a4,ra,sp + 80002974: 00100393 li t2,1 + 80002978: 00200193 li gp,2 + 8000297c: 5e771c63 bne a4,t2,80002f74 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 0020973b sllw a4,ra,sp + 8000298c: 00200393 li t2,2 + 80002990: 00300193 li gp,3 + 80002994: 5e771063 bne a4,t2,80002f74 + +0000000080002998 : + 80002998: 00100093 li ra,1 + 8000299c: 00700113 li sp,7 + 800029a0: 0020973b sllw a4,ra,sp + 800029a4: 08000393 li t2,128 + 800029a8: 00400193 li gp,4 + 800029ac: 5c771463 bne a4,t2,80002f74 + +00000000800029b0 : + 800029b0: 00100093 li ra,1 + 800029b4: 00e00113 li sp,14 + 800029b8: 0020973b sllw a4,ra,sp + 800029bc: 000043b7 lui t2,0x4 + 800029c0: 00500193 li gp,5 + 800029c4: 5a771863 bne a4,t2,80002f74 + +00000000800029c8 : + 800029c8: 00100093 li ra,1 + 800029cc: 01f00113 li sp,31 + 800029d0: 0020973b sllw a4,ra,sp + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 00600193 li gp,6 + 800029dc: 58771c63 bne a4,t2,80002f74 + +00000000800029e0 : + 800029e0: fff00093 li ra,-1 + 800029e4: 00000113 li sp,0 + 800029e8: 0020973b sllw a4,ra,sp + 800029ec: fff00393 li t2,-1 + 800029f0: 00700193 li gp,7 + 800029f4: 58771063 bne a4,t2,80002f74 + +00000000800029f8 : + 800029f8: fff00093 li ra,-1 + 800029fc: 00100113 li sp,1 + 80002a00: 0020973b sllw a4,ra,sp + 80002a04: ffe00393 li t2,-2 + 80002a08: 00800193 li gp,8 + 80002a0c: 56771463 bne a4,t2,80002f74 + +0000000080002a10 : + 80002a10: fff00093 li ra,-1 + 80002a14: 00700113 li sp,7 + 80002a18: 0020973b sllw a4,ra,sp + 80002a1c: f8000393 li t2,-128 + 80002a20: 00900193 li gp,9 + 80002a24: 54771863 bne a4,t2,80002f74 + +0000000080002a28 : + 80002a28: fff00093 li ra,-1 + 80002a2c: 00e00113 li sp,14 + 80002a30: 0020973b sllw a4,ra,sp + 80002a34: ffffc3b7 lui t2,0xffffc + 80002a38: 00a00193 li gp,10 + 80002a3c: 52771c63 bne a4,t2,80002f74 + +0000000080002a40 : + 80002a40: fff00093 li ra,-1 + 80002a44: 01f00113 li sp,31 + 80002a48: 0020973b sllw a4,ra,sp + 80002a4c: 800003b7 lui t2,0x80000 + 80002a50: 00b00193 li gp,11 + 80002a54: 52771063 bne a4,t2,80002f74 + +0000000080002a58 : + 80002a58: 212120b7 lui ra,0x21212 + 80002a5c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a60: 00000113 li sp,0 + 80002a64: 0020973b sllw a4,ra,sp + 80002a68: 212123b7 lui t2,0x21212 + 80002a6c: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a70: 00c00193 li gp,12 + 80002a74: 50771063 bne a4,t2,80002f74 + +0000000080002a78 : + 80002a78: 212120b7 lui ra,0x21212 + 80002a7c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a80: 00100113 li sp,1 + 80002a84: 0020973b sllw a4,ra,sp + 80002a88: 424243b7 lui t2,0x42424 + 80002a8c: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002a90: 00d00193 li gp,13 + 80002a94: 4e771063 bne a4,t2,80002f74 + +0000000080002a98 : + 80002a98: 212120b7 lui ra,0x21212 + 80002a9c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002aa0: 00700113 li sp,7 + 80002aa4: 0020973b sllw a4,ra,sp + 80002aa8: 909093b7 lui t2,0x90909 + 80002aac: 0803839b addiw t2,t2,128 # ffffffff90909080 + 80002ab0: 00e00193 li gp,14 + 80002ab4: 4c771063 bne a4,t2,80002f74 + +0000000080002ab8 : + 80002ab8: 212120b7 lui ra,0x21212 + 80002abc: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ac0: 00e00113 li sp,14 + 80002ac4: 0020973b sllw a4,ra,sp + 80002ac8: 484843b7 lui t2,0x48484 + 80002acc: 00f00193 li gp,15 + 80002ad0: 4a771263 bne a4,t2,80002f74 + +0000000080002ad4 : + 80002ad4: 212120b7 lui ra,0x21212 + 80002ad8: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002adc: 01f00113 li sp,31 + 80002ae0: 0020973b sllw a4,ra,sp + 80002ae4: 800003b7 lui t2,0x80000 + 80002ae8: 01000193 li gp,16 + 80002aec: 48771463 bne a4,t2,80002f74 + +0000000080002af0 : + 80002af0: 212120b7 lui ra,0x21212 + 80002af4: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002af8: fe000113 li sp,-32 + 80002afc: 0020973b sllw a4,ra,sp + 80002b00: 212123b7 lui t2,0x21212 + 80002b04: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b08: 01100193 li gp,17 + 80002b0c: 46771463 bne a4,t2,80002f74 + +0000000080002b10 : + 80002b10: 212120b7 lui ra,0x21212 + 80002b14: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b18: fe100113 li sp,-31 + 80002b1c: 0020973b sllw a4,ra,sp + 80002b20: 424243b7 lui t2,0x42424 + 80002b24: 2423839b addiw t2,t2,578 # 42424242 <_start-0x3dbdbdbe> + 80002b28: 01200193 li gp,18 + 80002b2c: 44771463 bne a4,t2,80002f74 + +0000000080002b30 : + 80002b30: 212120b7 lui ra,0x21212 + 80002b34: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b38: fe700113 li sp,-25 + 80002b3c: 0020973b sllw a4,ra,sp + 80002b40: 909093b7 lui t2,0x90909 + 80002b44: 0803839b addiw t2,t2,128 # ffffffff90909080 + 80002b48: 01300193 li gp,19 + 80002b4c: 42771463 bne a4,t2,80002f74 + +0000000080002b50 : + 80002b50: 212120b7 lui ra,0x21212 + 80002b54: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b58: fee00113 li sp,-18 + 80002b5c: 0020973b sllw a4,ra,sp + 80002b60: 484843b7 lui t2,0x48484 + 80002b64: 01400193 li gp,20 + 80002b68: 40771663 bne a4,t2,80002f74 + +0000000080002b6c : + 80002b6c: 212120b7 lui ra,0x21212 + 80002b70: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b74: fff00113 li sp,-1 + 80002b78: 0020973b sllw a4,ra,sp + 80002b7c: 800003b7 lui t2,0x80000 + 80002b80: 01500193 li gp,21 + 80002b84: 3e771863 bne a4,t2,80002f74 + +0000000080002b88 : + 80002b88: fff120b7 lui ra,0xfff12 + 80002b8c: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002b90: 00c09093 slli ra,ra,0xc + 80002b94: 67808093 addi ra,ra,1656 + 80002b98: 00000113 li sp,0 + 80002b9c: 0020973b sllw a4,ra,sp + 80002ba0: 123453b7 lui t2,0x12345 + 80002ba4: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002ba8: 02c00193 li gp,44 + 80002bac: 3c771463 bne a4,t2,80002f74 + +0000000080002bb0 : + 80002bb0: fff120b7 lui ra,0xfff12 + 80002bb4: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002bb8: 00c09093 slli ra,ra,0xc + 80002bbc: 67808093 addi ra,ra,1656 + 80002bc0: 00400113 li sp,4 + 80002bc4: 0020973b sllw a4,ra,sp + 80002bc8: 234563b7 lui t2,0x23456 + 80002bcc: 7803839b addiw t2,t2,1920 # 23456780 <_start-0x5cba9880> + 80002bd0: 02d00193 li gp,45 + 80002bd4: 3a771063 bne a4,t2,80002f74 + +0000000080002bd8 : + 80002bd8: 000920b7 lui ra,0x92 + 80002bdc: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002be0: 00c09093 slli ra,ra,0xc + 80002be4: 67808093 addi ra,ra,1656 + 80002be8: 00000113 li sp,0 + 80002bec: 0020973b sllw a4,ra,sp + 80002bf0: 923453b7 lui t2,0x92345 + 80002bf4: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002bf8: 02e00193 li gp,46 + 80002bfc: 36771c63 bne a4,t2,80002f74 + +0000000080002c00 : + 80002c00: 000990b7 lui ra,0x99 + 80002c04: 3450809b addiw ra,ra,837 # 99345 <_start-0x7ff66cbb> + 80002c08: 00c09093 slli ra,ra,0xc + 80002c0c: 67808093 addi ra,ra,1656 + 80002c10: 00400113 li sp,4 + 80002c14: 0020973b sllw a4,ra,sp + 80002c18: 934563b7 lui t2,0x93456 + 80002c1c: 7803839b addiw t2,t2,1920 # ffffffff93456780 + 80002c20: 02f00193 li gp,47 + 80002c24: 34771863 bne a4,t2,80002f74 + +0000000080002c28 : + 80002c28: 00100093 li ra,1 + 80002c2c: 00700113 li sp,7 + 80002c30: 002090bb sllw ra,ra,sp + 80002c34: 08000393 li t2,128 + 80002c38: 01600193 li gp,22 + 80002c3c: 32709c63 bne ra,t2,80002f74 + +0000000080002c40 : + 80002c40: 00100093 li ra,1 + 80002c44: 00e00113 li sp,14 + 80002c48: 0020913b sllw sp,ra,sp + 80002c4c: 000043b7 lui t2,0x4 + 80002c50: 01700193 li gp,23 + 80002c54: 32711063 bne sp,t2,80002f74 + +0000000080002c58 : + 80002c58: 00300093 li ra,3 + 80002c5c: 001090bb sllw ra,ra,ra + 80002c60: 01800393 li t2,24 + 80002c64: 01800193 li gp,24 + 80002c68: 30709663 bne ra,t2,80002f74 + +0000000080002c6c : + 80002c6c: 00000213 li tp,0 + 80002c70: 00100093 li ra,1 + 80002c74: 00700113 li sp,7 + 80002c78: 0020973b sllw a4,ra,sp + 80002c7c: 00070313 mv t1,a4 + 80002c80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c84: 00200293 li t0,2 + 80002c88: fe5214e3 bne tp,t0,80002c70 + 80002c8c: 08000393 li t2,128 + 80002c90: 01900193 li gp,25 + 80002c94: 2e731063 bne t1,t2,80002f74 + +0000000080002c98 : + 80002c98: 00000213 li tp,0 + 80002c9c: 00100093 li ra,1 + 80002ca0: 00e00113 li sp,14 + 80002ca4: 0020973b sllw a4,ra,sp + 80002ca8: 00000013 nop + 80002cac: 00070313 mv t1,a4 + 80002cb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb4: 00200293 li t0,2 + 80002cb8: fe5212e3 bne tp,t0,80002c9c + 80002cbc: 000043b7 lui t2,0x4 + 80002cc0: 01a00193 li gp,26 + 80002cc4: 2a731863 bne t1,t2,80002f74 + +0000000080002cc8 : + 80002cc8: 00000213 li tp,0 + 80002ccc: 00100093 li ra,1 + 80002cd0: 01f00113 li sp,31 + 80002cd4: 0020973b sllw a4,ra,sp + 80002cd8: 00000013 nop + 80002cdc: 00000013 nop + 80002ce0: 00070313 mv t1,a4 + 80002ce4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce8: 00200293 li t0,2 + 80002cec: fe5210e3 bne tp,t0,80002ccc + 80002cf0: 800003b7 lui t2,0x80000 + 80002cf4: 01b00193 li gp,27 + 80002cf8: 26731e63 bne t1,t2,80002f74 + +0000000080002cfc : + 80002cfc: 00000213 li tp,0 + 80002d00: 00100093 li ra,1 + 80002d04: 00700113 li sp,7 + 80002d08: 0020973b sllw a4,ra,sp + 80002d0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d10: 00200293 li t0,2 + 80002d14: fe5216e3 bne tp,t0,80002d00 + 80002d18: 08000393 li t2,128 + 80002d1c: 01c00193 li gp,28 + 80002d20: 24771a63 bne a4,t2,80002f74 + +0000000080002d24 : + 80002d24: 00000213 li tp,0 + 80002d28: 00100093 li ra,1 + 80002d2c: 00e00113 li sp,14 + 80002d30: 00000013 nop + 80002d34: 0020973b sllw a4,ra,sp + 80002d38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d3c: 00200293 li t0,2 + 80002d40: fe5214e3 bne tp,t0,80002d28 + 80002d44: 000043b7 lui t2,0x4 + 80002d48: 01d00193 li gp,29 + 80002d4c: 22771463 bne a4,t2,80002f74 + +0000000080002d50 : + 80002d50: 00000213 li tp,0 + 80002d54: 00100093 li ra,1 + 80002d58: 01f00113 li sp,31 + 80002d5c: 00000013 nop + 80002d60: 00000013 nop + 80002d64: 0020973b sllw a4,ra,sp + 80002d68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d6c: 00200293 li t0,2 + 80002d70: fe5212e3 bne tp,t0,80002d54 + 80002d74: 800003b7 lui t2,0x80000 + 80002d78: 01e00193 li gp,30 + 80002d7c: 1e771c63 bne a4,t2,80002f74 + +0000000080002d80 : + 80002d80: 00000213 li tp,0 + 80002d84: 00100093 li ra,1 + 80002d88: 00000013 nop + 80002d8c: 00700113 li sp,7 + 80002d90: 0020973b sllw a4,ra,sp + 80002d94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d98: 00200293 li t0,2 + 80002d9c: fe5214e3 bne tp,t0,80002d84 + 80002da0: 08000393 li t2,128 + 80002da4: 01f00193 li gp,31 + 80002da8: 1c771663 bne a4,t2,80002f74 + +0000000080002dac : + 80002dac: 00000213 li tp,0 + 80002db0: 00100093 li ra,1 + 80002db4: 00000013 nop + 80002db8: 00e00113 li sp,14 + 80002dbc: 00000013 nop + 80002dc0: 0020973b sllw a4,ra,sp + 80002dc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc8: 00200293 li t0,2 + 80002dcc: fe5212e3 bne tp,t0,80002db0 + 80002dd0: 000043b7 lui t2,0x4 + 80002dd4: 02000193 li gp,32 + 80002dd8: 18771e63 bne a4,t2,80002f74 + +0000000080002ddc : + 80002ddc: 00000213 li tp,0 + 80002de0: 00100093 li ra,1 + 80002de4: 00000013 nop + 80002de8: 00000013 nop + 80002dec: 01f00113 li sp,31 + 80002df0: 0020973b sllw a4,ra,sp + 80002df4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002df8: 00200293 li t0,2 + 80002dfc: fe5212e3 bne tp,t0,80002de0 + 80002e00: 800003b7 lui t2,0x80000 + 80002e04: 02100193 li gp,33 + 80002e08: 16771663 bne a4,t2,80002f74 + +0000000080002e0c : + 80002e0c: 00000213 li tp,0 + 80002e10: 00700113 li sp,7 + 80002e14: 00100093 li ra,1 + 80002e18: 0020973b sllw a4,ra,sp + 80002e1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e20: 00200293 li t0,2 + 80002e24: fe5216e3 bne tp,t0,80002e10 + 80002e28: 08000393 li t2,128 + 80002e2c: 02200193 li gp,34 + 80002e30: 14771263 bne a4,t2,80002f74 + +0000000080002e34 : + 80002e34: 00000213 li tp,0 + 80002e38: 00e00113 li sp,14 + 80002e3c: 00100093 li ra,1 + 80002e40: 00000013 nop + 80002e44: 0020973b sllw a4,ra,sp + 80002e48: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e4c: 00200293 li t0,2 + 80002e50: fe5214e3 bne tp,t0,80002e38 + 80002e54: 000043b7 lui t2,0x4 + 80002e58: 02300193 li gp,35 + 80002e5c: 10771c63 bne a4,t2,80002f74 + +0000000080002e60 : + 80002e60: 00000213 li tp,0 + 80002e64: 01f00113 li sp,31 + 80002e68: 00100093 li ra,1 + 80002e6c: 00000013 nop + 80002e70: 00000013 nop + 80002e74: 0020973b sllw a4,ra,sp + 80002e78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e7c: 00200293 li t0,2 + 80002e80: fe5212e3 bne tp,t0,80002e64 + 80002e84: 800003b7 lui t2,0x80000 + 80002e88: 02400193 li gp,36 + 80002e8c: 0e771463 bne a4,t2,80002f74 + +0000000080002e90 : + 80002e90: 00000213 li tp,0 + 80002e94: 00700113 li sp,7 + 80002e98: 00000013 nop + 80002e9c: 00100093 li ra,1 + 80002ea0: 0020973b sllw a4,ra,sp + 80002ea4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ea8: 00200293 li t0,2 + 80002eac: fe5214e3 bne tp,t0,80002e94 + 80002eb0: 08000393 li t2,128 + 80002eb4: 02500193 li gp,37 + 80002eb8: 0a771e63 bne a4,t2,80002f74 + +0000000080002ebc : + 80002ebc: 00000213 li tp,0 + 80002ec0: 00e00113 li sp,14 + 80002ec4: 00000013 nop + 80002ec8: 00100093 li ra,1 + 80002ecc: 00000013 nop + 80002ed0: 0020973b sllw a4,ra,sp + 80002ed4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ed8: 00200293 li t0,2 + 80002edc: fe5212e3 bne tp,t0,80002ec0 + 80002ee0: 000043b7 lui t2,0x4 + 80002ee4: 02600193 li gp,38 + 80002ee8: 08771663 bne a4,t2,80002f74 + +0000000080002eec : + 80002eec: 00000213 li tp,0 + 80002ef0: 01f00113 li sp,31 + 80002ef4: 00000013 nop + 80002ef8: 00000013 nop + 80002efc: 00100093 li ra,1 + 80002f00: 0020973b sllw a4,ra,sp + 80002f04: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f08: 00200293 li t0,2 + 80002f0c: fe5212e3 bne tp,t0,80002ef0 + 80002f10: 800003b7 lui t2,0x80000 + 80002f14: 02700193 li gp,39 + 80002f18: 04771e63 bne a4,t2,80002f74 + +0000000080002f1c : + 80002f1c: 00f00093 li ra,15 + 80002f20: 0010113b sllw sp,zero,ra + 80002f24: 00000393 li t2,0 + 80002f28: 02800193 li gp,40 + 80002f2c: 04711463 bne sp,t2,80002f74 + +0000000080002f30 : + 80002f30: 02000093 li ra,32 + 80002f34: 0000913b sllw sp,ra,zero + 80002f38: 02000393 li t2,32 + 80002f3c: 02900193 li gp,41 + 80002f40: 02711a63 bne sp,t2,80002f74 + +0000000080002f44 : + 80002f44: 000010bb sllw ra,zero,zero + 80002f48: 00000393 li t2,0 + 80002f4c: 02a00193 li gp,42 + 80002f50: 02709263 bne ra,t2,80002f74 + +0000000080002f54 : + 80002f54: 40000093 li ra,1024 + 80002f58: 00001137 lui sp,0x1 + 80002f5c: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002f60: 0020903b sllw zero,ra,sp + 80002f64: 00000393 li t2,0 + 80002f68: 02b00193 li gp,43 + 80002f6c: 00701463 bne zero,t2,80002f74 + 80002f70: 00301a63 bne zero,gp,80002f84 + +0000000080002f74 : + 80002f74: 00119513 slli a0,gp,0x1 + 80002f78: 00050063 beqz a0,80002f78 + 80002f7c: 00156513 ori a0,a0,1 + 80002f80: 00000073 ecall + +0000000080002f84 : + 80002f84: 00100513 li a0,1 + 80002f88: 00000073 ecall + 80002f8c: c0001073 unimp diff --git a/tests/rv64ui-v-slt b/tests/rv64ui-v-slt new file mode 100644 index 0000000000000000000000000000000000000000..b4085e83a4177058c106936e58342b8e716c35e1 GIT binary patch literal 20136 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 Lv=(9P(rN#H`pMNo literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-slt.dump b/tests/rv64ui-v-slt.dump new file mode 100644 index 0000000..4bb155a --- /dev/null +++ b/tests/rv64ui-v-slt.dump @@ -0,0 +1,1166 @@ + +rv64ui-v-slt: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 97c50513 addi a0,a0,-1668 # 80002e50 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9b050513 addi a0,a0,-1616 # 80002e98 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 9e450513 addi a0,a0,-1564 # 80002ee0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 9e850513 addi a0,a0,-1560 # 80002ef8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 94068693 addi a3,a3,-1728 # 80002f38 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 99050513 addi a0,a0,-1648 # 80002fd8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 8d850513 addi a0,a0,-1832 # 80003000 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 86850513 addi a0,a0,-1944 # 80002fa0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 81c50513 addi a0,a0,-2020 # 80002f68 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00300793 li a5,3 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0c8c27b7 lui a5,0xc8c2 + 80002908: 00080637 lui a2,0x80 + 8000290c: a2878793 addi a5,a5,-1496 # c8c1a28 <_start-0x7373e5d8> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 6e050513 addi a0,a0,1760 # 80003030 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 0020a733 slt a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4a771a63 bne a4,t2,80002e30 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 0020a733 slt a4,ra,sp + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 48771e63 bne a4,t2,80002e30 + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 0020a733 slt a4,ra,sp + 800029a4: 00100393 li t2,1 + 800029a8: 00400193 li gp,4 + 800029ac: 48771263 bne a4,t2,80002e30 + +00000000800029b0 : + 800029b0: 00700093 li ra,7 + 800029b4: 00300113 li sp,3 + 800029b8: 0020a733 slt a4,ra,sp + 800029bc: 00000393 li t2,0 + 800029c0: 00500193 li gp,5 + 800029c4: 46771663 bne a4,t2,80002e30 + +00000000800029c8 : + 800029c8: 00000093 li ra,0 + 800029cc: ffff8137 lui sp,0xffff8 + 800029d0: 0020a733 slt a4,ra,sp + 800029d4: 00000393 li t2,0 + 800029d8: 00600193 li gp,6 + 800029dc: 44771a63 bne a4,t2,80002e30 + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: 00000113 li sp,0 + 800029e8: 0020a733 slt a4,ra,sp + 800029ec: 00100393 li t2,1 + 800029f0: 00700193 li gp,7 + 800029f4: 42771e63 bne a4,t2,80002e30 + +00000000800029f8 : + 800029f8: 800000b7 lui ra,0x80000 + 800029fc: ffff8137 lui sp,0xffff8 + 80002a00: 0020a733 slt a4,ra,sp + 80002a04: 00100393 li t2,1 + 80002a08: 00800193 li gp,8 + 80002a0c: 42771263 bne a4,t2,80002e30 + +0000000080002a10 : + 80002a10: 00000093 li ra,0 + 80002a14: 00008137 lui sp,0x8 + 80002a18: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a1c: 0020a733 slt a4,ra,sp + 80002a20: 00100393 li t2,1 + 80002a24: 00900193 li gp,9 + 80002a28: 40771463 bne a4,t2,80002e30 + +0000000080002a2c : + 80002a2c: 800000b7 lui ra,0x80000 + 80002a30: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a34: 00000113 li sp,0 + 80002a38: 0020a733 slt a4,ra,sp + 80002a3c: 00000393 li t2,0 + 80002a40: 00a00193 li gp,10 + 80002a44: 3e771663 bne a4,t2,80002e30 + +0000000080002a48 : + 80002a48: 800000b7 lui ra,0x80000 + 80002a4c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a50: 00008137 lui sp,0x8 + 80002a54: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a58: 0020a733 slt a4,ra,sp + 80002a5c: 00000393 li t2,0 + 80002a60: 00b00193 li gp,11 + 80002a64: 3c771663 bne a4,t2,80002e30 + +0000000080002a68 : + 80002a68: 800000b7 lui ra,0x80000 + 80002a6c: 00008137 lui sp,0x8 + 80002a70: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a74: 0020a733 slt a4,ra,sp + 80002a78: 00100393 li t2,1 + 80002a7c: 00c00193 li gp,12 + 80002a80: 3a771863 bne a4,t2,80002e30 + +0000000080002a84 : + 80002a84: 800000b7 lui ra,0x80000 + 80002a88: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a8c: ffff8137 lui sp,0xffff8 + 80002a90: 0020a733 slt a4,ra,sp + 80002a94: 00000393 li t2,0 + 80002a98: 00d00193 li gp,13 + 80002a9c: 38771a63 bne a4,t2,80002e30 + +0000000080002aa0 : + 80002aa0: 00000093 li ra,0 + 80002aa4: fff00113 li sp,-1 + 80002aa8: 0020a733 slt a4,ra,sp + 80002aac: 00000393 li t2,0 + 80002ab0: 00e00193 li gp,14 + 80002ab4: 36771e63 bne a4,t2,80002e30 + +0000000080002ab8 : + 80002ab8: fff00093 li ra,-1 + 80002abc: 00100113 li sp,1 + 80002ac0: 0020a733 slt a4,ra,sp + 80002ac4: 00100393 li t2,1 + 80002ac8: 00f00193 li gp,15 + 80002acc: 36771263 bne a4,t2,80002e30 + +0000000080002ad0 : + 80002ad0: fff00093 li ra,-1 + 80002ad4: fff00113 li sp,-1 + 80002ad8: 0020a733 slt a4,ra,sp + 80002adc: 00000393 li t2,0 + 80002ae0: 01000193 li gp,16 + 80002ae4: 34771663 bne a4,t2,80002e30 + +0000000080002ae8 : + 80002ae8: 00e00093 li ra,14 + 80002aec: 00d00113 li sp,13 + 80002af0: 0020a0b3 slt ra,ra,sp + 80002af4: 00000393 li t2,0 + 80002af8: 01100193 li gp,17 + 80002afc: 32709a63 bne ra,t2,80002e30 + +0000000080002b00 : + 80002b00: 00b00093 li ra,11 + 80002b04: 00d00113 li sp,13 + 80002b08: 0020a133 slt sp,ra,sp + 80002b0c: 00100393 li t2,1 + 80002b10: 01200193 li gp,18 + 80002b14: 30711e63 bne sp,t2,80002e30 + +0000000080002b18 : + 80002b18: 00d00093 li ra,13 + 80002b1c: 0010a0b3 slt ra,ra,ra + 80002b20: 00000393 li t2,0 + 80002b24: 01300193 li gp,19 + 80002b28: 30709463 bne ra,t2,80002e30 + +0000000080002b2c : + 80002b2c: 00000213 li tp,0 + 80002b30: 00b00093 li ra,11 + 80002b34: 00d00113 li sp,13 + 80002b38: 0020a733 slt a4,ra,sp + 80002b3c: 00070313 mv t1,a4 + 80002b40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b44: 00200293 li t0,2 + 80002b48: fe5214e3 bne tp,t0,80002b30 + 80002b4c: 00100393 li t2,1 + 80002b50: 01400193 li gp,20 + 80002b54: 2c731e63 bne t1,t2,80002e30 + +0000000080002b58 : + 80002b58: 00000213 li tp,0 + 80002b5c: 00e00093 li ra,14 + 80002b60: 00d00113 li sp,13 + 80002b64: 0020a733 slt a4,ra,sp + 80002b68: 00000013 nop + 80002b6c: 00070313 mv t1,a4 + 80002b70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b74: 00200293 li t0,2 + 80002b78: fe5212e3 bne tp,t0,80002b5c + 80002b7c: 00000393 li t2,0 + 80002b80: 01500193 li gp,21 + 80002b84: 2a731663 bne t1,t2,80002e30 + +0000000080002b88 : + 80002b88: 00000213 li tp,0 + 80002b8c: 00c00093 li ra,12 + 80002b90: 00d00113 li sp,13 + 80002b94: 0020a733 slt a4,ra,sp + 80002b98: 00000013 nop + 80002b9c: 00000013 nop + 80002ba0: 00070313 mv t1,a4 + 80002ba4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba8: 00200293 li t0,2 + 80002bac: fe5210e3 bne tp,t0,80002b8c + 80002bb0: 00100393 li t2,1 + 80002bb4: 01600193 li gp,22 + 80002bb8: 26731c63 bne t1,t2,80002e30 + +0000000080002bbc : + 80002bbc: 00000213 li tp,0 + 80002bc0: 00e00093 li ra,14 + 80002bc4: 00d00113 li sp,13 + 80002bc8: 0020a733 slt a4,ra,sp + 80002bcc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bd0: 00200293 li t0,2 + 80002bd4: fe5216e3 bne tp,t0,80002bc0 + 80002bd8: 00000393 li t2,0 + 80002bdc: 01700193 li gp,23 + 80002be0: 24771863 bne a4,t2,80002e30 + +0000000080002be4 : + 80002be4: 00000213 li tp,0 + 80002be8: 00b00093 li ra,11 + 80002bec: 00d00113 li sp,13 + 80002bf0: 00000013 nop + 80002bf4: 0020a733 slt a4,ra,sp + 80002bf8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bfc: 00200293 li t0,2 + 80002c00: fe5214e3 bne tp,t0,80002be8 + 80002c04: 00100393 li t2,1 + 80002c08: 01800193 li gp,24 + 80002c0c: 22771263 bne a4,t2,80002e30 + +0000000080002c10 : + 80002c10: 00000213 li tp,0 + 80002c14: 00f00093 li ra,15 + 80002c18: 00d00113 li sp,13 + 80002c1c: 00000013 nop + 80002c20: 00000013 nop + 80002c24: 0020a733 slt a4,ra,sp + 80002c28: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c2c: 00200293 li t0,2 + 80002c30: fe5212e3 bne tp,t0,80002c14 + 80002c34: 00000393 li t2,0 + 80002c38: 01900193 li gp,25 + 80002c3c: 1e771a63 bne a4,t2,80002e30 + +0000000080002c40 : + 80002c40: 00000213 li tp,0 + 80002c44: 00a00093 li ra,10 + 80002c48: 00000013 nop + 80002c4c: 00d00113 li sp,13 + 80002c50: 0020a733 slt a4,ra,sp + 80002c54: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c58: 00200293 li t0,2 + 80002c5c: fe5214e3 bne tp,t0,80002c44 + 80002c60: 00100393 li t2,1 + 80002c64: 01a00193 li gp,26 + 80002c68: 1c771463 bne a4,t2,80002e30 + +0000000080002c6c : + 80002c6c: 00000213 li tp,0 + 80002c70: 01000093 li ra,16 + 80002c74: 00000013 nop + 80002c78: 00d00113 li sp,13 + 80002c7c: 00000013 nop + 80002c80: 0020a733 slt a4,ra,sp + 80002c84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c88: 00200293 li t0,2 + 80002c8c: fe5212e3 bne tp,t0,80002c70 + 80002c90: 00000393 li t2,0 + 80002c94: 01b00193 li gp,27 + 80002c98: 18771c63 bne a4,t2,80002e30 + +0000000080002c9c : + 80002c9c: 00000213 li tp,0 + 80002ca0: 00900093 li ra,9 + 80002ca4: 00000013 nop + 80002ca8: 00000013 nop + 80002cac: 00d00113 li sp,13 + 80002cb0: 0020a733 slt a4,ra,sp + 80002cb4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb8: 00200293 li t0,2 + 80002cbc: fe5212e3 bne tp,t0,80002ca0 + 80002cc0: 00100393 li t2,1 + 80002cc4: 01c00193 li gp,28 + 80002cc8: 16771463 bne a4,t2,80002e30 + +0000000080002ccc : + 80002ccc: 00000213 li tp,0 + 80002cd0: 00d00113 li sp,13 + 80002cd4: 01100093 li ra,17 + 80002cd8: 0020a733 slt a4,ra,sp + 80002cdc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce0: 00200293 li t0,2 + 80002ce4: fe5216e3 bne tp,t0,80002cd0 + 80002ce8: 00000393 li t2,0 + 80002cec: 01d00193 li gp,29 + 80002cf0: 14771063 bne a4,t2,80002e30 + +0000000080002cf4 : + 80002cf4: 00000213 li tp,0 + 80002cf8: 00d00113 li sp,13 + 80002cfc: 00800093 li ra,8 + 80002d00: 00000013 nop + 80002d04: 0020a733 slt a4,ra,sp + 80002d08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d0c: 00200293 li t0,2 + 80002d10: fe5214e3 bne tp,t0,80002cf8 + 80002d14: 00100393 li t2,1 + 80002d18: 01e00193 li gp,30 + 80002d1c: 10771a63 bne a4,t2,80002e30 + +0000000080002d20 : + 80002d20: 00000213 li tp,0 + 80002d24: 00d00113 li sp,13 + 80002d28: 01200093 li ra,18 + 80002d2c: 00000013 nop + 80002d30: 00000013 nop + 80002d34: 0020a733 slt a4,ra,sp + 80002d38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d3c: 00200293 li t0,2 + 80002d40: fe5212e3 bne tp,t0,80002d24 + 80002d44: 00000393 li t2,0 + 80002d48: 01f00193 li gp,31 + 80002d4c: 0e771263 bne a4,t2,80002e30 + +0000000080002d50 : + 80002d50: 00000213 li tp,0 + 80002d54: 00d00113 li sp,13 + 80002d58: 00000013 nop + 80002d5c: 00700093 li ra,7 + 80002d60: 0020a733 slt a4,ra,sp + 80002d64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d68: 00200293 li t0,2 + 80002d6c: fe5214e3 bne tp,t0,80002d54 + 80002d70: 00100393 li t2,1 + 80002d74: 02000193 li gp,32 + 80002d78: 0a771c63 bne a4,t2,80002e30 + +0000000080002d7c : + 80002d7c: 00000213 li tp,0 + 80002d80: 00d00113 li sp,13 + 80002d84: 00000013 nop + 80002d88: 01300093 li ra,19 + 80002d8c: 00000013 nop + 80002d90: 0020a733 slt a4,ra,sp + 80002d94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d98: 00200293 li t0,2 + 80002d9c: fe5212e3 bne tp,t0,80002d80 + 80002da0: 00000393 li t2,0 + 80002da4: 02100193 li gp,33 + 80002da8: 08771463 bne a4,t2,80002e30 + +0000000080002dac : + 80002dac: 00000213 li tp,0 + 80002db0: 00d00113 li sp,13 + 80002db4: 00000013 nop + 80002db8: 00000013 nop + 80002dbc: 00600093 li ra,6 + 80002dc0: 0020a733 slt a4,ra,sp + 80002dc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc8: 00200293 li t0,2 + 80002dcc: fe5212e3 bne tp,t0,80002db0 + 80002dd0: 00100393 li t2,1 + 80002dd4: 02200193 li gp,34 + 80002dd8: 04771c63 bne a4,t2,80002e30 + +0000000080002ddc : + 80002ddc: fff00093 li ra,-1 + 80002de0: 00102133 sgtz sp,ra + 80002de4: 00000393 li t2,0 + 80002de8: 02300193 li gp,35 + 80002dec: 04711263 bne sp,t2,80002e30 + +0000000080002df0 : + 80002df0: fff00093 li ra,-1 + 80002df4: 0000a133 sltz sp,ra + 80002df8: 00100393 li t2,1 + 80002dfc: 02400193 li gp,36 + 80002e00: 02711863 bne sp,t2,80002e30 + +0000000080002e04 : + 80002e04: 000020b3 sltz ra,zero + 80002e08: 00000393 li t2,0 + 80002e0c: 02500193 li gp,37 + 80002e10: 02709063 bne ra,t2,80002e30 + +0000000080002e14 : + 80002e14: 01000093 li ra,16 + 80002e18: 01e00113 li sp,30 + 80002e1c: 0020a033 slt zero,ra,sp + 80002e20: 00000393 li t2,0 + 80002e24: 02600193 li gp,38 + 80002e28: 00701463 bne zero,t2,80002e30 + 80002e2c: 00301a63 bne zero,gp,80002e40 + +0000000080002e30 : + 80002e30: 00119513 slli a0,gp,0x1 + 80002e34: 00050063 beqz a0,80002e34 + 80002e38: 00156513 ori a0,a0,1 + 80002e3c: 00000073 ecall + +0000000080002e40 : + 80002e40: 00100513 li a0,1 + 80002e44: 00000073 ecall + 80002e48: c0001073 unimp diff --git a/tests/rv64ui-v-slti b/tests/rv64ui-v-slti new file mode 100644 index 0000000000000000000000000000000000000000..d7c7cc5c8caabcdc8e2167f69a28641d33c40409 GIT binary patch literal 19120 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 Q: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 72450513 addi a0,a0,1828 # 80002bf8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 75850513 addi a0,a0,1880 # 80002c40 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 78c50513 addi a0,a0,1932 # 80002c88 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 79050513 addi a0,a0,1936 # 80002ca0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6e868693 addi a3,a3,1768 # 80002ce0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 73850513 addi a0,a0,1848 # 80002d80 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 68050513 addi a0,a0,1664 # 80002da8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 61050513 addi a0,a0,1552 # 80002d48 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5c450513 addi a0,a0,1476 # 80002d10 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00800793 li a5,8 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 01e147b7 lui a5,0x1e14 + 80002908: 00080637 lui a2,0x80 + 8000290c: 4e578793 addi a5,a5,1253 # 1e144e5 <_start-0x7e1ebb1b> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 48850513 addi a0,a0,1160 # 80002dd8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 0000a713 slti a4,ra,0 + 80002970: 00000393 li t2,0 + 80002974: 00200193 li gp,2 + 80002978: 26771263 bne a4,t2,80002bdc + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 0010a713 slti a4,ra,1 + 80002984: 00000393 li t2,0 + 80002988: 00300193 li gp,3 + 8000298c: 24771863 bne a4,t2,80002bdc + +0000000080002990 : + 80002990: 00300093 li ra,3 + 80002994: 0070a713 slti a4,ra,7 + 80002998: 00100393 li t2,1 + 8000299c: 00400193 li gp,4 + 800029a0: 22771e63 bne a4,t2,80002bdc + +00000000800029a4 : + 800029a4: 00700093 li ra,7 + 800029a8: 0030a713 slti a4,ra,3 + 800029ac: 00000393 li t2,0 + 800029b0: 00500193 li gp,5 + 800029b4: 22771463 bne a4,t2,80002bdc + +00000000800029b8 : + 800029b8: 00000093 li ra,0 + 800029bc: 8000a713 slti a4,ra,-2048 + 800029c0: 00000393 li t2,0 + 800029c4: 00600193 li gp,6 + 800029c8: 20771a63 bne a4,t2,80002bdc + +00000000800029cc : + 800029cc: 800000b7 lui ra,0x80000 + 800029d0: 0000a713 slti a4,ra,0 + 800029d4: 00100393 li t2,1 + 800029d8: 00700193 li gp,7 + 800029dc: 20771063 bne a4,t2,80002bdc + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: 8000a713 slti a4,ra,-2048 + 800029e8: 00100393 li t2,1 + 800029ec: 00800193 li gp,8 + 800029f0: 1e771663 bne a4,t2,80002bdc + +00000000800029f4 : + 800029f4: 00000093 li ra,0 + 800029f8: 7ff0a713 slti a4,ra,2047 + 800029fc: 00100393 li t2,1 + 80002a00: 00900193 li gp,9 + 80002a04: 1c771c63 bne a4,t2,80002bdc + +0000000080002a08 : + 80002a08: 800000b7 lui ra,0x80000 + 80002a0c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a10: 0000a713 slti a4,ra,0 + 80002a14: 00000393 li t2,0 + 80002a18: 00a00193 li gp,10 + 80002a1c: 1c771063 bne a4,t2,80002bdc + +0000000080002a20 : + 80002a20: 800000b7 lui ra,0x80000 + 80002a24: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a28: 7ff0a713 slti a4,ra,2047 + 80002a2c: 00000393 li t2,0 + 80002a30: 00b00193 li gp,11 + 80002a34: 1a771463 bne a4,t2,80002bdc + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: 7ff0a713 slti a4,ra,2047 + 80002a40: 00100393 li t2,1 + 80002a44: 00c00193 li gp,12 + 80002a48: 18771a63 bne a4,t2,80002bdc + +0000000080002a4c : + 80002a4c: 800000b7 lui ra,0x80000 + 80002a50: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a54: 8000a713 slti a4,ra,-2048 + 80002a58: 00000393 li t2,0 + 80002a5c: 00d00193 li gp,13 + 80002a60: 16771e63 bne a4,t2,80002bdc + +0000000080002a64 : + 80002a64: 00000093 li ra,0 + 80002a68: fff0a713 slti a4,ra,-1 + 80002a6c: 00000393 li t2,0 + 80002a70: 00e00193 li gp,14 + 80002a74: 16771463 bne a4,t2,80002bdc + +0000000080002a78 : + 80002a78: fff00093 li ra,-1 + 80002a7c: 0010a713 slti a4,ra,1 + 80002a80: 00100393 li t2,1 + 80002a84: 00f00193 li gp,15 + 80002a88: 14771a63 bne a4,t2,80002bdc + +0000000080002a8c : + 80002a8c: fff00093 li ra,-1 + 80002a90: fff0a713 slti a4,ra,-1 + 80002a94: 00000393 li t2,0 + 80002a98: 01000193 li gp,16 + 80002a9c: 14771063 bne a4,t2,80002bdc + +0000000080002aa0 : + 80002aa0: 00b00093 li ra,11 + 80002aa4: 00d0a093 slti ra,ra,13 + 80002aa8: 00100393 li t2,1 + 80002aac: 01100193 li gp,17 + 80002ab0: 12709663 bne ra,t2,80002bdc + +0000000080002ab4 : + 80002ab4: 00000213 li tp,0 + 80002ab8: 00f00093 li ra,15 + 80002abc: 00a0a713 slti a4,ra,10 + 80002ac0: 00070313 mv t1,a4 + 80002ac4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac8: 00200293 li t0,2 + 80002acc: fe5216e3 bne tp,t0,80002ab8 + 80002ad0: 00000393 li t2,0 + 80002ad4: 01200193 li gp,18 + 80002ad8: 10731263 bne t1,t2,80002bdc + +0000000080002adc : + 80002adc: 00000213 li tp,0 + 80002ae0: 00a00093 li ra,10 + 80002ae4: 0100a713 slti a4,ra,16 + 80002ae8: 00000013 nop + 80002aec: 00070313 mv t1,a4 + 80002af0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002af4: 00200293 li t0,2 + 80002af8: fe5214e3 bne tp,t0,80002ae0 + 80002afc: 00100393 li t2,1 + 80002b00: 01300193 li gp,19 + 80002b04: 0c731c63 bne t1,t2,80002bdc + +0000000080002b08 : + 80002b08: 00000213 li tp,0 + 80002b0c: 01000093 li ra,16 + 80002b10: 0090a713 slti a4,ra,9 + 80002b14: 00000013 nop + 80002b18: 00000013 nop + 80002b1c: 00070313 mv t1,a4 + 80002b20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b24: 00200293 li t0,2 + 80002b28: fe5212e3 bne tp,t0,80002b0c + 80002b2c: 00000393 li t2,0 + 80002b30: 01400193 li gp,20 + 80002b34: 0a731463 bne t1,t2,80002bdc + +0000000080002b38 : + 80002b38: 00000213 li tp,0 + 80002b3c: 00b00093 li ra,11 + 80002b40: 00f0a713 slti a4,ra,15 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5218e3 bne tp,t0,80002b3c + 80002b50: 00100393 li t2,1 + 80002b54: 01500193 li gp,21 + 80002b58: 08771263 bne a4,t2,80002bdc + +0000000080002b5c : + 80002b5c: 00000213 li tp,0 + 80002b60: 01100093 li ra,17 + 80002b64: 00000013 nop + 80002b68: 0080a713 slti a4,ra,8 + 80002b6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b70: 00200293 li t0,2 + 80002b74: fe5216e3 bne tp,t0,80002b60 + 80002b78: 00000393 li t2,0 + 80002b7c: 01600193 li gp,22 + 80002b80: 04771e63 bne a4,t2,80002bdc + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 00c00093 li ra,12 + 80002b8c: 00000013 nop + 80002b90: 00000013 nop + 80002b94: 00e0a713 slti a4,ra,14 + 80002b98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b9c: 00200293 li t0,2 + 80002ba0: fe5214e3 bne tp,t0,80002b88 + 80002ba4: 00100393 li t2,1 + 80002ba8: 01700193 li gp,23 + 80002bac: 02771863 bne a4,t2,80002bdc + +0000000080002bb0 : + 80002bb0: fff02093 slti ra,zero,-1 + 80002bb4: 00000393 li t2,0 + 80002bb8: 01800193 li gp,24 + 80002bbc: 02709063 bne ra,t2,80002bdc + +0000000080002bc0 : + 80002bc0: 00ff00b7 lui ra,0xff0 + 80002bc4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002bc8: fff0a013 slti zero,ra,-1 + 80002bcc: 00000393 li t2,0 + 80002bd0: 01900193 li gp,25 + 80002bd4: 00701463 bne zero,t2,80002bdc + 80002bd8: 00301a63 bne zero,gp,80002bec + +0000000080002bdc : + 80002bdc: 00119513 slli a0,gp,0x1 + 80002be0: 00050063 beqz a0,80002be0 + 80002be4: 00156513 ori a0,a0,1 + 80002be8: 00000073 ecall + +0000000080002bec : + 80002bec: 00100513 li a0,1 + 80002bf0: 00000073 ecall + 80002bf4: c0001073 unimp diff --git a/tests/rv64ui-v-sltiu b/tests/rv64ui-v-sltiu new file mode 100644 index 0000000000000000000000000000000000000000..75f50d1e87bac23d66c3f41f26f05fcd79afdc8c GIT binary patch literal 19120 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 T2ZVeS|1QQ#r!AJwZu|cO?$szM literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sltiu.dump b/tests/rv64ui-v-sltiu.dump new file mode 100644 index 0000000..b2fb46e --- /dev/null +++ b/tests/rv64ui-v-sltiu.dump @@ -0,0 +1,991 @@ + +rv64ui-v-sltiu: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 72450513 addi a0,a0,1828 # 80002bf8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 75850513 addi a0,a0,1880 # 80002c40 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 78c50513 addi a0,a0,1932 # 80002c88 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 79050513 addi a0,a0,1936 # 80002ca0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 6e868693 addi a3,a3,1768 # 80002ce0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 73850513 addi a0,a0,1848 # 80002d80 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 68050513 addi a0,a0,1664 # 80002da8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 61050513 addi a0,a0,1552 # 80002d48 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 5c450513 addi a0,a0,1476 # 80002d10 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02100793 li a5,33 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 04ec47b7 lui a5,0x4ec4 + 80002908: 00080637 lui a2,0x80 + 8000290c: b3078793 addi a5,a5,-1232 # 4ec3b30 <_start-0x7b13c4d0> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 48850513 addi a0,a0,1160 # 80002dd8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 0000b713 sltiu a4,ra,0 + 80002970: 00000393 li t2,0 + 80002974: 00200193 li gp,2 + 80002978: 26771263 bne a4,t2,80002bdc + +000000008000297c : + 8000297c: 00100093 li ra,1 + 80002980: 0010b713 seqz a4,ra + 80002984: 00000393 li t2,0 + 80002988: 00300193 li gp,3 + 8000298c: 24771863 bne a4,t2,80002bdc + +0000000080002990 : + 80002990: 00300093 li ra,3 + 80002994: 0070b713 sltiu a4,ra,7 + 80002998: 00100393 li t2,1 + 8000299c: 00400193 li gp,4 + 800029a0: 22771e63 bne a4,t2,80002bdc + +00000000800029a4 : + 800029a4: 00700093 li ra,7 + 800029a8: 0030b713 sltiu a4,ra,3 + 800029ac: 00000393 li t2,0 + 800029b0: 00500193 li gp,5 + 800029b4: 22771463 bne a4,t2,80002bdc + +00000000800029b8 : + 800029b8: 00000093 li ra,0 + 800029bc: 8000b713 sltiu a4,ra,-2048 + 800029c0: 00100393 li t2,1 + 800029c4: 00600193 li gp,6 + 800029c8: 20771a63 bne a4,t2,80002bdc + +00000000800029cc : + 800029cc: 800000b7 lui ra,0x80000 + 800029d0: 0000b713 sltiu a4,ra,0 + 800029d4: 00000393 li t2,0 + 800029d8: 00700193 li gp,7 + 800029dc: 20771063 bne a4,t2,80002bdc + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: 8000b713 sltiu a4,ra,-2048 + 800029e8: 00100393 li t2,1 + 800029ec: 00800193 li gp,8 + 800029f0: 1e771663 bne a4,t2,80002bdc + +00000000800029f4 : + 800029f4: 00000093 li ra,0 + 800029f8: 7ff0b713 sltiu a4,ra,2047 + 800029fc: 00100393 li t2,1 + 80002a00: 00900193 li gp,9 + 80002a04: 1c771c63 bne a4,t2,80002bdc + +0000000080002a08 : + 80002a08: 800000b7 lui ra,0x80000 + 80002a0c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a10: 0000b713 sltiu a4,ra,0 + 80002a14: 00000393 li t2,0 + 80002a18: 00a00193 li gp,10 + 80002a1c: 1c771063 bne a4,t2,80002bdc + +0000000080002a20 : + 80002a20: 800000b7 lui ra,0x80000 + 80002a24: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a28: 7ff0b713 sltiu a4,ra,2047 + 80002a2c: 00000393 li t2,0 + 80002a30: 00b00193 li gp,11 + 80002a34: 1a771463 bne a4,t2,80002bdc + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: 7ff0b713 sltiu a4,ra,2047 + 80002a40: 00000393 li t2,0 + 80002a44: 00c00193 li gp,12 + 80002a48: 18771a63 bne a4,t2,80002bdc + +0000000080002a4c : + 80002a4c: 800000b7 lui ra,0x80000 + 80002a50: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a54: 8000b713 sltiu a4,ra,-2048 + 80002a58: 00100393 li t2,1 + 80002a5c: 00d00193 li gp,13 + 80002a60: 16771e63 bne a4,t2,80002bdc + +0000000080002a64 : + 80002a64: 00000093 li ra,0 + 80002a68: fff0b713 sltiu a4,ra,-1 + 80002a6c: 00100393 li t2,1 + 80002a70: 00e00193 li gp,14 + 80002a74: 16771463 bne a4,t2,80002bdc + +0000000080002a78 : + 80002a78: fff00093 li ra,-1 + 80002a7c: 0010b713 seqz a4,ra + 80002a80: 00000393 li t2,0 + 80002a84: 00f00193 li gp,15 + 80002a88: 14771a63 bne a4,t2,80002bdc + +0000000080002a8c : + 80002a8c: fff00093 li ra,-1 + 80002a90: fff0b713 sltiu a4,ra,-1 + 80002a94: 00000393 li t2,0 + 80002a98: 01000193 li gp,16 + 80002a9c: 14771063 bne a4,t2,80002bdc + +0000000080002aa0 : + 80002aa0: 00b00093 li ra,11 + 80002aa4: 00d0b093 sltiu ra,ra,13 + 80002aa8: 00100393 li t2,1 + 80002aac: 01100193 li gp,17 + 80002ab0: 12709663 bne ra,t2,80002bdc + +0000000080002ab4 : + 80002ab4: 00000213 li tp,0 + 80002ab8: 00f00093 li ra,15 + 80002abc: 00a0b713 sltiu a4,ra,10 + 80002ac0: 00070313 mv t1,a4 + 80002ac4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ac8: 00200293 li t0,2 + 80002acc: fe5216e3 bne tp,t0,80002ab8 + 80002ad0: 00000393 li t2,0 + 80002ad4: 01200193 li gp,18 + 80002ad8: 10731263 bne t1,t2,80002bdc + +0000000080002adc : + 80002adc: 00000213 li tp,0 + 80002ae0: 00a00093 li ra,10 + 80002ae4: 0100b713 sltiu a4,ra,16 + 80002ae8: 00000013 nop + 80002aec: 00070313 mv t1,a4 + 80002af0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002af4: 00200293 li t0,2 + 80002af8: fe5214e3 bne tp,t0,80002ae0 + 80002afc: 00100393 li t2,1 + 80002b00: 01300193 li gp,19 + 80002b04: 0c731c63 bne t1,t2,80002bdc + +0000000080002b08 : + 80002b08: 00000213 li tp,0 + 80002b0c: 01000093 li ra,16 + 80002b10: 0090b713 sltiu a4,ra,9 + 80002b14: 00000013 nop + 80002b18: 00000013 nop + 80002b1c: 00070313 mv t1,a4 + 80002b20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b24: 00200293 li t0,2 + 80002b28: fe5212e3 bne tp,t0,80002b0c + 80002b2c: 00000393 li t2,0 + 80002b30: 01400193 li gp,20 + 80002b34: 0a731463 bne t1,t2,80002bdc + +0000000080002b38 : + 80002b38: 00000213 li tp,0 + 80002b3c: 00b00093 li ra,11 + 80002b40: 00f0b713 sltiu a4,ra,15 + 80002b44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b48: 00200293 li t0,2 + 80002b4c: fe5218e3 bne tp,t0,80002b3c + 80002b50: 00100393 li t2,1 + 80002b54: 01500193 li gp,21 + 80002b58: 08771263 bne a4,t2,80002bdc + +0000000080002b5c : + 80002b5c: 00000213 li tp,0 + 80002b60: 01100093 li ra,17 + 80002b64: 00000013 nop + 80002b68: 0080b713 sltiu a4,ra,8 + 80002b6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b70: 00200293 li t0,2 + 80002b74: fe5216e3 bne tp,t0,80002b60 + 80002b78: 00000393 li t2,0 + 80002b7c: 01600193 li gp,22 + 80002b80: 04771e63 bne a4,t2,80002bdc + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 00c00093 li ra,12 + 80002b8c: 00000013 nop + 80002b90: 00000013 nop + 80002b94: 00e0b713 sltiu a4,ra,14 + 80002b98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b9c: 00200293 li t0,2 + 80002ba0: fe5214e3 bne tp,t0,80002b88 + 80002ba4: 00100393 li t2,1 + 80002ba8: 01700193 li gp,23 + 80002bac: 02771863 bne a4,t2,80002bdc + +0000000080002bb0 : + 80002bb0: fff03093 sltiu ra,zero,-1 + 80002bb4: 00100393 li t2,1 + 80002bb8: 01800193 li gp,24 + 80002bbc: 02709063 bne ra,t2,80002bdc + +0000000080002bc0 : + 80002bc0: 00ff00b7 lui ra,0xff0 + 80002bc4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002bc8: fff0b013 sltiu zero,ra,-1 + 80002bcc: 00000393 li t2,0 + 80002bd0: 01900193 li gp,25 + 80002bd4: 00701463 bne zero,t2,80002bdc + 80002bd8: 00301a63 bne zero,gp,80002bec + +0000000080002bdc : + 80002bdc: 00119513 slli a0,gp,0x1 + 80002be0: 00050063 beqz a0,80002be0 + 80002be4: 00156513 ori a0,a0,1 + 80002be8: 00000073 ecall + +0000000080002bec : + 80002bec: 00100513 li a0,1 + 80002bf0: 00000073 ecall + 80002bf4: c0001073 unimp diff --git a/tests/rv64ui-v-sltu b/tests/rv64ui-v-sltu new file mode 100644 index 0000000000000000000000000000000000000000..cfcbcda7aca21312f80c98c90fadcd4bdb57d630 GIT binary patch literal 20200 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sltu.dump b/tests/rv64ui-v-sltu.dump new file mode 100644 index 0000000..d2ced8c --- /dev/null +++ b/tests/rv64ui-v-sltu.dump @@ -0,0 +1,1183 @@ + +rv64ui-v-sltu: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 9bc50513 addi a0,a0,-1604 # 80002e90 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9f050513 addi a0,a0,-1552 # 80002ed8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: a2450513 addi a0,a0,-1500 # 80002f20 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: a2850513 addi a0,a0,-1496 # 80002f38 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 98068693 addi a3,a3,-1664 # 80002f78 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 9d050513 addi a0,a0,-1584 # 80003018 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 91850513 addi a0,a0,-1768 # 80003040 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 8a850513 addi a0,a0,-1880 # 80002fe0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 85c50513 addi a0,a0,-1956 # 80002fa8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00c00793 li a5,12 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 069e57b7 lui a5,0x69e5 + 80002908: 00080637 lui a2,0x80 + 8000290c: 8d578793 addi a5,a5,-1835 # 69e48d5 <_start-0x7961b72b> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 72050513 addi a0,a0,1824 # 80003070 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 0020b733 sltu a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4e771c63 bne a4,t2,80002e74 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 0020b733 sltu a4,ra,sp + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 4e771063 bne a4,t2,80002e74 + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 0020b733 sltu a4,ra,sp + 800029a4: 00100393 li t2,1 + 800029a8: 00400193 li gp,4 + 800029ac: 4c771463 bne a4,t2,80002e74 + +00000000800029b0 : + 800029b0: 00700093 li ra,7 + 800029b4: 00300113 li sp,3 + 800029b8: 0020b733 sltu a4,ra,sp + 800029bc: 00000393 li t2,0 + 800029c0: 00500193 li gp,5 + 800029c4: 4a771863 bne a4,t2,80002e74 + +00000000800029c8 : + 800029c8: 00000093 li ra,0 + 800029cc: 00020137 lui sp,0x20 + 800029d0: fff1011b addiw sp,sp,-1 # 1ffff <_start-0x7ffe0001> + 800029d4: 00f11113 slli sp,sp,0xf + 800029d8: 0020b733 sltu a4,ra,sp + 800029dc: 00100393 li t2,1 + 800029e0: 00600193 li gp,6 + 800029e4: 48771863 bne a4,t2,80002e74 + +00000000800029e8 : + 800029e8: 0010009b addiw ra,zero,1 + 800029ec: 01f09093 slli ra,ra,0x1f + 800029f0: 00000113 li sp,0 + 800029f4: 0020b733 sltu a4,ra,sp + 800029f8: 00000393 li t2,0 + 800029fc: 00700193 li gp,7 + 80002a00: 46771a63 bne a4,t2,80002e74 + +0000000080002a04 : + 80002a04: 0010009b addiw ra,zero,1 + 80002a08: 01f09093 slli ra,ra,0x1f + 80002a0c: 00020137 lui sp,0x20 + 80002a10: fff1011b addiw sp,sp,-1 # 1ffff <_start-0x7ffe0001> + 80002a14: 00f11113 slli sp,sp,0xf + 80002a18: 0020b733 sltu a4,ra,sp + 80002a1c: 00100393 li t2,1 + 80002a20: 00800193 li gp,8 + 80002a24: 44771863 bne a4,t2,80002e74 + +0000000080002a28 : + 80002a28: 00000093 li ra,0 + 80002a2c: 00008137 lui sp,0x8 + 80002a30: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a34: 0020b733 sltu a4,ra,sp + 80002a38: 00100393 li t2,1 + 80002a3c: 00900193 li gp,9 + 80002a40: 42771a63 bne a4,t2,80002e74 + +0000000080002a44 : + 80002a44: 800000b7 lui ra,0x80000 + 80002a48: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a4c: 00000113 li sp,0 + 80002a50: 0020b733 sltu a4,ra,sp + 80002a54: 00000393 li t2,0 + 80002a58: 00a00193 li gp,10 + 80002a5c: 40771c63 bne a4,t2,80002e74 + +0000000080002a60 : + 80002a60: 800000b7 lui ra,0x80000 + 80002a64: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a68: 00008137 lui sp,0x8 + 80002a6c: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a70: 0020b733 sltu a4,ra,sp + 80002a74: 00000393 li t2,0 + 80002a78: 00b00193 li gp,11 + 80002a7c: 3e771c63 bne a4,t2,80002e74 + +0000000080002a80 : + 80002a80: 0010009b addiw ra,zero,1 + 80002a84: 01f09093 slli ra,ra,0x1f + 80002a88: 00008137 lui sp,0x8 + 80002a8c: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a90: 0020b733 sltu a4,ra,sp + 80002a94: 00000393 li t2,0 + 80002a98: 00c00193 li gp,12 + 80002a9c: 3c771c63 bne a4,t2,80002e74 + +0000000080002aa0 : + 80002aa0: 800000b7 lui ra,0x80000 + 80002aa4: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002aa8: 00020137 lui sp,0x20 + 80002aac: fff1011b addiw sp,sp,-1 # 1ffff <_start-0x7ffe0001> + 80002ab0: 00f11113 slli sp,sp,0xf + 80002ab4: 0020b733 sltu a4,ra,sp + 80002ab8: 00100393 li t2,1 + 80002abc: 00d00193 li gp,13 + 80002ac0: 3a771a63 bne a4,t2,80002e74 + +0000000080002ac4 : + 80002ac4: 00000093 li ra,0 + 80002ac8: 0010011b addiw sp,zero,1 + 80002acc: 02011113 slli sp,sp,0x20 + 80002ad0: fff10113 addi sp,sp,-1 + 80002ad4: 0020b733 sltu a4,ra,sp + 80002ad8: 00100393 li t2,1 + 80002adc: 00e00193 li gp,14 + 80002ae0: 38771a63 bne a4,t2,80002e74 + +0000000080002ae4 : + 80002ae4: 0010009b addiw ra,zero,1 + 80002ae8: 02009093 slli ra,ra,0x20 + 80002aec: fff08093 addi ra,ra,-1 + 80002af0: 00100113 li sp,1 + 80002af4: 0020b733 sltu a4,ra,sp + 80002af8: 00000393 li t2,0 + 80002afc: 00f00193 li gp,15 + 80002b00: 36771a63 bne a4,t2,80002e74 + +0000000080002b04 : + 80002b04: 0010009b addiw ra,zero,1 + 80002b08: 02009093 slli ra,ra,0x20 + 80002b0c: fff08093 addi ra,ra,-1 + 80002b10: 0010011b addiw sp,zero,1 + 80002b14: 02011113 slli sp,sp,0x20 + 80002b18: fff10113 addi sp,sp,-1 + 80002b1c: 0020b733 sltu a4,ra,sp + 80002b20: 00000393 li t2,0 + 80002b24: 01000193 li gp,16 + 80002b28: 34771663 bne a4,t2,80002e74 + +0000000080002b2c : + 80002b2c: 00e00093 li ra,14 + 80002b30: 00d00113 li sp,13 + 80002b34: 0020b0b3 sltu ra,ra,sp + 80002b38: 00000393 li t2,0 + 80002b3c: 01100193 li gp,17 + 80002b40: 32709a63 bne ra,t2,80002e74 + +0000000080002b44 : + 80002b44: 00b00093 li ra,11 + 80002b48: 00d00113 li sp,13 + 80002b4c: 0020b133 sltu sp,ra,sp + 80002b50: 00100393 li t2,1 + 80002b54: 01200193 li gp,18 + 80002b58: 30711e63 bne sp,t2,80002e74 + +0000000080002b5c : + 80002b5c: 00d00093 li ra,13 + 80002b60: 0010b0b3 sltu ra,ra,ra + 80002b64: 00000393 li t2,0 + 80002b68: 01300193 li gp,19 + 80002b6c: 30709463 bne ra,t2,80002e74 + +0000000080002b70 : + 80002b70: 00000213 li tp,0 + 80002b74: 00b00093 li ra,11 + 80002b78: 00d00113 li sp,13 + 80002b7c: 0020b733 sltu a4,ra,sp + 80002b80: 00070313 mv t1,a4 + 80002b84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b88: 00200293 li t0,2 + 80002b8c: fe5214e3 bne tp,t0,80002b74 + 80002b90: 00100393 li t2,1 + 80002b94: 01400193 li gp,20 + 80002b98: 2c731e63 bne t1,t2,80002e74 + +0000000080002b9c : + 80002b9c: 00000213 li tp,0 + 80002ba0: 00e00093 li ra,14 + 80002ba4: 00d00113 li sp,13 + 80002ba8: 0020b733 sltu a4,ra,sp + 80002bac: 00000013 nop + 80002bb0: 00070313 mv t1,a4 + 80002bb4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb8: 00200293 li t0,2 + 80002bbc: fe5212e3 bne tp,t0,80002ba0 + 80002bc0: 00000393 li t2,0 + 80002bc4: 01500193 li gp,21 + 80002bc8: 2a731663 bne t1,t2,80002e74 + +0000000080002bcc : + 80002bcc: 00000213 li tp,0 + 80002bd0: 00c00093 li ra,12 + 80002bd4: 00d00113 li sp,13 + 80002bd8: 0020b733 sltu a4,ra,sp + 80002bdc: 00000013 nop + 80002be0: 00000013 nop + 80002be4: 00070313 mv t1,a4 + 80002be8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bec: 00200293 li t0,2 + 80002bf0: fe5210e3 bne tp,t0,80002bd0 + 80002bf4: 00100393 li t2,1 + 80002bf8: 01600193 li gp,22 + 80002bfc: 26731c63 bne t1,t2,80002e74 + +0000000080002c00 : + 80002c00: 00000213 li tp,0 + 80002c04: 00e00093 li ra,14 + 80002c08: 00d00113 li sp,13 + 80002c0c: 0020b733 sltu a4,ra,sp + 80002c10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c14: 00200293 li t0,2 + 80002c18: fe5216e3 bne tp,t0,80002c04 + 80002c1c: 00000393 li t2,0 + 80002c20: 01700193 li gp,23 + 80002c24: 24771863 bne a4,t2,80002e74 + +0000000080002c28 : + 80002c28: 00000213 li tp,0 + 80002c2c: 00b00093 li ra,11 + 80002c30: 00d00113 li sp,13 + 80002c34: 00000013 nop + 80002c38: 0020b733 sltu a4,ra,sp + 80002c3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c40: 00200293 li t0,2 + 80002c44: fe5214e3 bne tp,t0,80002c2c + 80002c48: 00100393 li t2,1 + 80002c4c: 01800193 li gp,24 + 80002c50: 22771263 bne a4,t2,80002e74 + +0000000080002c54 : + 80002c54: 00000213 li tp,0 + 80002c58: 00f00093 li ra,15 + 80002c5c: 00d00113 li sp,13 + 80002c60: 00000013 nop + 80002c64: 00000013 nop + 80002c68: 0020b733 sltu a4,ra,sp + 80002c6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c70: 00200293 li t0,2 + 80002c74: fe5212e3 bne tp,t0,80002c58 + 80002c78: 00000393 li t2,0 + 80002c7c: 01900193 li gp,25 + 80002c80: 1e771a63 bne a4,t2,80002e74 + +0000000080002c84 : + 80002c84: 00000213 li tp,0 + 80002c88: 00a00093 li ra,10 + 80002c8c: 00000013 nop + 80002c90: 00d00113 li sp,13 + 80002c94: 0020b733 sltu a4,ra,sp + 80002c98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c9c: 00200293 li t0,2 + 80002ca0: fe5214e3 bne tp,t0,80002c88 + 80002ca4: 00100393 li t2,1 + 80002ca8: 01a00193 li gp,26 + 80002cac: 1c771463 bne a4,t2,80002e74 + +0000000080002cb0 : + 80002cb0: 00000213 li tp,0 + 80002cb4: 01000093 li ra,16 + 80002cb8: 00000013 nop + 80002cbc: 00d00113 li sp,13 + 80002cc0: 00000013 nop + 80002cc4: 0020b733 sltu a4,ra,sp + 80002cc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ccc: 00200293 li t0,2 + 80002cd0: fe5212e3 bne tp,t0,80002cb4 + 80002cd4: 00000393 li t2,0 + 80002cd8: 01b00193 li gp,27 + 80002cdc: 18771c63 bne a4,t2,80002e74 + +0000000080002ce0 : + 80002ce0: 00000213 li tp,0 + 80002ce4: 00900093 li ra,9 + 80002ce8: 00000013 nop + 80002cec: 00000013 nop + 80002cf0: 00d00113 li sp,13 + 80002cf4: 0020b733 sltu a4,ra,sp + 80002cf8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cfc: 00200293 li t0,2 + 80002d00: fe5212e3 bne tp,t0,80002ce4 + 80002d04: 00100393 li t2,1 + 80002d08: 01c00193 li gp,28 + 80002d0c: 16771463 bne a4,t2,80002e74 + +0000000080002d10 : + 80002d10: 00000213 li tp,0 + 80002d14: 00d00113 li sp,13 + 80002d18: 01100093 li ra,17 + 80002d1c: 0020b733 sltu a4,ra,sp + 80002d20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d24: 00200293 li t0,2 + 80002d28: fe5216e3 bne tp,t0,80002d14 + 80002d2c: 00000393 li t2,0 + 80002d30: 01d00193 li gp,29 + 80002d34: 14771063 bne a4,t2,80002e74 + +0000000080002d38 : + 80002d38: 00000213 li tp,0 + 80002d3c: 00d00113 li sp,13 + 80002d40: 00800093 li ra,8 + 80002d44: 00000013 nop + 80002d48: 0020b733 sltu a4,ra,sp + 80002d4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d50: 00200293 li t0,2 + 80002d54: fe5214e3 bne tp,t0,80002d3c + 80002d58: 00100393 li t2,1 + 80002d5c: 01e00193 li gp,30 + 80002d60: 10771a63 bne a4,t2,80002e74 + +0000000080002d64 : + 80002d64: 00000213 li tp,0 + 80002d68: 00d00113 li sp,13 + 80002d6c: 01200093 li ra,18 + 80002d70: 00000013 nop + 80002d74: 00000013 nop + 80002d78: 0020b733 sltu a4,ra,sp + 80002d7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d80: 00200293 li t0,2 + 80002d84: fe5212e3 bne tp,t0,80002d68 + 80002d88: 00000393 li t2,0 + 80002d8c: 01f00193 li gp,31 + 80002d90: 0e771263 bne a4,t2,80002e74 + +0000000080002d94 : + 80002d94: 00000213 li tp,0 + 80002d98: 00d00113 li sp,13 + 80002d9c: 00000013 nop + 80002da0: 00700093 li ra,7 + 80002da4: 0020b733 sltu a4,ra,sp + 80002da8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dac: 00200293 li t0,2 + 80002db0: fe5214e3 bne tp,t0,80002d98 + 80002db4: 00100393 li t2,1 + 80002db8: 02000193 li gp,32 + 80002dbc: 0a771c63 bne a4,t2,80002e74 + +0000000080002dc0 : + 80002dc0: 00000213 li tp,0 + 80002dc4: 00d00113 li sp,13 + 80002dc8: 00000013 nop + 80002dcc: 01300093 li ra,19 + 80002dd0: 00000013 nop + 80002dd4: 0020b733 sltu a4,ra,sp + 80002dd8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ddc: 00200293 li t0,2 + 80002de0: fe5212e3 bne tp,t0,80002dc4 + 80002de4: 00000393 li t2,0 + 80002de8: 02100193 li gp,33 + 80002dec: 08771463 bne a4,t2,80002e74 + +0000000080002df0 : + 80002df0: 00000213 li tp,0 + 80002df4: 00d00113 li sp,13 + 80002df8: 00000013 nop + 80002dfc: 00000013 nop + 80002e00: 00600093 li ra,6 + 80002e04: 0020b733 sltu a4,ra,sp + 80002e08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e0c: 00200293 li t0,2 + 80002e10: fe5212e3 bne tp,t0,80002df4 + 80002e14: 00100393 li t2,1 + 80002e18: 02200193 li gp,34 + 80002e1c: 04771c63 bne a4,t2,80002e74 + +0000000080002e20 : + 80002e20: fff00093 li ra,-1 + 80002e24: 00103133 snez sp,ra + 80002e28: 00100393 li t2,1 + 80002e2c: 02300193 li gp,35 + 80002e30: 04711263 bne sp,t2,80002e74 + +0000000080002e34 : + 80002e34: fff00093 li ra,-1 + 80002e38: 0000b133 sltu sp,ra,zero + 80002e3c: 00000393 li t2,0 + 80002e40: 02400193 li gp,36 + 80002e44: 02711863 bne sp,t2,80002e74 + +0000000080002e48 : + 80002e48: 000030b3 snez ra,zero + 80002e4c: 00000393 li t2,0 + 80002e50: 02500193 li gp,37 + 80002e54: 02709063 bne ra,t2,80002e74 + +0000000080002e58 : + 80002e58: 01000093 li ra,16 + 80002e5c: 01e00113 li sp,30 + 80002e60: 0020b033 sltu zero,ra,sp + 80002e64: 00000393 li t2,0 + 80002e68: 02600193 li gp,38 + 80002e6c: 00701463 bne zero,t2,80002e74 + 80002e70: 00301a63 bne zero,gp,80002e84 + +0000000080002e74 : + 80002e74: 00119513 slli a0,gp,0x1 + 80002e78: 00050063 beqz a0,80002e78 + 80002e7c: 00156513 ori a0,a0,1 + 80002e80: 00000073 ecall + +0000000080002e84 : + 80002e84: 00100513 li a0,1 + 80002e88: 00000073 ecall + 80002e8c: c0001073 unimp diff --git a/tests/rv64ui-v-sra b/tests/rv64ui-v-sra new file mode 100644 index 0000000000000000000000000000000000000000..81cafdf8e69bf0b676d4fe72142080283cbbc617 GIT binary patch literal 20504 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 C;e15^ literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sra.dump b/tests/rv64ui-v-sra.dump new file mode 100644 index 0000000..237be59 --- /dev/null +++ b/tests/rv64ui-v-sra.dump @@ -0,0 +1,1229 @@ + +rv64ui-v-sra: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: a4c50513 addi a0,a0,-1460 # 80002f20 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: a8050513 addi a0,a0,-1408 # 80002f68 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: ab450513 addi a0,a0,-1356 # 80002fb0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: ab850513 addi a0,a0,-1352 # 80002fc8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a1068693 addi a3,a3,-1520 # 80003008 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: a6050513 addi a0,a0,-1440 # 800030a8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 9a850513 addi a0,a0,-1624 # 800030d0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 93850513 addi a0,a0,-1736 # 80003070 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 8ec50513 addi a0,a0,-1812 # 80003038 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02e00793 li a5,46 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0a2f77b7 lui a5,0xa2f7 + 80002908: 00080637 lui a2,0x80 + 8000290c: 09e78793 addi a5,a5,158 # a2f709e <_start-0x75d08f62> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 7b050513 addi a0,a0,1968 # 80003100 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 00000113 li sp,0 + 80002970: 4020d733 sra a4,ra,sp + 80002974: 800003b7 lui t2,0x80000 + 80002978: 00200193 li gp,2 + 8000297c: 58771463 bne a4,t2,80002f04 + +0000000080002980 : + 80002980: 800000b7 lui ra,0x80000 + 80002984: 00100113 li sp,1 + 80002988: 4020d733 sra a4,ra,sp + 8000298c: c00003b7 lui t2,0xc0000 + 80002990: 00300193 li gp,3 + 80002994: 56771863 bne a4,t2,80002f04 + +0000000080002998 : + 80002998: 800000b7 lui ra,0x80000 + 8000299c: 00700113 li sp,7 + 800029a0: 4020d733 sra a4,ra,sp + 800029a4: ff0003b7 lui t2,0xff000 + 800029a8: 00400193 li gp,4 + 800029ac: 54771c63 bne a4,t2,80002f04 + +00000000800029b0 : + 800029b0: 800000b7 lui ra,0x80000 + 800029b4: 00e00113 li sp,14 + 800029b8: 4020d733 sra a4,ra,sp + 800029bc: fffe03b7 lui t2,0xfffe0 + 800029c0: 00500193 li gp,5 + 800029c4: 54771063 bne a4,t2,80002f04 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029d0: 01f00113 li sp,31 + 800029d4: 4020d733 sra a4,ra,sp + 800029d8: fff00393 li t2,-1 + 800029dc: 00600193 li gp,6 + 800029e0: 52771263 bne a4,t2,80002f04 + +00000000800029e4 : + 800029e4: 800000b7 lui ra,0x80000 + 800029e8: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029ec: 00000113 li sp,0 + 800029f0: 4020d733 sra a4,ra,sp + 800029f4: 800003b7 lui t2,0x80000 + 800029f8: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 800029fc: 00700193 li gp,7 + 80002a00: 50771263 bne a4,t2,80002f04 + +0000000080002a04 : + 80002a04: 800000b7 lui ra,0x80000 + 80002a08: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a0c: 00100113 li sp,1 + 80002a10: 4020d733 sra a4,ra,sp + 80002a14: 400003b7 lui t2,0x40000 + 80002a18: fff3839b addiw t2,t2,-1 # 3fffffff <_start-0x40000001> + 80002a1c: 00800193 li gp,8 + 80002a20: 4e771263 bne a4,t2,80002f04 + +0000000080002a24 : + 80002a24: 800000b7 lui ra,0x80000 + 80002a28: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a2c: 00700113 li sp,7 + 80002a30: 4020d733 sra a4,ra,sp + 80002a34: 010003b7 lui t2,0x1000 + 80002a38: fff3839b addiw t2,t2,-1 # ffffff <_start-0x7f000001> + 80002a3c: 00900193 li gp,9 + 80002a40: 4c771263 bne a4,t2,80002f04 + +0000000080002a44 : + 80002a44: 800000b7 lui ra,0x80000 + 80002a48: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a4c: 00e00113 li sp,14 + 80002a50: 4020d733 sra a4,ra,sp + 80002a54: 000203b7 lui t2,0x20 + 80002a58: fff3839b addiw t2,t2,-1 # 1ffff <_start-0x7ffe0001> + 80002a5c: 00a00193 li gp,10 + 80002a60: 4a771263 bne a4,t2,80002f04 + +0000000080002a64 : + 80002a64: 800000b7 lui ra,0x80000 + 80002a68: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a6c: 01f00113 li sp,31 + 80002a70: 4020d733 sra a4,ra,sp + 80002a74: 00000393 li t2,0 + 80002a78: 00b00193 li gp,11 + 80002a7c: 48771463 bne a4,t2,80002f04 + +0000000080002a80 : + 80002a80: 818180b7 lui ra,0x81818 + 80002a84: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a88: 00000113 li sp,0 + 80002a8c: 4020d733 sra a4,ra,sp + 80002a90: 818183b7 lui t2,0x81818 + 80002a94: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002a98: 00c00193 li gp,12 + 80002a9c: 46771463 bne a4,t2,80002f04 + +0000000080002aa0 : + 80002aa0: 818180b7 lui ra,0x81818 + 80002aa4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002aa8: 00100113 li sp,1 + 80002aac: 4020d733 sra a4,ra,sp + 80002ab0: c0c0c3b7 lui t2,0xc0c0c + 80002ab4: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002ab8: 00d00193 li gp,13 + 80002abc: 44771463 bne a4,t2,80002f04 + +0000000080002ac0 : + 80002ac0: 818180b7 lui ra,0x81818 + 80002ac4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ac8: 00700113 li sp,7 + 80002acc: 4020d733 sra a4,ra,sp + 80002ad0: ff0303b7 lui t2,0xff030 + 80002ad4: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002ad8: 00e00193 li gp,14 + 80002adc: 42771463 bne a4,t2,80002f04 + +0000000080002ae0 : + 80002ae0: 818180b7 lui ra,0x81818 + 80002ae4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ae8: 00e00113 li sp,14 + 80002aec: 4020d733 sra a4,ra,sp + 80002af0: fffe03b7 lui t2,0xfffe0 + 80002af4: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002af8: 00f00193 li gp,15 + 80002afc: 40771463 bne a4,t2,80002f04 + +0000000080002b00 : + 80002b00: 818180b7 lui ra,0x81818 + 80002b04: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b08: 01f00113 li sp,31 + 80002b0c: 4020d733 sra a4,ra,sp + 80002b10: fff00393 li t2,-1 + 80002b14: 01000193 li gp,16 + 80002b18: 3e771663 bne a4,t2,80002f04 + +0000000080002b1c : + 80002b1c: 818180b7 lui ra,0x81818 + 80002b20: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b24: fc000113 li sp,-64 + 80002b28: 4020d733 sra a4,ra,sp + 80002b2c: 818183b7 lui t2,0x81818 + 80002b30: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002b34: 01100193 li gp,17 + 80002b38: 3c771663 bne a4,t2,80002f04 + +0000000080002b3c : + 80002b3c: 818180b7 lui ra,0x81818 + 80002b40: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b44: fc100113 li sp,-63 + 80002b48: 4020d733 sra a4,ra,sp + 80002b4c: c0c0c3b7 lui t2,0xc0c0c + 80002b50: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002b54: 01200193 li gp,18 + 80002b58: 3a771663 bne a4,t2,80002f04 + +0000000080002b5c : + 80002b5c: 818180b7 lui ra,0x81818 + 80002b60: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b64: fc700113 li sp,-57 + 80002b68: 4020d733 sra a4,ra,sp + 80002b6c: ff0303b7 lui t2,0xff030 + 80002b70: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002b74: 01300193 li gp,19 + 80002b78: 38771663 bne a4,t2,80002f04 + +0000000080002b7c : + 80002b7c: 818180b7 lui ra,0x81818 + 80002b80: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b84: fce00113 li sp,-50 + 80002b88: 4020d733 sra a4,ra,sp + 80002b8c: fffe03b7 lui t2,0xfffe0 + 80002b90: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002b94: 01400193 li gp,20 + 80002b98: 36771663 bne a4,t2,80002f04 + +0000000080002b9c : + 80002b9c: 818180b7 lui ra,0x81818 + 80002ba0: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ba4: fff00113 li sp,-1 + 80002ba8: 4020d733 sra a4,ra,sp + 80002bac: fff00393 li t2,-1 + 80002bb0: 01500193 li gp,21 + 80002bb4: 34771863 bne a4,t2,80002f04 + +0000000080002bb8 : + 80002bb8: 800000b7 lui ra,0x80000 + 80002bbc: 00700113 li sp,7 + 80002bc0: 4020d0b3 sra ra,ra,sp + 80002bc4: ff0003b7 lui t2,0xff000 + 80002bc8: 01600193 li gp,22 + 80002bcc: 32709c63 bne ra,t2,80002f04 + +0000000080002bd0 : + 80002bd0: 800000b7 lui ra,0x80000 + 80002bd4: 00e00113 li sp,14 + 80002bd8: 4020d133 sra sp,ra,sp + 80002bdc: fffe03b7 lui t2,0xfffe0 + 80002be0: 01700193 li gp,23 + 80002be4: 32711063 bne sp,t2,80002f04 + +0000000080002be8 : + 80002be8: 00700093 li ra,7 + 80002bec: 4010d0b3 sra ra,ra,ra + 80002bf0: 00000393 li t2,0 + 80002bf4: 01800193 li gp,24 + 80002bf8: 30709663 bne ra,t2,80002f04 + +0000000080002bfc : + 80002bfc: 00000213 li tp,0 + 80002c00: 800000b7 lui ra,0x80000 + 80002c04: 00700113 li sp,7 + 80002c08: 4020d733 sra a4,ra,sp + 80002c0c: 00070313 mv t1,a4 + 80002c10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c14: 00200293 li t0,2 + 80002c18: fe5214e3 bne tp,t0,80002c00 + 80002c1c: ff0003b7 lui t2,0xff000 + 80002c20: 01900193 li gp,25 + 80002c24: 2e731063 bne t1,t2,80002f04 + +0000000080002c28 : + 80002c28: 00000213 li tp,0 + 80002c2c: 800000b7 lui ra,0x80000 + 80002c30: 00e00113 li sp,14 + 80002c34: 4020d733 sra a4,ra,sp + 80002c38: 00000013 nop + 80002c3c: 00070313 mv t1,a4 + 80002c40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c44: 00200293 li t0,2 + 80002c48: fe5212e3 bne tp,t0,80002c2c + 80002c4c: fffe03b7 lui t2,0xfffe0 + 80002c50: 01a00193 li gp,26 + 80002c54: 2a731863 bne t1,t2,80002f04 + +0000000080002c58 : + 80002c58: 00000213 li tp,0 + 80002c5c: 800000b7 lui ra,0x80000 + 80002c60: 01f00113 li sp,31 + 80002c64: 4020d733 sra a4,ra,sp + 80002c68: 00000013 nop + 80002c6c: 00000013 nop + 80002c70: 00070313 mv t1,a4 + 80002c74: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c78: 00200293 li t0,2 + 80002c7c: fe5210e3 bne tp,t0,80002c5c + 80002c80: fff00393 li t2,-1 + 80002c84: 01b00193 li gp,27 + 80002c88: 26731e63 bne t1,t2,80002f04 + +0000000080002c8c : + 80002c8c: 00000213 li tp,0 + 80002c90: 800000b7 lui ra,0x80000 + 80002c94: 00700113 li sp,7 + 80002c98: 4020d733 sra a4,ra,sp + 80002c9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ca0: 00200293 li t0,2 + 80002ca4: fe5216e3 bne tp,t0,80002c90 + 80002ca8: ff0003b7 lui t2,0xff000 + 80002cac: 01c00193 li gp,28 + 80002cb0: 24771a63 bne a4,t2,80002f04 + +0000000080002cb4 : + 80002cb4: 00000213 li tp,0 + 80002cb8: 800000b7 lui ra,0x80000 + 80002cbc: 00e00113 li sp,14 + 80002cc0: 00000013 nop + 80002cc4: 4020d733 sra a4,ra,sp + 80002cc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ccc: 00200293 li t0,2 + 80002cd0: fe5214e3 bne tp,t0,80002cb8 + 80002cd4: fffe03b7 lui t2,0xfffe0 + 80002cd8: 01d00193 li gp,29 + 80002cdc: 22771463 bne a4,t2,80002f04 + +0000000080002ce0 : + 80002ce0: 00000213 li tp,0 + 80002ce4: 800000b7 lui ra,0x80000 + 80002ce8: 01f00113 li sp,31 + 80002cec: 00000013 nop + 80002cf0: 00000013 nop + 80002cf4: 4020d733 sra a4,ra,sp + 80002cf8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cfc: 00200293 li t0,2 + 80002d00: fe5212e3 bne tp,t0,80002ce4 + 80002d04: fff00393 li t2,-1 + 80002d08: 01e00193 li gp,30 + 80002d0c: 1e771c63 bne a4,t2,80002f04 + +0000000080002d10 : + 80002d10: 00000213 li tp,0 + 80002d14: 800000b7 lui ra,0x80000 + 80002d18: 00000013 nop + 80002d1c: 00700113 li sp,7 + 80002d20: 4020d733 sra a4,ra,sp + 80002d24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d28: 00200293 li t0,2 + 80002d2c: fe5214e3 bne tp,t0,80002d14 + 80002d30: ff0003b7 lui t2,0xff000 + 80002d34: 01f00193 li gp,31 + 80002d38: 1c771663 bne a4,t2,80002f04 + +0000000080002d3c : + 80002d3c: 00000213 li tp,0 + 80002d40: 800000b7 lui ra,0x80000 + 80002d44: 00000013 nop + 80002d48: 00e00113 li sp,14 + 80002d4c: 00000013 nop + 80002d50: 4020d733 sra a4,ra,sp + 80002d54: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d58: 00200293 li t0,2 + 80002d5c: fe5212e3 bne tp,t0,80002d40 + 80002d60: fffe03b7 lui t2,0xfffe0 + 80002d64: 02000193 li gp,32 + 80002d68: 18771e63 bne a4,t2,80002f04 + +0000000080002d6c : + 80002d6c: 00000213 li tp,0 + 80002d70: 800000b7 lui ra,0x80000 + 80002d74: 00000013 nop + 80002d78: 00000013 nop + 80002d7c: 01f00113 li sp,31 + 80002d80: 4020d733 sra a4,ra,sp + 80002d84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d88: 00200293 li t0,2 + 80002d8c: fe5212e3 bne tp,t0,80002d70 + 80002d90: fff00393 li t2,-1 + 80002d94: 02100193 li gp,33 + 80002d98: 16771663 bne a4,t2,80002f04 + +0000000080002d9c : + 80002d9c: 00000213 li tp,0 + 80002da0: 00700113 li sp,7 + 80002da4: 800000b7 lui ra,0x80000 + 80002da8: 4020d733 sra a4,ra,sp + 80002dac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002db0: 00200293 li t0,2 + 80002db4: fe5216e3 bne tp,t0,80002da0 + 80002db8: ff0003b7 lui t2,0xff000 + 80002dbc: 02200193 li gp,34 + 80002dc0: 14771263 bne a4,t2,80002f04 + +0000000080002dc4 : + 80002dc4: 00000213 li tp,0 + 80002dc8: 00e00113 li sp,14 + 80002dcc: 800000b7 lui ra,0x80000 + 80002dd0: 00000013 nop + 80002dd4: 4020d733 sra a4,ra,sp + 80002dd8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ddc: 00200293 li t0,2 + 80002de0: fe5214e3 bne tp,t0,80002dc8 + 80002de4: fffe03b7 lui t2,0xfffe0 + 80002de8: 02300193 li gp,35 + 80002dec: 10771c63 bne a4,t2,80002f04 + +0000000080002df0 : + 80002df0: 00000213 li tp,0 + 80002df4: 01f00113 li sp,31 + 80002df8: 800000b7 lui ra,0x80000 + 80002dfc: 00000013 nop + 80002e00: 00000013 nop + 80002e04: 4020d733 sra a4,ra,sp + 80002e08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e0c: 00200293 li t0,2 + 80002e10: fe5212e3 bne tp,t0,80002df4 + 80002e14: fff00393 li t2,-1 + 80002e18: 02400193 li gp,36 + 80002e1c: 0e771463 bne a4,t2,80002f04 + +0000000080002e20 : + 80002e20: 00000213 li tp,0 + 80002e24: 00700113 li sp,7 + 80002e28: 00000013 nop + 80002e2c: 800000b7 lui ra,0x80000 + 80002e30: 4020d733 sra a4,ra,sp + 80002e34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e38: 00200293 li t0,2 + 80002e3c: fe5214e3 bne tp,t0,80002e24 + 80002e40: ff0003b7 lui t2,0xff000 + 80002e44: 02500193 li gp,37 + 80002e48: 0a771e63 bne a4,t2,80002f04 + +0000000080002e4c : + 80002e4c: 00000213 li tp,0 + 80002e50: 00e00113 li sp,14 + 80002e54: 00000013 nop + 80002e58: 800000b7 lui ra,0x80000 + 80002e5c: 00000013 nop + 80002e60: 4020d733 sra a4,ra,sp + 80002e64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e68: 00200293 li t0,2 + 80002e6c: fe5212e3 bne tp,t0,80002e50 + 80002e70: fffe03b7 lui t2,0xfffe0 + 80002e74: 02600193 li gp,38 + 80002e78: 08771663 bne a4,t2,80002f04 + +0000000080002e7c : + 80002e7c: 00000213 li tp,0 + 80002e80: 01f00113 li sp,31 + 80002e84: 00000013 nop + 80002e88: 00000013 nop + 80002e8c: 800000b7 lui ra,0x80000 + 80002e90: 4020d733 sra a4,ra,sp + 80002e94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e98: 00200293 li t0,2 + 80002e9c: fe5212e3 bne tp,t0,80002e80 + 80002ea0: fff00393 li t2,-1 + 80002ea4: 02700193 li gp,39 + 80002ea8: 04771e63 bne a4,t2,80002f04 + +0000000080002eac : + 80002eac: 00f00093 li ra,15 + 80002eb0: 40105133 sra sp,zero,ra + 80002eb4: 00000393 li t2,0 + 80002eb8: 02800193 li gp,40 + 80002ebc: 04711463 bne sp,t2,80002f04 + +0000000080002ec0 : + 80002ec0: 02000093 li ra,32 + 80002ec4: 4000d133 sra sp,ra,zero + 80002ec8: 02000393 li t2,32 + 80002ecc: 02900193 li gp,41 + 80002ed0: 02711a63 bne sp,t2,80002f04 + +0000000080002ed4 : + 80002ed4: 400050b3 sra ra,zero,zero + 80002ed8: 00000393 li t2,0 + 80002edc: 02a00193 li gp,42 + 80002ee0: 02709263 bne ra,t2,80002f04 + +0000000080002ee4 : + 80002ee4: 40000093 li ra,1024 + 80002ee8: 00001137 lui sp,0x1 + 80002eec: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002ef0: 4020d033 sra zero,ra,sp + 80002ef4: 00000393 li t2,0 + 80002ef8: 02b00193 li gp,43 + 80002efc: 00701463 bne zero,t2,80002f04 + 80002f00: 00301a63 bne zero,gp,80002f14 + +0000000080002f04 : + 80002f04: 00119513 slli a0,gp,0x1 + 80002f08: 00050063 beqz a0,80002f08 + 80002f0c: 00156513 ori a0,a0,1 + 80002f10: 00000073 ecall + +0000000080002f14 : + 80002f14: 00100513 li a0,1 + 80002f18: 00000073 ecall + 80002f1c: c0001073 unimp diff --git a/tests/rv64ui-v-srai b/tests/rv64ui-v-srai new file mode 100644 index 0000000000000000000000000000000000000000..639cb79be2141cb387bdd3348ca43ef6f925e7be GIT binary patch literal 19200 zcmeHPe{dAnegE$5?d_o-XweF!V#YpLn;#BQPPzjL5ah5;#kffdZel!RXT-5Ogj%G# z=uSxP5BKEdBoa>>nRSq2GT3R-;F)$>oWoYyG7hON*yi*gC5-U^K%}Uv&vcMG`>F6<7W{M$pLsBTa zRDS+J>xq<SgCN32p@=aVSKD3*-)Bq$d6(7b;Txt*!m%0oRms$deOD%=O zrItbBQp+K6smmd8sTGj8hFEDXj?6o1wwd z>MbafaxW!A^hZX0PDu||RvF`P%^ z4*PQ0m&3js_7$+NfPDq*E2b(@cjJDVT1Sc&-mgrpQxFT2VTMD7s;z`d%FI(a%HMdK%%OmgpByLilvODr zR=0Lxyg2d8$>P0y7|m$MU&>Z{#Ib6t9TRKhVkCDqX2poJ3`{aT)=pJgN#fY_y#5uL zCi*9f59DOpAzfe4O%__vrnjuN=x1b~+S@-L2}*+AD~T+gB);O{@S)$51>egSKwCbNYHCklnELdDSa+6lw7T3^a{lIjszNnEc zu02)gx;}ZPBmc@XwIVVONS8V)L;5Q6U7G5h_+-GIKDJe?z z?EJhc5B%8tnk0%_WviX}8zZEb1ZW6l+B@=3j0SN2s$A5<<5qu6d_$gN9N4yFS6Dgg z7fb(b`RbznS;o6H-c)HY%EsEw!q4Y0j*4oa4}Je7K@AQb9*g|1>Pnn1*#ckvt0;2gEaH;v zxc*W8krS6O7QomaBi0VY;j$rJ5FZiBzZW`mfy25A(k~s|9 z;3~l!AH%#se@@Jno7ZOr?c5PclTEm^k2PQUTvumhzg_~HSvjb$2H$dl%t_>5x$ZYlp*?{Q zU^`>kF13S>KUsLFIMha12juS}U#Q0TQ>8sUHwzD4Ri!Y-!b3l`vD_bHTzp_-KmUo1 zjs6+dpDQ-@+K+8adf{fFU&+GpHG z`>{q;nop0Cdf8N3bQkx7B&55hj2-WLnw z6@s;5;2%smxGNu!g}gkAwIxW^Ph*}oeb8I2qFgj)hS>ADnO^h6ExbQt;2|ieA5>Gm zzgoyQ&!7)w!8~;dyc|F~#?hA}=x1wf5%O)=2dti$Qv+0qwH$pZ5L?@{^K#*4;rDNW zmu$rUD+|}6eag+t6>OhTDMp1#@UL3yG3Mb&^Iua#0PE&J&n-1@X&5O(KR#F+V#FE+;86JBIxU-jjG=PMneEMCf6h+~)J(vzW_+eEoQZ)pME( z^X6d6r;bzXw1~W!_L&0KgQ}iKL1R`OS7IX~T{ML->8pD-+E|KV^QI6ZU2(8$z>2{3 zk-n;DJ<~g#RS;ugx5@kp2bulDHeQ%#^}$E>v@wOU6zOYv)-9G|^l<7j&4fam3;1S+TPE52F4a zzoTc>&vY&Q!tMqAN~i9Wfd28B`(iP>zp{dUCPgMGKK1hJ92-P@DfCB})UT}|og`8d zEAb9yb4{^iTA_=0q}}OsqASy$>~qrlwF`{ie|R z^)}oT+8PNxy0i#Kg{^eApS2rPnP($ke3tq9)DmZ346P4^d&7-k%dH;oPA5V;cLF-h zeBJG*GufIbxd#rru9l8?D%IZEc6TMURx_AiJHosDu3guD^k||jel*nHna*@|>x_kU z_ixWfwkFD}xksEIY1epvyUgKF?n6p{J0DMPmaIg!Y4R> z*@gcP$H_GwrZ}#+@ZWO0(S@_2|54-9J%5+oM}IkRAI8IT>uetOTJ;g1UyC@0>36vP zx4AyH*jCbjEAZo<7q!4EeImWF*7k4DL!vDle~;tC+|PF4D|}c_V!U5scEL`rPazwB zj_W_c^$QUjFNk)*A8`F68*F?I&n!L5@rNI=@h7kZved@?IO~|>C&TrB$lL4u{6?>( zzqr0RD_1{o#)Equ807lFtX;38f5y`H-?e`JorU8@wm!?S^cEn-XO#11&s(Ak9Dk1U zbKF*^cex+%l;w~me#G^I+|OoSc!lFX$G^ zj&R^KE#GhNSH@u47vHf4?^dZ{JR*$S7*jw8u*#_8O{@$RFrN?KSdnQB2eXxPz2 zCsA$s`HoEd5M-vymPedi20YZZceZD!mfO}ch-$l%t?^8pS=7}wQtctITAQ}+)?TbO zo&m>)x-nL$R!??xAXIw{|9|cez?e-1tQ=0tS{c5uEc|{CFZDZGT&{;?_I#OJ+`olv zg}t^|xW^W9cBU5Mj{5n$!n$XrC+v-t{eZi>{wOeJU(Yq1{ovjv8z|%JDKB2w(J>pA z9>>MjzJ>VtzH#CAkoGaHCCOQEImFs`hke#wUmSav`a=DV$Il^yx>L@xBOQCzzNN{D z+rbVZ!?3UeaCw6No|C(N$9}1FQDk`-=Jo|XFxaOKRtIY: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 77450513 addi a0,a0,1908 # 80002c48 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7a850513 addi a0,a0,1960 # 80002c90 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 7dc50513 addi a0,a0,2012 # 80002cd8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 7e050513 addi a0,a0,2016 # 80002cf0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 73868693 addi a3,a3,1848 # 80002d30 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 78850513 addi a0,a0,1928 # 80002dd0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 6d050513 addi a0,a0,1744 # 80002df8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 66050513 addi a0,a0,1632 # 80002d98 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 61450513 addi a0,a0,1556 # 80002d60 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00400793 li a5,4 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 00a547b7 lui a5,0xa54 + 80002908: 00080637 lui a2,0x80 + 8000290c: f8778793 addi a5,a5,-121 # a53f87 <_start-0x7f5ac079> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 4d850513 addi a0,a0,1240 # 80002e28 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: fff0009b addiw ra,zero,-1 + 8000296c: 02709093 slli ra,ra,0x27 + 80002970: 4000d713 srai a4,ra,0x0 + 80002974: fff0039b addiw t2,zero,-1 + 80002978: 02739393 slli t2,t2,0x27 + 8000297c: 00200193 li gp,2 + 80002980: 2a771463 bne a4,t2,80002c28 + +0000000080002984 : + 80002984: 800000b7 lui ra,0x80000 + 80002988: 4010d713 srai a4,ra,0x1 + 8000298c: c00003b7 lui t2,0xc0000 + 80002990: 00300193 li gp,3 + 80002994: 28771a63 bne a4,t2,80002c28 + +0000000080002998 : + 80002998: 800000b7 lui ra,0x80000 + 8000299c: 4070d713 srai a4,ra,0x7 + 800029a0: ff0003b7 lui t2,0xff000 + 800029a4: 00400193 li gp,4 + 800029a8: 28771063 bne a4,t2,80002c28 + +00000000800029ac : + 800029ac: 800000b7 lui ra,0x80000 + 800029b0: 40e0d713 srai a4,ra,0xe + 800029b4: fffe03b7 lui t2,0xfffe0 + 800029b8: 00500193 li gp,5 + 800029bc: 26771663 bne a4,t2,80002c28 + +00000000800029c0 : + 800029c0: 800000b7 lui ra,0x80000 + 800029c4: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029c8: 41f0d713 srai a4,ra,0x1f + 800029cc: fff00393 li t2,-1 + 800029d0: 00600193 li gp,6 + 800029d4: 24771a63 bne a4,t2,80002c28 + +00000000800029d8 : + 800029d8: 800000b7 lui ra,0x80000 + 800029dc: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029e0: 4000d713 srai a4,ra,0x0 + 800029e4: 800003b7 lui t2,0x80000 + 800029e8: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 800029ec: 00700193 li gp,7 + 800029f0: 22771c63 bne a4,t2,80002c28 + +00000000800029f4 : + 800029f4: 800000b7 lui ra,0x80000 + 800029f8: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029fc: 4010d713 srai a4,ra,0x1 + 80002a00: 400003b7 lui t2,0x40000 + 80002a04: fff3839b addiw t2,t2,-1 # 3fffffff <_start-0x40000001> + 80002a08: 00800193 li gp,8 + 80002a0c: 20771e63 bne a4,t2,80002c28 + +0000000080002a10 : + 80002a10: 800000b7 lui ra,0x80000 + 80002a14: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a18: 4070d713 srai a4,ra,0x7 + 80002a1c: 010003b7 lui t2,0x1000 + 80002a20: fff3839b addiw t2,t2,-1 # ffffff <_start-0x7f000001> + 80002a24: 00900193 li gp,9 + 80002a28: 20771063 bne a4,t2,80002c28 + +0000000080002a2c : + 80002a2c: 800000b7 lui ra,0x80000 + 80002a30: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a34: 40e0d713 srai a4,ra,0xe + 80002a38: 000203b7 lui t2,0x20 + 80002a3c: fff3839b addiw t2,t2,-1 # 1ffff <_start-0x7ffe0001> + 80002a40: 00a00193 li gp,10 + 80002a44: 1e771263 bne a4,t2,80002c28 + +0000000080002a48 : + 80002a48: 800000b7 lui ra,0x80000 + 80002a4c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a50: 41f0d713 srai a4,ra,0x1f + 80002a54: 00000393 li t2,0 + 80002a58: 00b00193 li gp,11 + 80002a5c: 1c771663 bne a4,t2,80002c28 + +0000000080002a60 : + 80002a60: 818180b7 lui ra,0x81818 + 80002a64: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a68: 4000d713 srai a4,ra,0x0 + 80002a6c: 818183b7 lui t2,0x81818 + 80002a70: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002a74: 00c00193 li gp,12 + 80002a78: 1a771863 bne a4,t2,80002c28 + +0000000080002a7c : + 80002a7c: 818180b7 lui ra,0x81818 + 80002a80: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a84: 4010d713 srai a4,ra,0x1 + 80002a88: c0c0c3b7 lui t2,0xc0c0c + 80002a8c: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002a90: 00d00193 li gp,13 + 80002a94: 18771a63 bne a4,t2,80002c28 + +0000000080002a98 : + 80002a98: 818180b7 lui ra,0x81818 + 80002a9c: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002aa0: 4070d713 srai a4,ra,0x7 + 80002aa4: ff0303b7 lui t2,0xff030 + 80002aa8: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002aac: 00e00193 li gp,14 + 80002ab0: 16771c63 bne a4,t2,80002c28 + +0000000080002ab4 : + 80002ab4: 818180b7 lui ra,0x81818 + 80002ab8: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002abc: 40e0d713 srai a4,ra,0xe + 80002ac0: fffe03b7 lui t2,0xfffe0 + 80002ac4: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002ac8: 00f00193 li gp,15 + 80002acc: 14771e63 bne a4,t2,80002c28 + +0000000080002ad0 : + 80002ad0: 818180b7 lui ra,0x81818 + 80002ad4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ad8: 41f0d713 srai a4,ra,0x1f + 80002adc: fff00393 li t2,-1 + 80002ae0: 01000193 li gp,16 + 80002ae4: 14771263 bne a4,t2,80002c28 + +0000000080002ae8 : + 80002ae8: 800000b7 lui ra,0x80000 + 80002aec: 4070d093 srai ra,ra,0x7 + 80002af0: ff0003b7 lui t2,0xff000 + 80002af4: 01100193 li gp,17 + 80002af8: 12709863 bne ra,t2,80002c28 + +0000000080002afc : + 80002afc: 00000213 li tp,0 + 80002b00: 800000b7 lui ra,0x80000 + 80002b04: 4070d713 srai a4,ra,0x7 + 80002b08: 00070313 mv t1,a4 + 80002b0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b10: 00200293 li t0,2 + 80002b14: fe5216e3 bne tp,t0,80002b00 + 80002b18: ff0003b7 lui t2,0xff000 + 80002b1c: 01200193 li gp,18 + 80002b20: 10731463 bne t1,t2,80002c28 + +0000000080002b24 : + 80002b24: 00000213 li tp,0 + 80002b28: 800000b7 lui ra,0x80000 + 80002b2c: 40e0d713 srai a4,ra,0xe + 80002b30: 00000013 nop + 80002b34: 00070313 mv t1,a4 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5214e3 bne tp,t0,80002b28 + 80002b44: fffe03b7 lui t2,0xfffe0 + 80002b48: 01300193 li gp,19 + 80002b4c: 0c731e63 bne t1,t2,80002c28 + +0000000080002b50 : + 80002b50: 00000213 li tp,0 + 80002b54: 800000b7 lui ra,0x80000 + 80002b58: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002b5c: 41f0d713 srai a4,ra,0x1f + 80002b60: 00000013 nop + 80002b64: 00000013 nop + 80002b68: 00070313 mv t1,a4 + 80002b6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b70: 00200293 li t0,2 + 80002b74: fe5210e3 bne tp,t0,80002b54 + 80002b78: fff00393 li t2,-1 + 80002b7c: 01400193 li gp,20 + 80002b80: 0a731463 bne t1,t2,80002c28 + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 800000b7 lui ra,0x80000 + 80002b8c: 4070d713 srai a4,ra,0x7 + 80002b90: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b94: 00200293 li t0,2 + 80002b98: fe5218e3 bne tp,t0,80002b88 + 80002b9c: ff0003b7 lui t2,0xff000 + 80002ba0: 01500193 li gp,21 + 80002ba4: 08771263 bne a4,t2,80002c28 + +0000000080002ba8 : + 80002ba8: 00000213 li tp,0 + 80002bac: 800000b7 lui ra,0x80000 + 80002bb0: 00000013 nop + 80002bb4: 40e0d713 srai a4,ra,0xe + 80002bb8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bbc: 00200293 li t0,2 + 80002bc0: fe5216e3 bne tp,t0,80002bac + 80002bc4: fffe03b7 lui t2,0xfffe0 + 80002bc8: 01600193 li gp,22 + 80002bcc: 04771e63 bne a4,t2,80002c28 + +0000000080002bd0 : + 80002bd0: 00000213 li tp,0 + 80002bd4: 800000b7 lui ra,0x80000 + 80002bd8: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002bdc: 00000013 nop + 80002be0: 00000013 nop + 80002be4: 41f0d713 srai a4,ra,0x1f + 80002be8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bec: 00200293 li t0,2 + 80002bf0: fe5212e3 bne tp,t0,80002bd4 + 80002bf4: fff00393 li t2,-1 + 80002bf8: 01700193 li gp,23 + 80002bfc: 02771663 bne a4,t2,80002c28 + +0000000080002c00 : + 80002c00: 40405093 srai ra,zero,0x4 + 80002c04: 00000393 li t2,0 + 80002c08: 01800193 li gp,24 + 80002c0c: 00709e63 bne ra,t2,80002c28 + +0000000080002c10 : + 80002c10: 02100093 li ra,33 + 80002c14: 40a0d013 srai zero,ra,0xa + 80002c18: 00000393 li t2,0 + 80002c1c: 01900193 li gp,25 + 80002c20: 00701463 bne zero,t2,80002c28 + 80002c24: 00301a63 bne zero,gp,80002c38 + +0000000080002c28 : + 80002c28: 00119513 slli a0,gp,0x1 + 80002c2c: 00050063 beqz a0,80002c2c + 80002c30: 00156513 ori a0,a0,1 + 80002c34: 00000073 ecall + +0000000080002c38 : + 80002c38: 00100513 li a0,1 + 80002c3c: 00000073 ecall + 80002c40: c0001073 unimp diff --git a/tests/rv64ui-v-sraiw b/tests/rv64ui-v-sraiw new file mode 100644 index 0000000000000000000000000000000000000000..5be977e07f916d1be194324648495cf8358b85e0 GIT binary patch literal 19576 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 82c50513 addi a0,a0,-2004 # 80002d00 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 86050513 addi a0,a0,-1952 # 80002d48 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 89450513 addi a0,a0,-1900 # 80002d90 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 89850513 addi a0,a0,-1896 # 80002da8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 7f068693 addi a3,a3,2032 # 80002de8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 84050513 addi a0,a0,-1984 # 80002e88 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 78850513 addi a0,a0,1928 # 80002eb0 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 71850513 addi a0,a0,1816 # 80002e50 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 6cc50513 addi a0,a0,1740 # 80002e18 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00800793 li a5,8 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0e8fe7b7 lui a5,0xe8fe + 80002908: 00080637 lui a2,0x80 + 8000290c: ca478793 addi a5,a5,-860 # e8fdca4 <_start-0x7170235c> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 59050513 addi a0,a0,1424 # 80002ee0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 4000d71b sraiw a4,ra,0x0 + 80002970: 800003b7 lui t2,0x80000 + 80002974: 00200193 li gp,2 + 80002978: 36771463 bne a4,t2,80002ce0 + +000000008000297c : + 8000297c: 800000b7 lui ra,0x80000 + 80002980: 4010d71b sraiw a4,ra,0x1 + 80002984: c00003b7 lui t2,0xc0000 + 80002988: 00300193 li gp,3 + 8000298c: 34771a63 bne a4,t2,80002ce0 + +0000000080002990 : + 80002990: 800000b7 lui ra,0x80000 + 80002994: 4070d71b sraiw a4,ra,0x7 + 80002998: ff0003b7 lui t2,0xff000 + 8000299c: 00400193 li gp,4 + 800029a0: 34771063 bne a4,t2,80002ce0 + +00000000800029a4 : + 800029a4: 800000b7 lui ra,0x80000 + 800029a8: 40e0d71b sraiw a4,ra,0xe + 800029ac: fffe03b7 lui t2,0xfffe0 + 800029b0: 00500193 li gp,5 + 800029b4: 32771663 bne a4,t2,80002ce0 + +00000000800029b8 : + 800029b8: 800000b7 lui ra,0x80000 + 800029bc: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029c0: 41f0d71b sraiw a4,ra,0x1f + 800029c4: fff00393 li t2,-1 + 800029c8: 00600193 li gp,6 + 800029cc: 30771a63 bne a4,t2,80002ce0 + +00000000800029d0 : + 800029d0: 800000b7 lui ra,0x80000 + 800029d4: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029d8: 4000d71b sraiw a4,ra,0x0 + 800029dc: 800003b7 lui t2,0x80000 + 800029e0: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 800029e4: 00700193 li gp,7 + 800029e8: 2e771c63 bne a4,t2,80002ce0 + +00000000800029ec : + 800029ec: 800000b7 lui ra,0x80000 + 800029f0: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029f4: 4010d71b sraiw a4,ra,0x1 + 800029f8: 400003b7 lui t2,0x40000 + 800029fc: fff3839b addiw t2,t2,-1 # 3fffffff <_start-0x40000001> + 80002a00: 00800193 li gp,8 + 80002a04: 2c771e63 bne a4,t2,80002ce0 + +0000000080002a08 : + 80002a08: 800000b7 lui ra,0x80000 + 80002a0c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a10: 4070d71b sraiw a4,ra,0x7 + 80002a14: 010003b7 lui t2,0x1000 + 80002a18: fff3839b addiw t2,t2,-1 # ffffff <_start-0x7f000001> + 80002a1c: 00900193 li gp,9 + 80002a20: 2c771063 bne a4,t2,80002ce0 + +0000000080002a24 : + 80002a24: 800000b7 lui ra,0x80000 + 80002a28: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a2c: 40e0d71b sraiw a4,ra,0xe + 80002a30: 000203b7 lui t2,0x20 + 80002a34: fff3839b addiw t2,t2,-1 # 1ffff <_start-0x7ffe0001> + 80002a38: 00a00193 li gp,10 + 80002a3c: 2a771263 bne a4,t2,80002ce0 + +0000000080002a40 : + 80002a40: 800000b7 lui ra,0x80000 + 80002a44: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a48: 41f0d71b sraiw a4,ra,0x1f + 80002a4c: 00000393 li t2,0 + 80002a50: 00b00193 li gp,11 + 80002a54: 28771663 bne a4,t2,80002ce0 + +0000000080002a58 : + 80002a58: 818180b7 lui ra,0x81818 + 80002a5c: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a60: 4000d71b sraiw a4,ra,0x0 + 80002a64: 818183b7 lui t2,0x81818 + 80002a68: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002a6c: 00c00193 li gp,12 + 80002a70: 26771863 bne a4,t2,80002ce0 + +0000000080002a74 : + 80002a74: 818180b7 lui ra,0x81818 + 80002a78: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a7c: 4010d71b sraiw a4,ra,0x1 + 80002a80: c0c0c3b7 lui t2,0xc0c0c + 80002a84: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002a88: 00d00193 li gp,13 + 80002a8c: 24771a63 bne a4,t2,80002ce0 + +0000000080002a90 : + 80002a90: 818180b7 lui ra,0x81818 + 80002a94: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a98: 4070d71b sraiw a4,ra,0x7 + 80002a9c: ff0303b7 lui t2,0xff030 + 80002aa0: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002aa4: 00e00193 li gp,14 + 80002aa8: 22771c63 bne a4,t2,80002ce0 + +0000000080002aac : + 80002aac: 818180b7 lui ra,0x81818 + 80002ab0: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ab4: 40e0d71b sraiw a4,ra,0xe + 80002ab8: fffe03b7 lui t2,0xfffe0 + 80002abc: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002ac0: 00f00193 li gp,15 + 80002ac4: 20771e63 bne a4,t2,80002ce0 + +0000000080002ac8 : + 80002ac8: 818180b7 lui ra,0x81818 + 80002acc: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ad0: 41f0d71b sraiw a4,ra,0x1f + 80002ad4: fff00393 li t2,-1 + 80002ad8: 01000193 li gp,16 + 80002adc: 20771263 bne a4,t2,80002ce0 + +0000000080002ae0 : + 80002ae0: fff120b7 lui ra,0xfff12 + 80002ae4: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002ae8: 00c09093 slli ra,ra,0xc + 80002aec: 67808093 addi ra,ra,1656 + 80002af0: 4000d71b sraiw a4,ra,0x0 + 80002af4: 123453b7 lui t2,0x12345 + 80002af8: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002afc: 02c00193 li gp,44 + 80002b00: 1e771063 bne a4,t2,80002ce0 + +0000000080002b04 : + 80002b04: fff120b7 lui ra,0xfff12 + 80002b08: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002b0c: 00c09093 slli ra,ra,0xc + 80002b10: 67808093 addi ra,ra,1656 + 80002b14: 4040d71b sraiw a4,ra,0x4 + 80002b18: 012343b7 lui t2,0x1234 + 80002b1c: 5673839b addiw t2,t2,1383 # 1234567 <_start-0x7edcba99> + 80002b20: 02d00193 li gp,45 + 80002b24: 1a771e63 bne a4,t2,80002ce0 + +0000000080002b28 : + 80002b28: 000920b7 lui ra,0x92 + 80002b2c: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002b30: 00c09093 slli ra,ra,0xc + 80002b34: 67808093 addi ra,ra,1656 + 80002b38: 4000d71b sraiw a4,ra,0x0 + 80002b3c: 923453b7 lui t2,0x92345 + 80002b40: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002b44: 02e00193 li gp,46 + 80002b48: 18771c63 bne a4,t2,80002ce0 + +0000000080002b4c : + 80002b4c: 000920b7 lui ra,0x92 + 80002b50: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002b54: 00c09093 slli ra,ra,0xc + 80002b58: 67808093 addi ra,ra,1656 + 80002b5c: 4040d71b sraiw a4,ra,0x4 + 80002b60: f92343b7 lui t2,0xf9234 + 80002b64: 5673839b addiw t2,t2,1383 # fffffffff9234567 + 80002b68: 02f00193 li gp,47 + 80002b6c: 16771a63 bne a4,t2,80002ce0 + +0000000080002b70 : + 80002b70: 800000b7 lui ra,0x80000 + 80002b74: 4070d09b sraiw ra,ra,0x7 + 80002b78: ff0003b7 lui t2,0xff000 + 80002b7c: 01100193 li gp,17 + 80002b80: 16709063 bne ra,t2,80002ce0 + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 800000b7 lui ra,0x80000 + 80002b8c: 4070d71b sraiw a4,ra,0x7 + 80002b90: 00070313 mv t1,a4 + 80002b94: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b98: 00200293 li t0,2 + 80002b9c: fe5216e3 bne tp,t0,80002b88 + 80002ba0: ff0003b7 lui t2,0xff000 + 80002ba4: 01200193 li gp,18 + 80002ba8: 12731c63 bne t1,t2,80002ce0 + +0000000080002bac : + 80002bac: 00000213 li tp,0 + 80002bb0: 800000b7 lui ra,0x80000 + 80002bb4: 40e0d71b sraiw a4,ra,0xe + 80002bb8: 00000013 nop + 80002bbc: 00070313 mv t1,a4 + 80002bc0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc4: 00200293 li t0,2 + 80002bc8: fe5214e3 bne tp,t0,80002bb0 + 80002bcc: fffe03b7 lui t2,0xfffe0 + 80002bd0: 01300193 li gp,19 + 80002bd4: 10731663 bne t1,t2,80002ce0 + +0000000080002bd8 : + 80002bd8: 00000213 li tp,0 + 80002bdc: 800000b7 lui ra,0x80000 + 80002be0: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002be4: 41f0d71b sraiw a4,ra,0x1f + 80002be8: 00000013 nop + 80002bec: 00000013 nop + 80002bf0: 00070313 mv t1,a4 + 80002bf4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf8: 00200293 li t0,2 + 80002bfc: fe5210e3 bne tp,t0,80002bdc + 80002c00: fff00393 li t2,-1 + 80002c04: 01400193 li gp,20 + 80002c08: 0c731c63 bne t1,t2,80002ce0 + +0000000080002c0c : + 80002c0c: 00000213 li tp,0 + 80002c10: 800000b7 lui ra,0x80000 + 80002c14: 4070d71b sraiw a4,ra,0x7 + 80002c18: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c1c: 00200293 li t0,2 + 80002c20: fe5218e3 bne tp,t0,80002c10 + 80002c24: ff0003b7 lui t2,0xff000 + 80002c28: 01500193 li gp,21 + 80002c2c: 0a771a63 bne a4,t2,80002ce0 + +0000000080002c30 : + 80002c30: 00000213 li tp,0 + 80002c34: 800000b7 lui ra,0x80000 + 80002c38: 00000013 nop + 80002c3c: 40e0d71b sraiw a4,ra,0xe + 80002c40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c44: 00200293 li t0,2 + 80002c48: fe5216e3 bne tp,t0,80002c34 + 80002c4c: fffe03b7 lui t2,0xfffe0 + 80002c50: 01600193 li gp,22 + 80002c54: 08771663 bne a4,t2,80002ce0 + +0000000080002c58 : + 80002c58: 00000213 li tp,0 + 80002c5c: 800000b7 lui ra,0x80000 + 80002c60: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002c64: 00000013 nop + 80002c68: 00000013 nop + 80002c6c: 41f0d71b sraiw a4,ra,0x1f + 80002c70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c74: 00200293 li t0,2 + 80002c78: fe5212e3 bne tp,t0,80002c5c + 80002c7c: fff00393 li t2,-1 + 80002c80: 01700193 li gp,23 + 80002c84: 04771e63 bne a4,t2,80002ce0 + +0000000080002c88 : + 80002c88: 41f0509b sraiw ra,zero,0x1f + 80002c8c: 00000393 li t2,0 + 80002c90: 01800193 li gp,24 + 80002c94: 04709663 bne ra,t2,80002ce0 + +0000000080002c98 : + 80002c98: 01f00093 li ra,31 + 80002c9c: 41c0d01b sraiw zero,ra,0x1c + 80002ca0: 00000393 li t2,0 + 80002ca4: 01900193 li gp,25 + 80002ca8: 02701c63 bne zero,t2,80002ce0 + +0000000080002cac : + 80002cac: 0070009b addiw ra,zero,7 + 80002cb0: 03509093 slli ra,ra,0x35 + 80002cb4: 41c0d71b sraiw a4,ra,0x1c + 80002cb8: 00000393 li t2,0 + 80002cbc: 01a00193 li gp,26 + 80002cc0: 02771063 bne a4,t2,80002ce0 + +0000000080002cc4 : + 80002cc4: 00f0009b addiw ra,zero,15 + 80002cc8: 01c09093 slli ra,ra,0x1c + 80002ccc: 4040d71b sraiw a4,ra,0x4 + 80002cd0: ff0003b7 lui t2,0xff000 + 80002cd4: 01b00193 li gp,27 + 80002cd8: 00771463 bne a4,t2,80002ce0 + 80002cdc: 00301a63 bne zero,gp,80002cf0 + +0000000080002ce0 : + 80002ce0: 00119513 slli a0,gp,0x1 + 80002ce4: 00050063 beqz a0,80002ce4 + 80002ce8: 00156513 ori a0,a0,1 + 80002cec: 00000073 ecall + +0000000080002cf0 : + 80002cf0: 00100513 li a0,1 + 80002cf4: 00000073 ecall + 80002cf8: c0001073 unimp diff --git a/tests/rv64ui-v-sraw b/tests/rv64ui-v-sraw new file mode 100644 index 0000000000000000000000000000000000000000..ad3b14315b3464469344f1e940d9f4078ca74506 GIT binary patch literal 20792 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sraw.dump b/tests/rv64ui-v-sraw.dump new file mode 100644 index 0000000..cfdc668 --- /dev/null +++ b/tests/rv64ui-v-sraw.dump @@ -0,0 +1,1277 @@ + +rv64ui-v-sraw: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: aec50513 addi a0,a0,-1300 # 80002fc0 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: b2050513 addi a0,a0,-1248 # 80003008 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b5450513 addi a0,a0,-1196 # 80003050 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b5850513 addi a0,a0,-1192 # 80003068 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: ab068693 addi a3,a3,-1360 # 800030a8 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: b0050513 addi a0,a0,-1280 # 80003148 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a4850513 addi a0,a0,-1464 # 80003170 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9d850513 addi a0,a0,-1576 # 80003110 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 98c50513 addi a0,a0,-1652 # 800030d8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 03400793 li a5,52 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 077137b7 lui a5,0x7713 + 80002908: 00080637 lui a2,0x80 + 8000290c: 07b78793 addi a5,a5,123 # 771307b <_start-0x788ecf85> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 85050513 addi a0,a0,-1968 # 800031a0 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 00000113 li sp,0 + 80002970: 4020d73b sraw a4,ra,sp + 80002974: 800003b7 lui t2,0x80000 + 80002978: 00200193 li gp,2 + 8000297c: 62771463 bne a4,t2,80002fa4 + +0000000080002980 : + 80002980: 800000b7 lui ra,0x80000 + 80002984: 00100113 li sp,1 + 80002988: 4020d73b sraw a4,ra,sp + 8000298c: c00003b7 lui t2,0xc0000 + 80002990: 00300193 li gp,3 + 80002994: 60771863 bne a4,t2,80002fa4 + +0000000080002998 : + 80002998: 800000b7 lui ra,0x80000 + 8000299c: 00700113 li sp,7 + 800029a0: 4020d73b sraw a4,ra,sp + 800029a4: ff0003b7 lui t2,0xff000 + 800029a8: 00400193 li gp,4 + 800029ac: 5e771c63 bne a4,t2,80002fa4 + +00000000800029b0 : + 800029b0: 800000b7 lui ra,0x80000 + 800029b4: 00e00113 li sp,14 + 800029b8: 4020d73b sraw a4,ra,sp + 800029bc: fffe03b7 lui t2,0xfffe0 + 800029c0: 00500193 li gp,5 + 800029c4: 5e771063 bne a4,t2,80002fa4 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029d0: 01f00113 li sp,31 + 800029d4: 4020d73b sraw a4,ra,sp + 800029d8: fff00393 li t2,-1 + 800029dc: 00600193 li gp,6 + 800029e0: 5c771263 bne a4,t2,80002fa4 + +00000000800029e4 : + 800029e4: 800000b7 lui ra,0x80000 + 800029e8: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 800029ec: 00000113 li sp,0 + 800029f0: 4020d73b sraw a4,ra,sp + 800029f4: 800003b7 lui t2,0x80000 + 800029f8: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 800029fc: 00700193 li gp,7 + 80002a00: 5a771263 bne a4,t2,80002fa4 + +0000000080002a04 : + 80002a04: 800000b7 lui ra,0x80000 + 80002a08: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a0c: 00100113 li sp,1 + 80002a10: 4020d73b sraw a4,ra,sp + 80002a14: 400003b7 lui t2,0x40000 + 80002a18: fff3839b addiw t2,t2,-1 # 3fffffff <_start-0x40000001> + 80002a1c: 00800193 li gp,8 + 80002a20: 58771263 bne a4,t2,80002fa4 + +0000000080002a24 : + 80002a24: 800000b7 lui ra,0x80000 + 80002a28: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a2c: 00700113 li sp,7 + 80002a30: 4020d73b sraw a4,ra,sp + 80002a34: 010003b7 lui t2,0x1000 + 80002a38: fff3839b addiw t2,t2,-1 # ffffff <_start-0x7f000001> + 80002a3c: 00900193 li gp,9 + 80002a40: 56771263 bne a4,t2,80002fa4 + +0000000080002a44 : + 80002a44: 800000b7 lui ra,0x80000 + 80002a48: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a4c: 00e00113 li sp,14 + 80002a50: 4020d73b sraw a4,ra,sp + 80002a54: 000203b7 lui t2,0x20 + 80002a58: fff3839b addiw t2,t2,-1 # 1ffff <_start-0x7ffe0001> + 80002a5c: 00a00193 li gp,10 + 80002a60: 54771263 bne a4,t2,80002fa4 + +0000000080002a64 : + 80002a64: 800000b7 lui ra,0x80000 + 80002a68: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a6c: 01f00113 li sp,31 + 80002a70: 4020d73b sraw a4,ra,sp + 80002a74: 00000393 li t2,0 + 80002a78: 00b00193 li gp,11 + 80002a7c: 52771463 bne a4,t2,80002fa4 + +0000000080002a80 : + 80002a80: 818180b7 lui ra,0x81818 + 80002a84: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002a88: 00000113 li sp,0 + 80002a8c: 4020d73b sraw a4,ra,sp + 80002a90: 818183b7 lui t2,0x81818 + 80002a94: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002a98: 00c00193 li gp,12 + 80002a9c: 50771463 bne a4,t2,80002fa4 + +0000000080002aa0 : + 80002aa0: 818180b7 lui ra,0x81818 + 80002aa4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002aa8: 00100113 li sp,1 + 80002aac: 4020d73b sraw a4,ra,sp + 80002ab0: c0c0c3b7 lui t2,0xc0c0c + 80002ab4: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002ab8: 00d00193 li gp,13 + 80002abc: 4e771463 bne a4,t2,80002fa4 + +0000000080002ac0 : + 80002ac0: 818180b7 lui ra,0x81818 + 80002ac4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ac8: 00700113 li sp,7 + 80002acc: 4020d73b sraw a4,ra,sp + 80002ad0: ff0303b7 lui t2,0xff030 + 80002ad4: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002ad8: 00e00193 li gp,14 + 80002adc: 4c771463 bne a4,t2,80002fa4 + +0000000080002ae0 : + 80002ae0: 818180b7 lui ra,0x81818 + 80002ae4: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ae8: 00e00113 li sp,14 + 80002aec: 4020d73b sraw a4,ra,sp + 80002af0: fffe03b7 lui t2,0xfffe0 + 80002af4: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002af8: 00f00193 li gp,15 + 80002afc: 4a771463 bne a4,t2,80002fa4 + +0000000080002b00 : + 80002b00: 818180b7 lui ra,0x81818 + 80002b04: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b08: 01f00113 li sp,31 + 80002b0c: 4020d73b sraw a4,ra,sp + 80002b10: fff00393 li t2,-1 + 80002b14: 01000193 li gp,16 + 80002b18: 48771663 bne a4,t2,80002fa4 + +0000000080002b1c : + 80002b1c: 818180b7 lui ra,0x81818 + 80002b20: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b24: fe000113 li sp,-32 + 80002b28: 4020d73b sraw a4,ra,sp + 80002b2c: 818183b7 lui t2,0x81818 + 80002b30: 1813839b addiw t2,t2,385 # ffffffff81818181 + 80002b34: 01100193 li gp,17 + 80002b38: 46771663 bne a4,t2,80002fa4 + +0000000080002b3c : + 80002b3c: 818180b7 lui ra,0x81818 + 80002b40: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b44: fe100113 li sp,-31 + 80002b48: 4020d73b sraw a4,ra,sp + 80002b4c: c0c0c3b7 lui t2,0xc0c0c + 80002b50: 0c03839b addiw t2,t2,192 # ffffffffc0c0c0c0 + 80002b54: 01200193 li gp,18 + 80002b58: 44771663 bne a4,t2,80002fa4 + +0000000080002b5c : + 80002b5c: 818180b7 lui ra,0x81818 + 80002b60: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b64: fe700113 li sp,-25 + 80002b68: 4020d73b sraw a4,ra,sp + 80002b6c: ff0303b7 lui t2,0xff030 + 80002b70: 3033839b addiw t2,t2,771 # ffffffffff030303 + 80002b74: 01300193 li gp,19 + 80002b78: 42771663 bne a4,t2,80002fa4 + +0000000080002b7c : + 80002b7c: 818180b7 lui ra,0x81818 + 80002b80: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002b84: fee00113 li sp,-18 + 80002b88: 4020d73b sraw a4,ra,sp + 80002b8c: fffe03b7 lui t2,0xfffe0 + 80002b90: 6063839b addiw t2,t2,1542 # fffffffffffe0606 + 80002b94: 01400193 li gp,20 + 80002b98: 40771663 bne a4,t2,80002fa4 + +0000000080002b9c : + 80002b9c: 818180b7 lui ra,0x81818 + 80002ba0: 1810809b addiw ra,ra,385 # ffffffff81818181 + 80002ba4: fff00113 li sp,-1 + 80002ba8: 4020d73b sraw a4,ra,sp + 80002bac: fff00393 li t2,-1 + 80002bb0: 01500193 li gp,21 + 80002bb4: 3e771863 bne a4,t2,80002fa4 + +0000000080002bb8 : + 80002bb8: fff120b7 lui ra,0xfff12 + 80002bbc: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002bc0: 00c09093 slli ra,ra,0xc + 80002bc4: 67808093 addi ra,ra,1656 + 80002bc8: 00000113 li sp,0 + 80002bcc: 4020d73b sraw a4,ra,sp + 80002bd0: 123453b7 lui t2,0x12345 + 80002bd4: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002bd8: 02c00193 li gp,44 + 80002bdc: 3c771463 bne a4,t2,80002fa4 + +0000000080002be0 : + 80002be0: fff120b7 lui ra,0xfff12 + 80002be4: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002be8: 00c09093 slli ra,ra,0xc + 80002bec: 67808093 addi ra,ra,1656 + 80002bf0: 00400113 li sp,4 + 80002bf4: 4020d73b sraw a4,ra,sp + 80002bf8: 012343b7 lui t2,0x1234 + 80002bfc: 5673839b addiw t2,t2,1383 # 1234567 <_start-0x7edcba99> + 80002c00: 02d00193 li gp,45 + 80002c04: 3a771063 bne a4,t2,80002fa4 + +0000000080002c08 : + 80002c08: 000920b7 lui ra,0x92 + 80002c0c: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002c10: 00c09093 slli ra,ra,0xc + 80002c14: 67808093 addi ra,ra,1656 + 80002c18: 00000113 li sp,0 + 80002c1c: 4020d73b sraw a4,ra,sp + 80002c20: 923453b7 lui t2,0x92345 + 80002c24: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002c28: 02e00193 li gp,46 + 80002c2c: 36771c63 bne a4,t2,80002fa4 + +0000000080002c30 : + 80002c30: 000920b7 lui ra,0x92 + 80002c34: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002c38: 00c09093 slli ra,ra,0xc + 80002c3c: 67808093 addi ra,ra,1656 + 80002c40: 00400113 li sp,4 + 80002c44: 4020d73b sraw a4,ra,sp + 80002c48: f92343b7 lui t2,0xf9234 + 80002c4c: 5673839b addiw t2,t2,1383 # fffffffff9234567 + 80002c50: 02f00193 li gp,47 + 80002c54: 34771863 bne a4,t2,80002fa4 + +0000000080002c58 : + 80002c58: 800000b7 lui ra,0x80000 + 80002c5c: 00700113 li sp,7 + 80002c60: 4020d0bb sraw ra,ra,sp + 80002c64: ff0003b7 lui t2,0xff000 + 80002c68: 01600193 li gp,22 + 80002c6c: 32709c63 bne ra,t2,80002fa4 + +0000000080002c70 : + 80002c70: 800000b7 lui ra,0x80000 + 80002c74: 00e00113 li sp,14 + 80002c78: 4020d13b sraw sp,ra,sp + 80002c7c: fffe03b7 lui t2,0xfffe0 + 80002c80: 01700193 li gp,23 + 80002c84: 32711063 bne sp,t2,80002fa4 + +0000000080002c88 : + 80002c88: 00700093 li ra,7 + 80002c8c: 4010d0bb sraw ra,ra,ra + 80002c90: 00000393 li t2,0 + 80002c94: 01800193 li gp,24 + 80002c98: 30709663 bne ra,t2,80002fa4 + +0000000080002c9c : + 80002c9c: 00000213 li tp,0 + 80002ca0: 800000b7 lui ra,0x80000 + 80002ca4: 00700113 li sp,7 + 80002ca8: 4020d73b sraw a4,ra,sp + 80002cac: 00070313 mv t1,a4 + 80002cb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb4: 00200293 li t0,2 + 80002cb8: fe5214e3 bne tp,t0,80002ca0 + 80002cbc: ff0003b7 lui t2,0xff000 + 80002cc0: 01900193 li gp,25 + 80002cc4: 2e731063 bne t1,t2,80002fa4 + +0000000080002cc8 : + 80002cc8: 00000213 li tp,0 + 80002ccc: 800000b7 lui ra,0x80000 + 80002cd0: 00e00113 li sp,14 + 80002cd4: 4020d73b sraw a4,ra,sp + 80002cd8: 00000013 nop + 80002cdc: 00070313 mv t1,a4 + 80002ce0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce4: 00200293 li t0,2 + 80002ce8: fe5212e3 bne tp,t0,80002ccc + 80002cec: fffe03b7 lui t2,0xfffe0 + 80002cf0: 01a00193 li gp,26 + 80002cf4: 2a731863 bne t1,t2,80002fa4 + +0000000080002cf8 : + 80002cf8: 00000213 li tp,0 + 80002cfc: 800000b7 lui ra,0x80000 + 80002d00: 01f00113 li sp,31 + 80002d04: 4020d73b sraw a4,ra,sp + 80002d08: 00000013 nop + 80002d0c: 00000013 nop + 80002d10: 00070313 mv t1,a4 + 80002d14: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d18: 00200293 li t0,2 + 80002d1c: fe5210e3 bne tp,t0,80002cfc + 80002d20: fff00393 li t2,-1 + 80002d24: 01b00193 li gp,27 + 80002d28: 26731e63 bne t1,t2,80002fa4 + +0000000080002d2c : + 80002d2c: 00000213 li tp,0 + 80002d30: 800000b7 lui ra,0x80000 + 80002d34: 00700113 li sp,7 + 80002d38: 4020d73b sraw a4,ra,sp + 80002d3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d40: 00200293 li t0,2 + 80002d44: fe5216e3 bne tp,t0,80002d30 + 80002d48: ff0003b7 lui t2,0xff000 + 80002d4c: 01c00193 li gp,28 + 80002d50: 24771a63 bne a4,t2,80002fa4 + +0000000080002d54 : + 80002d54: 00000213 li tp,0 + 80002d58: 800000b7 lui ra,0x80000 + 80002d5c: 00e00113 li sp,14 + 80002d60: 00000013 nop + 80002d64: 4020d73b sraw a4,ra,sp + 80002d68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d6c: 00200293 li t0,2 + 80002d70: fe5214e3 bne tp,t0,80002d58 + 80002d74: fffe03b7 lui t2,0xfffe0 + 80002d78: 01d00193 li gp,29 + 80002d7c: 22771463 bne a4,t2,80002fa4 + +0000000080002d80 : + 80002d80: 00000213 li tp,0 + 80002d84: 800000b7 lui ra,0x80000 + 80002d88: 01f00113 li sp,31 + 80002d8c: 00000013 nop + 80002d90: 00000013 nop + 80002d94: 4020d73b sraw a4,ra,sp + 80002d98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d9c: 00200293 li t0,2 + 80002da0: fe5212e3 bne tp,t0,80002d84 + 80002da4: fff00393 li t2,-1 + 80002da8: 01e00193 li gp,30 + 80002dac: 1e771c63 bne a4,t2,80002fa4 + +0000000080002db0 : + 80002db0: 00000213 li tp,0 + 80002db4: 800000b7 lui ra,0x80000 + 80002db8: 00000013 nop + 80002dbc: 00700113 li sp,7 + 80002dc0: 4020d73b sraw a4,ra,sp + 80002dc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc8: 00200293 li t0,2 + 80002dcc: fe5214e3 bne tp,t0,80002db4 + 80002dd0: ff0003b7 lui t2,0xff000 + 80002dd4: 01f00193 li gp,31 + 80002dd8: 1c771663 bne a4,t2,80002fa4 + +0000000080002ddc : + 80002ddc: 00000213 li tp,0 + 80002de0: 800000b7 lui ra,0x80000 + 80002de4: 00000013 nop + 80002de8: 00e00113 li sp,14 + 80002dec: 00000013 nop + 80002df0: 4020d73b sraw a4,ra,sp + 80002df4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002df8: 00200293 li t0,2 + 80002dfc: fe5212e3 bne tp,t0,80002de0 + 80002e00: fffe03b7 lui t2,0xfffe0 + 80002e04: 02000193 li gp,32 + 80002e08: 18771e63 bne a4,t2,80002fa4 + +0000000080002e0c : + 80002e0c: 00000213 li tp,0 + 80002e10: 800000b7 lui ra,0x80000 + 80002e14: 00000013 nop + 80002e18: 00000013 nop + 80002e1c: 01f00113 li sp,31 + 80002e20: 4020d73b sraw a4,ra,sp + 80002e24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e28: 00200293 li t0,2 + 80002e2c: fe5212e3 bne tp,t0,80002e10 + 80002e30: fff00393 li t2,-1 + 80002e34: 02100193 li gp,33 + 80002e38: 16771663 bne a4,t2,80002fa4 + +0000000080002e3c : + 80002e3c: 00000213 li tp,0 + 80002e40: 00700113 li sp,7 + 80002e44: 800000b7 lui ra,0x80000 + 80002e48: 4020d73b sraw a4,ra,sp + 80002e4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e50: 00200293 li t0,2 + 80002e54: fe5216e3 bne tp,t0,80002e40 + 80002e58: ff0003b7 lui t2,0xff000 + 80002e5c: 02200193 li gp,34 + 80002e60: 14771263 bne a4,t2,80002fa4 + +0000000080002e64 : + 80002e64: 00000213 li tp,0 + 80002e68: 00e00113 li sp,14 + 80002e6c: 800000b7 lui ra,0x80000 + 80002e70: 00000013 nop + 80002e74: 4020d73b sraw a4,ra,sp + 80002e78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e7c: 00200293 li t0,2 + 80002e80: fe5214e3 bne tp,t0,80002e68 + 80002e84: fffe03b7 lui t2,0xfffe0 + 80002e88: 02300193 li gp,35 + 80002e8c: 10771c63 bne a4,t2,80002fa4 + +0000000080002e90 : + 80002e90: 00000213 li tp,0 + 80002e94: 01f00113 li sp,31 + 80002e98: 800000b7 lui ra,0x80000 + 80002e9c: 00000013 nop + 80002ea0: 00000013 nop + 80002ea4: 4020d73b sraw a4,ra,sp + 80002ea8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002eac: 00200293 li t0,2 + 80002eb0: fe5212e3 bne tp,t0,80002e94 + 80002eb4: fff00393 li t2,-1 + 80002eb8: 02400193 li gp,36 + 80002ebc: 0e771463 bne a4,t2,80002fa4 + +0000000080002ec0 : + 80002ec0: 00000213 li tp,0 + 80002ec4: 00700113 li sp,7 + 80002ec8: 00000013 nop + 80002ecc: 800000b7 lui ra,0x80000 + 80002ed0: 4020d73b sraw a4,ra,sp + 80002ed4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ed8: 00200293 li t0,2 + 80002edc: fe5214e3 bne tp,t0,80002ec4 + 80002ee0: ff0003b7 lui t2,0xff000 + 80002ee4: 02500193 li gp,37 + 80002ee8: 0a771e63 bne a4,t2,80002fa4 + +0000000080002eec : + 80002eec: 00000213 li tp,0 + 80002ef0: 00e00113 li sp,14 + 80002ef4: 00000013 nop + 80002ef8: 800000b7 lui ra,0x80000 + 80002efc: 00000013 nop + 80002f00: 4020d73b sraw a4,ra,sp + 80002f04: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f08: 00200293 li t0,2 + 80002f0c: fe5212e3 bne tp,t0,80002ef0 + 80002f10: fffe03b7 lui t2,0xfffe0 + 80002f14: 02600193 li gp,38 + 80002f18: 08771663 bne a4,t2,80002fa4 + +0000000080002f1c : + 80002f1c: 00000213 li tp,0 + 80002f20: 01f00113 li sp,31 + 80002f24: 00000013 nop + 80002f28: 00000013 nop + 80002f2c: 800000b7 lui ra,0x80000 + 80002f30: 4020d73b sraw a4,ra,sp + 80002f34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f38: 00200293 li t0,2 + 80002f3c: fe5212e3 bne tp,t0,80002f20 + 80002f40: fff00393 li t2,-1 + 80002f44: 02700193 li gp,39 + 80002f48: 04771e63 bne a4,t2,80002fa4 + +0000000080002f4c : + 80002f4c: 00f00093 li ra,15 + 80002f50: 4010513b sraw sp,zero,ra + 80002f54: 00000393 li t2,0 + 80002f58: 02800193 li gp,40 + 80002f5c: 04711463 bne sp,t2,80002fa4 + +0000000080002f60 : + 80002f60: 02000093 li ra,32 + 80002f64: 4000d13b sraw sp,ra,zero + 80002f68: 02000393 li t2,32 + 80002f6c: 02900193 li gp,41 + 80002f70: 02711a63 bne sp,t2,80002fa4 + +0000000080002f74 : + 80002f74: 400050bb sraw ra,zero,zero + 80002f78: 00000393 li t2,0 + 80002f7c: 02a00193 li gp,42 + 80002f80: 02709263 bne ra,t2,80002fa4 + +0000000080002f84 : + 80002f84: 40000093 li ra,1024 + 80002f88: 00001137 lui sp,0x1 + 80002f8c: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002f90: 4020d03b sraw zero,ra,sp + 80002f94: 00000393 li t2,0 + 80002f98: 02b00193 li gp,43 + 80002f9c: 00701463 bne zero,t2,80002fa4 + 80002fa0: 00301a63 bne zero,gp,80002fb4 + +0000000080002fa4 : + 80002fa4: 00119513 slli a0,gp,0x1 + 80002fa8: 00050063 beqz a0,80002fa8 + 80002fac: 00156513 ori a0,a0,1 + 80002fb0: 00000073 ecall + +0000000080002fb4 : + 80002fb4: 00100513 li a0,1 + 80002fb8: 00000073 ecall + 80002fbc: c0001073 unimp diff --git a/tests/rv64ui-v-srl b/tests/rv64ui-v-srl new file mode 100644 index 0000000000000000000000000000000000000000..6b81c146a7d324544d5dfafd3c9c9439a29dea49 GIT binary patch literal 20616 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-srl.dump b/tests/rv64ui-v-srl.dump new file mode 100644 index 0000000..2550e33 --- /dev/null +++ b/tests/rv64ui-v-srl.dump @@ -0,0 +1,1256 @@ + +rv64ui-v-srl: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: abc50513 addi a0,a0,-1348 # 80002f90 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: af050513 addi a0,a0,-1296 # 80002fd8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b2450513 addi a0,a0,-1244 # 80003020 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b2850513 addi a0,a0,-1240 # 80003038 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a8068693 addi a3,a3,-1408 # 80003078 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: ad050513 addi a0,a0,-1328 # 80003118 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a1850513 addi a0,a0,-1512 # 80003140 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9a850513 addi a0,a0,-1624 # 800030e0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 95c50513 addi a0,a0,-1700 # 800030a8 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02700793 li a5,39 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 01e8a7b7 lui a5,0x1e8a + 80002908: 00080637 lui a2,0x80 + 8000290c: 84078793 addi a5,a5,-1984 # 1e89840 <_start-0x7e1767c0> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 82050513 addi a0,a0,-2016 # 80003170 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 00000113 li sp,0 + 80002970: 0020d733 srl a4,ra,sp + 80002974: 800003b7 lui t2,0x80000 + 80002978: 00200193 li gp,2 + 8000297c: 5e771a63 bne a4,t2,80002f70 + +0000000080002980 : + 80002980: 800000b7 lui ra,0x80000 + 80002984: 00100113 li sp,1 + 80002988: 0020d733 srl a4,ra,sp + 8000298c: 0010039b addiw t2,zero,1 + 80002990: 02139393 slli t2,t2,0x21 + 80002994: fff38393 addi t2,t2,-1 # ffffffff7fffffff + 80002998: 01e39393 slli t2,t2,0x1e + 8000299c: 00300193 li gp,3 + 800029a0: 5c771863 bne a4,t2,80002f70 + +00000000800029a4 : + 800029a4: 800000b7 lui ra,0x80000 + 800029a8: 00700113 li sp,7 + 800029ac: 0020d733 srl a4,ra,sp + 800029b0: 0010039b addiw t2,zero,1 + 800029b4: 02139393 slli t2,t2,0x21 + 800029b8: fff38393 addi t2,t2,-1 + 800029bc: 01839393 slli t2,t2,0x18 + 800029c0: 00400193 li gp,4 + 800029c4: 5a771663 bne a4,t2,80002f70 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 00e00113 li sp,14 + 800029d0: 0020d733 srl a4,ra,sp + 800029d4: 0010039b addiw t2,zero,1 + 800029d8: 02139393 slli t2,t2,0x21 + 800029dc: fff38393 addi t2,t2,-1 + 800029e0: 01139393 slli t2,t2,0x11 + 800029e4: 00500193 li gp,5 + 800029e8: 58771463 bne a4,t2,80002f70 + +00000000800029ec : + 800029ec: 800000b7 lui ra,0x80000 + 800029f0: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029f4: 01f00113 li sp,31 + 800029f8: 0020d733 srl a4,ra,sp + 800029fc: 0010039b addiw t2,zero,1 + 80002a00: 02139393 slli t2,t2,0x21 + 80002a04: fff38393 addi t2,t2,-1 + 80002a08: 00600193 li gp,6 + 80002a0c: 56771263 bne a4,t2,80002f70 + +0000000080002a10 : + 80002a10: fff00093 li ra,-1 + 80002a14: 00000113 li sp,0 + 80002a18: 0020d733 srl a4,ra,sp + 80002a1c: fff00393 li t2,-1 + 80002a20: 00700193 li gp,7 + 80002a24: 54771663 bne a4,t2,80002f70 + +0000000080002a28 : + 80002a28: fff00093 li ra,-1 + 80002a2c: 00100113 li sp,1 + 80002a30: 0020d733 srl a4,ra,sp + 80002a34: fff0039b addiw t2,zero,-1 + 80002a38: 03f39393 slli t2,t2,0x3f + 80002a3c: fff38393 addi t2,t2,-1 + 80002a40: 00800193 li gp,8 + 80002a44: 52771663 bne a4,t2,80002f70 + +0000000080002a48 : + 80002a48: fff00093 li ra,-1 + 80002a4c: 00700113 li sp,7 + 80002a50: 0020d733 srl a4,ra,sp + 80002a54: 0010039b addiw t2,zero,1 + 80002a58: 03939393 slli t2,t2,0x39 + 80002a5c: fff38393 addi t2,t2,-1 + 80002a60: 00900193 li gp,9 + 80002a64: 50771663 bne a4,t2,80002f70 + +0000000080002a68 : + 80002a68: fff00093 li ra,-1 + 80002a6c: 00e00113 li sp,14 + 80002a70: 0020d733 srl a4,ra,sp + 80002a74: 0010039b addiw t2,zero,1 + 80002a78: 03239393 slli t2,t2,0x32 + 80002a7c: fff38393 addi t2,t2,-1 + 80002a80: 00a00193 li gp,10 + 80002a84: 4e771663 bne a4,t2,80002f70 + +0000000080002a88 : + 80002a88: fff00093 li ra,-1 + 80002a8c: 01f00113 li sp,31 + 80002a90: 0020d733 srl a4,ra,sp + 80002a94: 0010039b addiw t2,zero,1 + 80002a98: 02139393 slli t2,t2,0x21 + 80002a9c: fff38393 addi t2,t2,-1 + 80002aa0: 00b00193 li gp,11 + 80002aa4: 4c771663 bne a4,t2,80002f70 + +0000000080002aa8 : + 80002aa8: 212120b7 lui ra,0x21212 + 80002aac: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ab0: 00000113 li sp,0 + 80002ab4: 0020d733 srl a4,ra,sp + 80002ab8: 212123b7 lui t2,0x21212 + 80002abc: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002ac0: 00c00193 li gp,12 + 80002ac4: 4a771663 bne a4,t2,80002f70 + +0000000080002ac8 : + 80002ac8: 212120b7 lui ra,0x21212 + 80002acc: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ad0: 00100113 li sp,1 + 80002ad4: 0020d733 srl a4,ra,sp + 80002ad8: 109093b7 lui t2,0x10909 + 80002adc: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002ae0: 00d00193 li gp,13 + 80002ae4: 48771663 bne a4,t2,80002f70 + +0000000080002ae8 : + 80002ae8: 212120b7 lui ra,0x21212 + 80002aec: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002af0: 00700113 li sp,7 + 80002af4: 0020d733 srl a4,ra,sp + 80002af8: 004243b7 lui t2,0x424 + 80002afc: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002b00: 00e00193 li gp,14 + 80002b04: 46771663 bne a4,t2,80002f70 + +0000000080002b08 : + 80002b08: 212120b7 lui ra,0x21212 + 80002b0c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b10: 00e00113 li sp,14 + 80002b14: 0020d733 srl a4,ra,sp + 80002b18: 000083b7 lui t2,0x8 + 80002b1c: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002b20: 00f00193 li gp,15 + 80002b24: 44771663 bne a4,t2,80002f70 + +0000000080002b28 : + 80002b28: 212120b7 lui ra,0x21212 + 80002b2c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b30: 01f00113 li sp,31 + 80002b34: 0020d733 srl a4,ra,sp + 80002b38: 00000393 li t2,0 + 80002b3c: 01000193 li gp,16 + 80002b40: 42771863 bne a4,t2,80002f70 + +0000000080002b44 : + 80002b44: 212120b7 lui ra,0x21212 + 80002b48: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b4c: fc000113 li sp,-64 + 80002b50: 0020d733 srl a4,ra,sp + 80002b54: 212123b7 lui t2,0x21212 + 80002b58: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b5c: 01100193 li gp,17 + 80002b60: 40771863 bne a4,t2,80002f70 + +0000000080002b64 : + 80002b64: 212120b7 lui ra,0x21212 + 80002b68: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b6c: fc100113 li sp,-63 + 80002b70: 0020d733 srl a4,ra,sp + 80002b74: 109093b7 lui t2,0x10909 + 80002b78: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002b7c: 01200193 li gp,18 + 80002b80: 3e771863 bne a4,t2,80002f70 + +0000000080002b84 : + 80002b84: 212120b7 lui ra,0x21212 + 80002b88: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b8c: fc700113 li sp,-57 + 80002b90: 0020d733 srl a4,ra,sp + 80002b94: 004243b7 lui t2,0x424 + 80002b98: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002b9c: 01300193 li gp,19 + 80002ba0: 3c771863 bne a4,t2,80002f70 + +0000000080002ba4 : + 80002ba4: 212120b7 lui ra,0x21212 + 80002ba8: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002bac: fce00113 li sp,-50 + 80002bb0: 0020d733 srl a4,ra,sp + 80002bb4: 000083b7 lui t2,0x8 + 80002bb8: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002bbc: 01400193 li gp,20 + 80002bc0: 3a771863 bne a4,t2,80002f70 + +0000000080002bc4 : + 80002bc4: 212120b7 lui ra,0x21212 + 80002bc8: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002bcc: fff00113 li sp,-1 + 80002bd0: 0020d733 srl a4,ra,sp + 80002bd4: 00000393 li t2,0 + 80002bd8: 01500193 li gp,21 + 80002bdc: 38771a63 bne a4,t2,80002f70 + +0000000080002be0 : + 80002be0: 0010009b addiw ra,zero,1 + 80002be4: 01f09093 slli ra,ra,0x1f + 80002be8: 00700113 li sp,7 + 80002bec: 0020d0b3 srl ra,ra,sp + 80002bf0: 010003b7 lui t2,0x1000 + 80002bf4: 01600193 li gp,22 + 80002bf8: 36709c63 bne ra,t2,80002f70 + +0000000080002bfc : + 80002bfc: 0010009b addiw ra,zero,1 + 80002c00: 01f09093 slli ra,ra,0x1f + 80002c04: 00e00113 li sp,14 + 80002c08: 0020d133 srl sp,ra,sp + 80002c0c: 000203b7 lui t2,0x20 + 80002c10: 01700193 li gp,23 + 80002c14: 34711e63 bne sp,t2,80002f70 + +0000000080002c18 : + 80002c18: 00700093 li ra,7 + 80002c1c: 0010d0b3 srl ra,ra,ra + 80002c20: 00000393 li t2,0 + 80002c24: 01800193 li gp,24 + 80002c28: 34709463 bne ra,t2,80002f70 + +0000000080002c2c : + 80002c2c: 00000213 li tp,0 + 80002c30: 0010009b addiw ra,zero,1 + 80002c34: 01f09093 slli ra,ra,0x1f + 80002c38: 00700113 li sp,7 + 80002c3c: 0020d733 srl a4,ra,sp + 80002c40: 00070313 mv t1,a4 + 80002c44: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c48: 00200293 li t0,2 + 80002c4c: fe5212e3 bne tp,t0,80002c30 + 80002c50: 010003b7 lui t2,0x1000 + 80002c54: 01900193 li gp,25 + 80002c58: 30731c63 bne t1,t2,80002f70 + +0000000080002c5c : + 80002c5c: 00000213 li tp,0 + 80002c60: 0010009b addiw ra,zero,1 + 80002c64: 01f09093 slli ra,ra,0x1f + 80002c68: 00e00113 li sp,14 + 80002c6c: 0020d733 srl a4,ra,sp + 80002c70: 00000013 nop + 80002c74: 00070313 mv t1,a4 + 80002c78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c7c: 00200293 li t0,2 + 80002c80: fe5210e3 bne tp,t0,80002c60 + 80002c84: 000203b7 lui t2,0x20 + 80002c88: 01a00193 li gp,26 + 80002c8c: 2e731263 bne t1,t2,80002f70 + +0000000080002c90 : + 80002c90: 00000213 li tp,0 + 80002c94: 0010009b addiw ra,zero,1 + 80002c98: 01f09093 slli ra,ra,0x1f + 80002c9c: 01f00113 li sp,31 + 80002ca0: 0020d733 srl a4,ra,sp + 80002ca4: 00000013 nop + 80002ca8: 00000013 nop + 80002cac: 00070313 mv t1,a4 + 80002cb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb4: 00200293 li t0,2 + 80002cb8: fc521ee3 bne tp,t0,80002c94 + 80002cbc: 00100393 li t2,1 + 80002cc0: 01b00193 li gp,27 + 80002cc4: 2a731663 bne t1,t2,80002f70 + +0000000080002cc8 : + 80002cc8: 00000213 li tp,0 + 80002ccc: 0010009b addiw ra,zero,1 + 80002cd0: 01f09093 slli ra,ra,0x1f + 80002cd4: 00700113 li sp,7 + 80002cd8: 0020d733 srl a4,ra,sp + 80002cdc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce0: 00200293 li t0,2 + 80002ce4: fe5214e3 bne tp,t0,80002ccc + 80002ce8: 010003b7 lui t2,0x1000 + 80002cec: 01c00193 li gp,28 + 80002cf0: 28771063 bne a4,t2,80002f70 + +0000000080002cf4 : + 80002cf4: 00000213 li tp,0 + 80002cf8: 0010009b addiw ra,zero,1 + 80002cfc: 01f09093 slli ra,ra,0x1f + 80002d00: 00e00113 li sp,14 + 80002d04: 00000013 nop + 80002d08: 0020d733 srl a4,ra,sp + 80002d0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d10: 00200293 li t0,2 + 80002d14: fe5212e3 bne tp,t0,80002cf8 + 80002d18: 000203b7 lui t2,0x20 + 80002d1c: 01d00193 li gp,29 + 80002d20: 24771863 bne a4,t2,80002f70 + +0000000080002d24 : + 80002d24: 00000213 li tp,0 + 80002d28: 0010009b addiw ra,zero,1 + 80002d2c: 01f09093 slli ra,ra,0x1f + 80002d30: 01f00113 li sp,31 + 80002d34: 00000013 nop + 80002d38: 00000013 nop + 80002d3c: 0020d733 srl a4,ra,sp + 80002d40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d44: 00200293 li t0,2 + 80002d48: fe5210e3 bne tp,t0,80002d28 + 80002d4c: 00100393 li t2,1 + 80002d50: 01e00193 li gp,30 + 80002d54: 20771e63 bne a4,t2,80002f70 + +0000000080002d58 : + 80002d58: 00000213 li tp,0 + 80002d5c: 0010009b addiw ra,zero,1 + 80002d60: 01f09093 slli ra,ra,0x1f + 80002d64: 00000013 nop + 80002d68: 00700113 li sp,7 + 80002d6c: 0020d733 srl a4,ra,sp + 80002d70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d74: 00200293 li t0,2 + 80002d78: fe5212e3 bne tp,t0,80002d5c + 80002d7c: 010003b7 lui t2,0x1000 + 80002d80: 01f00193 li gp,31 + 80002d84: 1e771663 bne a4,t2,80002f70 + +0000000080002d88 : + 80002d88: 00000213 li tp,0 + 80002d8c: 0010009b addiw ra,zero,1 + 80002d90: 01f09093 slli ra,ra,0x1f + 80002d94: 00000013 nop + 80002d98: 00e00113 li sp,14 + 80002d9c: 00000013 nop + 80002da0: 0020d733 srl a4,ra,sp + 80002da4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002da8: 00200293 li t0,2 + 80002dac: fe5210e3 bne tp,t0,80002d8c + 80002db0: 000203b7 lui t2,0x20 + 80002db4: 02000193 li gp,32 + 80002db8: 1a771c63 bne a4,t2,80002f70 + +0000000080002dbc : + 80002dbc: 00000213 li tp,0 + 80002dc0: 0010009b addiw ra,zero,1 + 80002dc4: 01f09093 slli ra,ra,0x1f + 80002dc8: 00000013 nop + 80002dcc: 00000013 nop + 80002dd0: 01f00113 li sp,31 + 80002dd4: 0020d733 srl a4,ra,sp + 80002dd8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ddc: 00200293 li t0,2 + 80002de0: fe5210e3 bne tp,t0,80002dc0 + 80002de4: 00100393 li t2,1 + 80002de8: 02100193 li gp,33 + 80002dec: 18771263 bne a4,t2,80002f70 + +0000000080002df0 : + 80002df0: 00000213 li tp,0 + 80002df4: 00700113 li sp,7 + 80002df8: 0010009b addiw ra,zero,1 + 80002dfc: 01f09093 slli ra,ra,0x1f + 80002e00: 0020d733 srl a4,ra,sp + 80002e04: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e08: 00200293 li t0,2 + 80002e0c: fe5214e3 bne tp,t0,80002df4 + 80002e10: 010003b7 lui t2,0x1000 + 80002e14: 02200193 li gp,34 + 80002e18: 14771c63 bne a4,t2,80002f70 + +0000000080002e1c : + 80002e1c: 00000213 li tp,0 + 80002e20: 00e00113 li sp,14 + 80002e24: 0010009b addiw ra,zero,1 + 80002e28: 01f09093 slli ra,ra,0x1f + 80002e2c: 00000013 nop + 80002e30: 0020d733 srl a4,ra,sp + 80002e34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e38: 00200293 li t0,2 + 80002e3c: fe5212e3 bne tp,t0,80002e20 + 80002e40: 000203b7 lui t2,0x20 + 80002e44: 02300193 li gp,35 + 80002e48: 12771463 bne a4,t2,80002f70 + +0000000080002e4c : + 80002e4c: 00000213 li tp,0 + 80002e50: 01f00113 li sp,31 + 80002e54: 0010009b addiw ra,zero,1 + 80002e58: 01f09093 slli ra,ra,0x1f + 80002e5c: 00000013 nop + 80002e60: 00000013 nop + 80002e64: 0020d733 srl a4,ra,sp + 80002e68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e6c: 00200293 li t0,2 + 80002e70: fe5210e3 bne tp,t0,80002e50 + 80002e74: 00100393 li t2,1 + 80002e78: 02400193 li gp,36 + 80002e7c: 0e771a63 bne a4,t2,80002f70 + +0000000080002e80 : + 80002e80: 00000213 li tp,0 + 80002e84: 00700113 li sp,7 + 80002e88: 00000013 nop + 80002e8c: 0010009b addiw ra,zero,1 + 80002e90: 01f09093 slli ra,ra,0x1f + 80002e94: 0020d733 srl a4,ra,sp + 80002e98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e9c: 00200293 li t0,2 + 80002ea0: fe5212e3 bne tp,t0,80002e84 + 80002ea4: 010003b7 lui t2,0x1000 + 80002ea8: 02500193 li gp,37 + 80002eac: 0c771263 bne a4,t2,80002f70 + +0000000080002eb0 : + 80002eb0: 00000213 li tp,0 + 80002eb4: 00e00113 li sp,14 + 80002eb8: 00000013 nop + 80002ebc: 0010009b addiw ra,zero,1 + 80002ec0: 01f09093 slli ra,ra,0x1f + 80002ec4: 00000013 nop + 80002ec8: 0020d733 srl a4,ra,sp + 80002ecc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ed0: 00200293 li t0,2 + 80002ed4: fe5210e3 bne tp,t0,80002eb4 + 80002ed8: 000203b7 lui t2,0x20 + 80002edc: 02600193 li gp,38 + 80002ee0: 08771863 bne a4,t2,80002f70 + +0000000080002ee4 : + 80002ee4: 00000213 li tp,0 + 80002ee8: 01f00113 li sp,31 + 80002eec: 00000013 nop + 80002ef0: 00000013 nop + 80002ef4: 0010009b addiw ra,zero,1 + 80002ef8: 01f09093 slli ra,ra,0x1f + 80002efc: 0020d733 srl a4,ra,sp + 80002f00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f04: 00200293 li t0,2 + 80002f08: fe5210e3 bne tp,t0,80002ee8 + 80002f0c: 00100393 li t2,1 + 80002f10: 02700193 li gp,39 + 80002f14: 04771e63 bne a4,t2,80002f70 + +0000000080002f18 : + 80002f18: 00f00093 li ra,15 + 80002f1c: 00105133 srl sp,zero,ra + 80002f20: 00000393 li t2,0 + 80002f24: 02800193 li gp,40 + 80002f28: 04711463 bne sp,t2,80002f70 + +0000000080002f2c : + 80002f2c: 02000093 li ra,32 + 80002f30: 0000d133 srl sp,ra,zero + 80002f34: 02000393 li t2,32 + 80002f38: 02900193 li gp,41 + 80002f3c: 02711a63 bne sp,t2,80002f70 + +0000000080002f40 : + 80002f40: 000050b3 srl ra,zero,zero + 80002f44: 00000393 li t2,0 + 80002f48: 02a00193 li gp,42 + 80002f4c: 02709263 bne ra,t2,80002f70 + +0000000080002f50 : + 80002f50: 40000093 li ra,1024 + 80002f54: 00001137 lui sp,0x1 + 80002f58: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002f5c: 0020d033 srl zero,ra,sp + 80002f60: 00000393 li t2,0 + 80002f64: 02b00193 li gp,43 + 80002f68: 00701463 bne zero,t2,80002f70 + 80002f6c: 00301a63 bne zero,gp,80002f80 + +0000000080002f70 : + 80002f70: 00119513 slli a0,gp,0x1 + 80002f74: 00050063 beqz a0,80002f74 + 80002f78: 00156513 ori a0,a0,1 + 80002f7c: 00000073 ecall + +0000000080002f80 : + 80002f80: 00100513 li a0,1 + 80002f84: 00000073 ecall + 80002f88: c0001073 unimp diff --git a/tests/rv64ui-v-srli b/tests/rv64ui-v-srli new file mode 100644 index 0000000000000000000000000000000000000000..835a40bea51ab8578b7caa4a8ff3cd578f10737a GIT binary patch literal 19256 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-srli.dump b/tests/rv64ui-v-srli.dump new file mode 100644 index 0000000..063dd5b --- /dev/null +++ b/tests/rv64ui-v-srli.dump @@ -0,0 +1,1025 @@ + +rv64ui-v-srli: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 7ac50513 addi a0,a0,1964 # 80002c80 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 7e050513 addi a0,a0,2016 # 80002cc8 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 81450513 addi a0,a0,-2028 # 80002d10 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 81850513 addi a0,a0,-2024 # 80002d28 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 77068693 addi a3,a3,1904 # 80002d68 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 7c050513 addi a0,a0,1984 # 80002e08 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 70850513 addi a0,a0,1800 # 80002e30 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 69850513 addi a0,a0,1688 # 80002dd0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 64c50513 addi a0,a0,1612 # 80002d98 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02e00793 li a5,46 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0d3727b7 lui a5,0xd372 + 80002908: 00080637 lui a2,0x80 + 8000290c: 50c78793 addi a5,a5,1292 # d37250c <_start-0x72c8daf4> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 51050513 addi a0,a0,1296 # 80002e60 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 0000d713 srli a4,ra,0x0 + 80002970: 800003b7 lui t2,0x80000 + 80002974: 00200193 li gp,2 + 80002978: 2e771663 bne a4,t2,80002c64 + +000000008000297c : + 8000297c: 800000b7 lui ra,0x80000 + 80002980: 0010d713 srli a4,ra,0x1 + 80002984: 0010039b addiw t2,zero,1 + 80002988: 02139393 slli t2,t2,0x21 + 8000298c: fff38393 addi t2,t2,-1 # ffffffff7fffffff + 80002990: 01e39393 slli t2,t2,0x1e + 80002994: 00300193 li gp,3 + 80002998: 2c771663 bne a4,t2,80002c64 + +000000008000299c : + 8000299c: 800000b7 lui ra,0x80000 + 800029a0: 0070d713 srli a4,ra,0x7 + 800029a4: 0010039b addiw t2,zero,1 + 800029a8: 02139393 slli t2,t2,0x21 + 800029ac: fff38393 addi t2,t2,-1 + 800029b0: 01839393 slli t2,t2,0x18 + 800029b4: 00400193 li gp,4 + 800029b8: 2a771663 bne a4,t2,80002c64 + +00000000800029bc : + 800029bc: 800000b7 lui ra,0x80000 + 800029c0: 00e0d713 srli a4,ra,0xe + 800029c4: 0010039b addiw t2,zero,1 + 800029c8: 02139393 slli t2,t2,0x21 + 800029cc: fff38393 addi t2,t2,-1 + 800029d0: 01139393 slli t2,t2,0x11 + 800029d4: 00500193 li gp,5 + 800029d8: 28771663 bne a4,t2,80002c64 + +00000000800029dc : + 800029dc: 800000b7 lui ra,0x80000 + 800029e0: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029e4: 01f0d713 srli a4,ra,0x1f + 800029e8: 0010039b addiw t2,zero,1 + 800029ec: 02139393 slli t2,t2,0x21 + 800029f0: fff38393 addi t2,t2,-1 + 800029f4: 00600193 li gp,6 + 800029f8: 26771663 bne a4,t2,80002c64 + +00000000800029fc : + 800029fc: fff00093 li ra,-1 + 80002a00: 0000d713 srli a4,ra,0x0 + 80002a04: fff00393 li t2,-1 + 80002a08: 00700193 li gp,7 + 80002a0c: 24771c63 bne a4,t2,80002c64 + +0000000080002a10 : + 80002a10: fff00093 li ra,-1 + 80002a14: 0010d713 srli a4,ra,0x1 + 80002a18: fff0039b addiw t2,zero,-1 + 80002a1c: 03f39393 slli t2,t2,0x3f + 80002a20: fff38393 addi t2,t2,-1 + 80002a24: 00800193 li gp,8 + 80002a28: 22771e63 bne a4,t2,80002c64 + +0000000080002a2c : + 80002a2c: fff00093 li ra,-1 + 80002a30: 0070d713 srli a4,ra,0x7 + 80002a34: 0010039b addiw t2,zero,1 + 80002a38: 03939393 slli t2,t2,0x39 + 80002a3c: fff38393 addi t2,t2,-1 + 80002a40: 00900193 li gp,9 + 80002a44: 22771063 bne a4,t2,80002c64 + +0000000080002a48 : + 80002a48: fff00093 li ra,-1 + 80002a4c: 00e0d713 srli a4,ra,0xe + 80002a50: 0010039b addiw t2,zero,1 + 80002a54: 03239393 slli t2,t2,0x32 + 80002a58: fff38393 addi t2,t2,-1 + 80002a5c: 00a00193 li gp,10 + 80002a60: 20771263 bne a4,t2,80002c64 + +0000000080002a64 : + 80002a64: fff00093 li ra,-1 + 80002a68: 01f0d713 srli a4,ra,0x1f + 80002a6c: 0010039b addiw t2,zero,1 + 80002a70: 02139393 slli t2,t2,0x21 + 80002a74: fff38393 addi t2,t2,-1 + 80002a78: 00b00193 li gp,11 + 80002a7c: 1e771463 bne a4,t2,80002c64 + +0000000080002a80 : + 80002a80: 212120b7 lui ra,0x21212 + 80002a84: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a88: 0000d713 srli a4,ra,0x0 + 80002a8c: 212123b7 lui t2,0x21212 + 80002a90: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a94: 00c00193 li gp,12 + 80002a98: 1c771663 bne a4,t2,80002c64 + +0000000080002a9c : + 80002a9c: 212120b7 lui ra,0x21212 + 80002aa0: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002aa4: 0010d713 srli a4,ra,0x1 + 80002aa8: 109093b7 lui t2,0x10909 + 80002aac: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002ab0: 00d00193 li gp,13 + 80002ab4: 1a771863 bne a4,t2,80002c64 + +0000000080002ab8 : + 80002ab8: 212120b7 lui ra,0x21212 + 80002abc: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ac0: 0070d713 srli a4,ra,0x7 + 80002ac4: 004243b7 lui t2,0x424 + 80002ac8: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002acc: 00e00193 li gp,14 + 80002ad0: 18771a63 bne a4,t2,80002c64 + +0000000080002ad4 : + 80002ad4: 212120b7 lui ra,0x21212 + 80002ad8: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002adc: 00e0d713 srli a4,ra,0xe + 80002ae0: 000083b7 lui t2,0x8 + 80002ae4: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002ae8: 00f00193 li gp,15 + 80002aec: 16771c63 bne a4,t2,80002c64 + +0000000080002af0 : + 80002af0: 212120b7 lui ra,0x21212 + 80002af4: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002af8: 01f0d713 srli a4,ra,0x1f + 80002afc: 00000393 li t2,0 + 80002b00: 01000193 li gp,16 + 80002b04: 16771063 bne a4,t2,80002c64 + +0000000080002b08 : + 80002b08: 0010009b addiw ra,zero,1 + 80002b0c: 01f09093 slli ra,ra,0x1f + 80002b10: 0070d093 srli ra,ra,0x7 + 80002b14: 010003b7 lui t2,0x1000 + 80002b18: 01100193 li gp,17 + 80002b1c: 14709463 bne ra,t2,80002c64 + +0000000080002b20 : + 80002b20: 00000213 li tp,0 + 80002b24: 0010009b addiw ra,zero,1 + 80002b28: 01f09093 slli ra,ra,0x1f + 80002b2c: 0070d713 srli a4,ra,0x7 + 80002b30: 00070313 mv t1,a4 + 80002b34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b38: 00200293 li t0,2 + 80002b3c: fe5214e3 bne tp,t0,80002b24 + 80002b40: 010003b7 lui t2,0x1000 + 80002b44: 01200193 li gp,18 + 80002b48: 10731e63 bne t1,t2,80002c64 + +0000000080002b4c : + 80002b4c: 00000213 li tp,0 + 80002b50: 0010009b addiw ra,zero,1 + 80002b54: 01f09093 slli ra,ra,0x1f + 80002b58: 00e0d713 srli a4,ra,0xe + 80002b5c: 00000013 nop + 80002b60: 00070313 mv t1,a4 + 80002b64: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b68: 00200293 li t0,2 + 80002b6c: fe5212e3 bne tp,t0,80002b50 + 80002b70: 000203b7 lui t2,0x20 + 80002b74: 01300193 li gp,19 + 80002b78: 0e731663 bne t1,t2,80002c64 + +0000000080002b7c : + 80002b7c: 00000213 li tp,0 + 80002b80: 0010009b addiw ra,zero,1 + 80002b84: 01f09093 slli ra,ra,0x1f + 80002b88: 00108093 addi ra,ra,1 + 80002b8c: 01f0d713 srli a4,ra,0x1f + 80002b90: 00000013 nop + 80002b94: 00000013 nop + 80002b98: 00070313 mv t1,a4 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fc521ee3 bne tp,t0,80002b80 + 80002ba8: 00100393 li t2,1 + 80002bac: 01400193 li gp,20 + 80002bb0: 0a731a63 bne t1,t2,80002c64 + +0000000080002bb4 : + 80002bb4: 00000213 li tp,0 + 80002bb8: 0010009b addiw ra,zero,1 + 80002bbc: 01f09093 slli ra,ra,0x1f + 80002bc0: 0070d713 srli a4,ra,0x7 + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fe5216e3 bne tp,t0,80002bb8 + 80002bd0: 010003b7 lui t2,0x1000 + 80002bd4: 01500193 li gp,21 + 80002bd8: 08771663 bne a4,t2,80002c64 + +0000000080002bdc : + 80002bdc: 00000213 li tp,0 + 80002be0: 0010009b addiw ra,zero,1 + 80002be4: 01f09093 slli ra,ra,0x1f + 80002be8: 00000013 nop + 80002bec: 00e0d713 srli a4,ra,0xe + 80002bf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf4: 00200293 li t0,2 + 80002bf8: fe5214e3 bne tp,t0,80002be0 + 80002bfc: 000203b7 lui t2,0x20 + 80002c00: 01600193 li gp,22 + 80002c04: 06771063 bne a4,t2,80002c64 + +0000000080002c08 : + 80002c08: 00000213 li tp,0 + 80002c0c: 0010009b addiw ra,zero,1 + 80002c10: 01f09093 slli ra,ra,0x1f + 80002c14: 00108093 addi ra,ra,1 + 80002c18: 00000013 nop + 80002c1c: 00000013 nop + 80002c20: 01f0d713 srli a4,ra,0x1f + 80002c24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c28: 00200293 li t0,2 + 80002c2c: fe5210e3 bne tp,t0,80002c0c + 80002c30: 00100393 li t2,1 + 80002c34: 01700193 li gp,23 + 80002c38: 02771663 bne a4,t2,80002c64 + +0000000080002c3c : + 80002c3c: 00405093 srli ra,zero,0x4 + 80002c40: 00000393 li t2,0 + 80002c44: 01800193 li gp,24 + 80002c48: 00709e63 bne ra,t2,80002c64 + +0000000080002c4c : + 80002c4c: 02100093 li ra,33 + 80002c50: 00a0d013 srli zero,ra,0xa + 80002c54: 00000393 li t2,0 + 80002c58: 01900193 li gp,25 + 80002c5c: 00701463 bne zero,t2,80002c64 + 80002c60: 00301a63 bne zero,gp,80002c74 + +0000000080002c64 : + 80002c64: 00119513 slli a0,gp,0x1 + 80002c68: 00050063 beqz a0,80002c68 + 80002c6c: 00156513 ori a0,a0,1 + 80002c70: 00000073 ecall + +0000000080002c74 : + 80002c74: 00100513 li a0,1 + 80002c78: 00000073 ecall + 80002c7c: c0001073 unimp diff --git a/tests/rv64ui-v-srliw b/tests/rv64ui-v-srliw new file mode 100644 index 0000000000000000000000000000000000000000..219248066cf082412621e00dce64bb8ea817f875 GIT binary patch literal 19440 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 7e450513 addi a0,a0,2020 # 80002cb8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 81850513 addi a0,a0,-2024 # 80002d00 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 84c50513 addi a0,a0,-1972 # 80002d48 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 85050513 addi a0,a0,-1968 # 80002d60 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 7a868693 addi a3,a3,1960 # 80002da0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 7f850513 addi a0,a0,2040 # 80002e40 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 74050513 addi a0,a0,1856 # 80002e68 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 6d050513 addi a0,a0,1744 # 80002e08 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 68450513 addi a0,a0,1668 # 80002dd0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02200793 li a5,34 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 029637b7 lui a5,0x2963 + 80002908: 00080637 lui a2,0x80 + 8000290c: 15178793 addi a5,a5,337 # 2963151 <_start-0x7d69ceaf> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 54850513 addi a0,a0,1352 # 80002e98 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 0000d71b srliw a4,ra,0x0 + 80002970: 800003b7 lui t2,0x80000 + 80002974: 00200193 li gp,2 + 80002978: 32771063 bne a4,t2,80002c98 + +000000008000297c : + 8000297c: 800000b7 lui ra,0x80000 + 80002980: 0010d71b srliw a4,ra,0x1 + 80002984: 400003b7 lui t2,0x40000 + 80002988: 00300193 li gp,3 + 8000298c: 30771663 bne a4,t2,80002c98 + +0000000080002990 : + 80002990: 800000b7 lui ra,0x80000 + 80002994: 0070d71b srliw a4,ra,0x7 + 80002998: 010003b7 lui t2,0x1000 + 8000299c: 00400193 li gp,4 + 800029a0: 2e771c63 bne a4,t2,80002c98 + +00000000800029a4 : + 800029a4: 800000b7 lui ra,0x80000 + 800029a8: 00e0d71b srliw a4,ra,0xe + 800029ac: 000203b7 lui t2,0x20 + 800029b0: 00500193 li gp,5 + 800029b4: 2e771263 bne a4,t2,80002c98 + +00000000800029b8 : + 800029b8: 800000b7 lui ra,0x80000 + 800029bc: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029c0: 01f0d71b srliw a4,ra,0x1f + 800029c4: 00100393 li t2,1 + 800029c8: 00600193 li gp,6 + 800029cc: 2c771663 bne a4,t2,80002c98 + +00000000800029d0 : + 800029d0: fff00093 li ra,-1 + 800029d4: 0000d71b srliw a4,ra,0x0 + 800029d8: fff00393 li t2,-1 + 800029dc: 00700193 li gp,7 + 800029e0: 2a771c63 bne a4,t2,80002c98 + +00000000800029e4 : + 800029e4: fff00093 li ra,-1 + 800029e8: 0010d71b srliw a4,ra,0x1 + 800029ec: 800003b7 lui t2,0x80000 + 800029f0: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 800029f4: 00800193 li gp,8 + 800029f8: 2a771063 bne a4,t2,80002c98 + +00000000800029fc : + 800029fc: fff00093 li ra,-1 + 80002a00: 0070d71b srliw a4,ra,0x7 + 80002a04: 020003b7 lui t2,0x2000 + 80002a08: fff3839b addiw t2,t2,-1 # 1ffffff <_start-0x7e000001> + 80002a0c: 00900193 li gp,9 + 80002a10: 28771463 bne a4,t2,80002c98 + +0000000080002a14 : + 80002a14: fff00093 li ra,-1 + 80002a18: 00e0d71b srliw a4,ra,0xe + 80002a1c: 000403b7 lui t2,0x40 + 80002a20: fff3839b addiw t2,t2,-1 # 3ffff <_start-0x7ffc0001> + 80002a24: 00a00193 li gp,10 + 80002a28: 26771863 bne a4,t2,80002c98 + +0000000080002a2c : + 80002a2c: fff00093 li ra,-1 + 80002a30: 01f0d71b srliw a4,ra,0x1f + 80002a34: 00100393 li t2,1 + 80002a38: 00b00193 li gp,11 + 80002a3c: 24771e63 bne a4,t2,80002c98 + +0000000080002a40 : + 80002a40: 212120b7 lui ra,0x21212 + 80002a44: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a48: 0000d71b srliw a4,ra,0x0 + 80002a4c: 212123b7 lui t2,0x21212 + 80002a50: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a54: 00c00193 li gp,12 + 80002a58: 24771063 bne a4,t2,80002c98 + +0000000080002a5c : + 80002a5c: 212120b7 lui ra,0x21212 + 80002a60: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a64: 0010d71b srliw a4,ra,0x1 + 80002a68: 109093b7 lui t2,0x10909 + 80002a6c: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002a70: 00d00193 li gp,13 + 80002a74: 22771263 bne a4,t2,80002c98 + +0000000080002a78 : + 80002a78: 212120b7 lui ra,0x21212 + 80002a7c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a80: 0070d71b srliw a4,ra,0x7 + 80002a84: 004243b7 lui t2,0x424 + 80002a88: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002a8c: 00e00193 li gp,14 + 80002a90: 20771463 bne a4,t2,80002c98 + +0000000080002a94 : + 80002a94: 212120b7 lui ra,0x21212 + 80002a98: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a9c: 00e0d71b srliw a4,ra,0xe + 80002aa0: 000083b7 lui t2,0x8 + 80002aa4: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002aa8: 00f00193 li gp,15 + 80002aac: 1e771663 bne a4,t2,80002c98 + +0000000080002ab0 : + 80002ab0: 212120b7 lui ra,0x21212 + 80002ab4: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ab8: 01f0d71b srliw a4,ra,0x1f + 80002abc: 00000393 li t2,0 + 80002ac0: 01000193 li gp,16 + 80002ac4: 1c771a63 bne a4,t2,80002c98 + +0000000080002ac8 : + 80002ac8: fff120b7 lui ra,0xfff12 + 80002acc: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002ad0: 00c09093 slli ra,ra,0xc + 80002ad4: 67808093 addi ra,ra,1656 + 80002ad8: 0000d71b srliw a4,ra,0x0 + 80002adc: 123453b7 lui t2,0x12345 + 80002ae0: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002ae4: 02c00193 li gp,44 + 80002ae8: 1a771863 bne a4,t2,80002c98 + +0000000080002aec : + 80002aec: fff120b7 lui ra,0xfff12 + 80002af0: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002af4: 00c09093 slli ra,ra,0xc + 80002af8: 67808093 addi ra,ra,1656 + 80002afc: 0040d71b srliw a4,ra,0x4 + 80002b00: 012343b7 lui t2,0x1234 + 80002b04: 5673839b addiw t2,t2,1383 # 1234567 <_start-0x7edcba99> + 80002b08: 02d00193 li gp,45 + 80002b0c: 18771663 bne a4,t2,80002c98 + +0000000080002b10 : + 80002b10: 000920b7 lui ra,0x92 + 80002b14: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002b18: 00c09093 slli ra,ra,0xc + 80002b1c: 67808093 addi ra,ra,1656 + 80002b20: 0000d71b srliw a4,ra,0x0 + 80002b24: 923453b7 lui t2,0x92345 + 80002b28: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002b2c: 02e00193 li gp,46 + 80002b30: 16771463 bne a4,t2,80002c98 + +0000000080002b34 : + 80002b34: 000920b7 lui ra,0x92 + 80002b38: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002b3c: 00c09093 slli ra,ra,0xc + 80002b40: 67808093 addi ra,ra,1656 + 80002b44: 0040d71b srliw a4,ra,0x4 + 80002b48: 092343b7 lui t2,0x9234 + 80002b4c: 5673839b addiw t2,t2,1383 # 9234567 <_start-0x76dcba99> + 80002b50: 02f00193 li gp,47 + 80002b54: 14771263 bne a4,t2,80002c98 + +0000000080002b58 : + 80002b58: 800000b7 lui ra,0x80000 + 80002b5c: 0070d09b srliw ra,ra,0x7 + 80002b60: 010003b7 lui t2,0x1000 + 80002b64: 01100193 li gp,17 + 80002b68: 12709863 bne ra,t2,80002c98 + +0000000080002b6c : + 80002b6c: 00000213 li tp,0 + 80002b70: 800000b7 lui ra,0x80000 + 80002b74: 0070d71b srliw a4,ra,0x7 + 80002b78: 00070313 mv t1,a4 + 80002b7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b80: 00200293 li t0,2 + 80002b84: fe5216e3 bne tp,t0,80002b70 + 80002b88: 010003b7 lui t2,0x1000 + 80002b8c: 01200193 li gp,18 + 80002b90: 10731463 bne t1,t2,80002c98 + +0000000080002b94 : + 80002b94: 00000213 li tp,0 + 80002b98: 800000b7 lui ra,0x80000 + 80002b9c: 00e0d71b srliw a4,ra,0xe + 80002ba0: 00000013 nop + 80002ba4: 00070313 mv t1,a4 + 80002ba8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bac: 00200293 li t0,2 + 80002bb0: fe5214e3 bne tp,t0,80002b98 + 80002bb4: 000203b7 lui t2,0x20 + 80002bb8: 01300193 li gp,19 + 80002bbc: 0c731e63 bne t1,t2,80002c98 + +0000000080002bc0 : + 80002bc0: 00000213 li tp,0 + 80002bc4: 800000b7 lui ra,0x80000 + 80002bc8: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002bcc: 01f0d71b srliw a4,ra,0x1f + 80002bd0: 00000013 nop + 80002bd4: 00000013 nop + 80002bd8: 00070313 mv t1,a4 + 80002bdc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002be0: 00200293 li t0,2 + 80002be4: fe5210e3 bne tp,t0,80002bc4 + 80002be8: 00100393 li t2,1 + 80002bec: 01400193 li gp,20 + 80002bf0: 0a731463 bne t1,t2,80002c98 + +0000000080002bf4 : + 80002bf4: 00000213 li tp,0 + 80002bf8: 800000b7 lui ra,0x80000 + 80002bfc: 0070d71b srliw a4,ra,0x7 + 80002c00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c04: 00200293 li t0,2 + 80002c08: fe5218e3 bne tp,t0,80002bf8 + 80002c0c: 010003b7 lui t2,0x1000 + 80002c10: 01500193 li gp,21 + 80002c14: 08771263 bne a4,t2,80002c98 + +0000000080002c18 : + 80002c18: 00000213 li tp,0 + 80002c1c: 800000b7 lui ra,0x80000 + 80002c20: 00000013 nop + 80002c24: 00e0d71b srliw a4,ra,0xe + 80002c28: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c2c: 00200293 li t0,2 + 80002c30: fe5216e3 bne tp,t0,80002c1c + 80002c34: 000203b7 lui t2,0x20 + 80002c38: 01600193 li gp,22 + 80002c3c: 04771e63 bne a4,t2,80002c98 + +0000000080002c40 : + 80002c40: 00000213 li tp,0 + 80002c44: 800000b7 lui ra,0x80000 + 80002c48: 0010809b addiw ra,ra,1 # ffffffff80000001 + 80002c4c: 00000013 nop + 80002c50: 00000013 nop + 80002c54: 01f0d71b srliw a4,ra,0x1f + 80002c58: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c5c: 00200293 li t0,2 + 80002c60: fe5212e3 bne tp,t0,80002c44 + 80002c64: 00100393 li t2,1 + 80002c68: 01700193 li gp,23 + 80002c6c: 02771663 bne a4,t2,80002c98 + +0000000080002c70 : + 80002c70: 01f0509b srliw ra,zero,0x1f + 80002c74: 00000393 li t2,0 + 80002c78: 01800193 li gp,24 + 80002c7c: 00709e63 bne ra,t2,80002c98 + +0000000080002c80 : + 80002c80: 01f00093 li ra,31 + 80002c84: 01c0d01b srliw zero,ra,0x1c + 80002c88: 00000393 li t2,0 + 80002c8c: 01900193 li gp,25 + 80002c90: 00701463 bne zero,t2,80002c98 + 80002c94: 00301a63 bne zero,gp,80002ca8 + +0000000080002c98 : + 80002c98: 00119513 slli a0,gp,0x1 + 80002c9c: 00050063 beqz a0,80002c9c + 80002ca0: 00156513 ori a0,a0,1 + 80002ca4: 00000073 ecall + +0000000080002ca8 : + 80002ca8: 00100513 li a0,1 + 80002cac: 00000073 ecall + 80002cb0: c0001073 unimp diff --git a/tests/rv64ui-v-srlw b/tests/rv64ui-v-srlw new file mode 100644 index 0000000000000000000000000000000000000000..d361507d54d3f9315b5b20c9b0069c4bf10143d7 GIT binary patch literal 20768 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: ad450513 addi a0,a0,-1324 # 80002fa8 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: b0850513 addi a0,a0,-1272 # 80002ff0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: b3c50513 addi a0,a0,-1220 # 80003038 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: b4050513 addi a0,a0,-1216 # 80003050 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a9868693 addi a3,a3,-1384 # 80003090 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: ae850513 addi a0,a0,-1304 # 80003130 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: a3050513 addi a0,a0,-1488 # 80003158 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 9c050513 addi a0,a0,-1600 # 800030f8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 97450513 addi a0,a0,-1676 # 800030c0 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 00800793 li a5,8 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 069877b7 lui a5,0x6987 + 80002908: 00080637 lui a2,0x80 + 8000290c: d1f78793 addi a5,a5,-737 # 6986d1f <_start-0x796792e1> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00001517 auipc a0,0x1 + 80002954: 83850513 addi a0,a0,-1992 # 80003188 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 800000b7 lui ra,0x80000 + 8000296c: 00000113 li sp,0 + 80002970: 0020d73b srlw a4,ra,sp + 80002974: 800003b7 lui t2,0x80000 + 80002978: 00200193 li gp,2 + 8000297c: 60771863 bne a4,t2,80002f8c + +0000000080002980 : + 80002980: 800000b7 lui ra,0x80000 + 80002984: 00100113 li sp,1 + 80002988: 0020d73b srlw a4,ra,sp + 8000298c: 400003b7 lui t2,0x40000 + 80002990: 00300193 li gp,3 + 80002994: 5e771c63 bne a4,t2,80002f8c + +0000000080002998 : + 80002998: 800000b7 lui ra,0x80000 + 8000299c: 00700113 li sp,7 + 800029a0: 0020d73b srlw a4,ra,sp + 800029a4: 010003b7 lui t2,0x1000 + 800029a8: 00400193 li gp,4 + 800029ac: 5e771063 bne a4,t2,80002f8c + +00000000800029b0 : + 800029b0: 800000b7 lui ra,0x80000 + 800029b4: 00e00113 li sp,14 + 800029b8: 0020d73b srlw a4,ra,sp + 800029bc: 000203b7 lui t2,0x20 + 800029c0: 00500193 li gp,5 + 800029c4: 5c771463 bne a4,t2,80002f8c + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 0010809b addiw ra,ra,1 # ffffffff80000001 + 800029d0: 01f00113 li sp,31 + 800029d4: 0020d73b srlw a4,ra,sp + 800029d8: 00100393 li t2,1 + 800029dc: 00600193 li gp,6 + 800029e0: 5a771663 bne a4,t2,80002f8c + +00000000800029e4 : + 800029e4: fff00093 li ra,-1 + 800029e8: 00000113 li sp,0 + 800029ec: 0020d73b srlw a4,ra,sp + 800029f0: fff00393 li t2,-1 + 800029f4: 00700193 li gp,7 + 800029f8: 58771a63 bne a4,t2,80002f8c + +00000000800029fc : + 800029fc: fff00093 li ra,-1 + 80002a00: 00100113 li sp,1 + 80002a04: 0020d73b srlw a4,ra,sp + 80002a08: 800003b7 lui t2,0x80000 + 80002a0c: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a10: 00800193 li gp,8 + 80002a14: 56771c63 bne a4,t2,80002f8c + +0000000080002a18 : + 80002a18: fff00093 li ra,-1 + 80002a1c: 00700113 li sp,7 + 80002a20: 0020d73b srlw a4,ra,sp + 80002a24: 020003b7 lui t2,0x2000 + 80002a28: fff3839b addiw t2,t2,-1 # 1ffffff <_start-0x7e000001> + 80002a2c: 00900193 li gp,9 + 80002a30: 54771e63 bne a4,t2,80002f8c + +0000000080002a34 : + 80002a34: fff00093 li ra,-1 + 80002a38: 00e00113 li sp,14 + 80002a3c: 0020d73b srlw a4,ra,sp + 80002a40: 000403b7 lui t2,0x40 + 80002a44: fff3839b addiw t2,t2,-1 # 3ffff <_start-0x7ffc0001> + 80002a48: 00a00193 li gp,10 + 80002a4c: 54771063 bne a4,t2,80002f8c + +0000000080002a50 : + 80002a50: fff00093 li ra,-1 + 80002a54: 01f00113 li sp,31 + 80002a58: 0020d73b srlw a4,ra,sp + 80002a5c: 00100393 li t2,1 + 80002a60: 00b00193 li gp,11 + 80002a64: 52771463 bne a4,t2,80002f8c + +0000000080002a68 : + 80002a68: 212120b7 lui ra,0x21212 + 80002a6c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a70: 00000113 li sp,0 + 80002a74: 0020d73b srlw a4,ra,sp + 80002a78: 212123b7 lui t2,0x21212 + 80002a7c: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002a80: 00c00193 li gp,12 + 80002a84: 50771463 bne a4,t2,80002f8c + +0000000080002a88 : + 80002a88: 212120b7 lui ra,0x21212 + 80002a8c: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002a90: 00100113 li sp,1 + 80002a94: 0020d73b srlw a4,ra,sp + 80002a98: 109093b7 lui t2,0x10909 + 80002a9c: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002aa0: 00d00193 li gp,13 + 80002aa4: 4e771463 bne a4,t2,80002f8c + +0000000080002aa8 : + 80002aa8: 212120b7 lui ra,0x21212 + 80002aac: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ab0: 00700113 li sp,7 + 80002ab4: 0020d73b srlw a4,ra,sp + 80002ab8: 004243b7 lui t2,0x424 + 80002abc: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002ac0: 00e00193 li gp,14 + 80002ac4: 4c771463 bne a4,t2,80002f8c + +0000000080002ac8 : + 80002ac8: 212120b7 lui ra,0x21212 + 80002acc: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002ad0: 00e00113 li sp,14 + 80002ad4: 0020d73b srlw a4,ra,sp + 80002ad8: 000083b7 lui t2,0x8 + 80002adc: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002ae0: 00f00193 li gp,15 + 80002ae4: 4a771463 bne a4,t2,80002f8c + +0000000080002ae8 : + 80002ae8: 212120b7 lui ra,0x21212 + 80002aec: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002af0: 01f00113 li sp,31 + 80002af4: 0020d73b srlw a4,ra,sp + 80002af8: 00000393 li t2,0 + 80002afc: 01000193 li gp,16 + 80002b00: 48771663 bne a4,t2,80002f8c + +0000000080002b04 : + 80002b04: 212120b7 lui ra,0x21212 + 80002b08: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b0c: fe000113 li sp,-32 + 80002b10: 0020d73b srlw a4,ra,sp + 80002b14: 212123b7 lui t2,0x21212 + 80002b18: 1213839b addiw t2,t2,289 # 21212121 <_start-0x5edededf> + 80002b1c: 01100193 li gp,17 + 80002b20: 46771663 bne a4,t2,80002f8c + +0000000080002b24 : + 80002b24: 212120b7 lui ra,0x21212 + 80002b28: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b2c: fe100113 li sp,-31 + 80002b30: 0020d73b srlw a4,ra,sp + 80002b34: 109093b7 lui t2,0x10909 + 80002b38: 0903839b addiw t2,t2,144 # 10909090 <_start-0x6f6f6f70> + 80002b3c: 01200193 li gp,18 + 80002b40: 44771663 bne a4,t2,80002f8c + +0000000080002b44 : + 80002b44: 212120b7 lui ra,0x21212 + 80002b48: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b4c: fe700113 li sp,-25 + 80002b50: 0020d73b srlw a4,ra,sp + 80002b54: 004243b7 lui t2,0x424 + 80002b58: 2423839b addiw t2,t2,578 # 424242 <_start-0x7fbdbdbe> + 80002b5c: 01300193 li gp,19 + 80002b60: 42771663 bne a4,t2,80002f8c + +0000000080002b64 : + 80002b64: 212120b7 lui ra,0x21212 + 80002b68: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b6c: fee00113 li sp,-18 + 80002b70: 0020d73b srlw a4,ra,sp + 80002b74: 000083b7 lui t2,0x8 + 80002b78: 4843839b addiw t2,t2,1156 # 8484 <_start-0x7fff7b7c> + 80002b7c: 01400193 li gp,20 + 80002b80: 40771663 bne a4,t2,80002f8c + +0000000080002b84 : + 80002b84: 212120b7 lui ra,0x21212 + 80002b88: 1210809b addiw ra,ra,289 # 21212121 <_start-0x5edededf> + 80002b8c: fff00113 li sp,-1 + 80002b90: 0020d73b srlw a4,ra,sp + 80002b94: 00000393 li t2,0 + 80002b98: 01500193 li gp,21 + 80002b9c: 3e771863 bne a4,t2,80002f8c + +0000000080002ba0 : + 80002ba0: fff120b7 lui ra,0xfff12 + 80002ba4: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002ba8: 00c09093 slli ra,ra,0xc + 80002bac: 67808093 addi ra,ra,1656 + 80002bb0: 00000113 li sp,0 + 80002bb4: 0020d73b srlw a4,ra,sp + 80002bb8: 123453b7 lui t2,0x12345 + 80002bbc: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002bc0: 02c00193 li gp,44 + 80002bc4: 3c771463 bne a4,t2,80002f8c + +0000000080002bc8 : + 80002bc8: fff120b7 lui ra,0xfff12 + 80002bcc: 3450809b addiw ra,ra,837 # fffffffffff12345 + 80002bd0: 00c09093 slli ra,ra,0xc + 80002bd4: 67808093 addi ra,ra,1656 + 80002bd8: 00400113 li sp,4 + 80002bdc: 0020d73b srlw a4,ra,sp + 80002be0: 012343b7 lui t2,0x1234 + 80002be4: 5673839b addiw t2,t2,1383 # 1234567 <_start-0x7edcba99> + 80002be8: 02d00193 li gp,45 + 80002bec: 3a771063 bne a4,t2,80002f8c + +0000000080002bf0 : + 80002bf0: 000920b7 lui ra,0x92 + 80002bf4: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002bf8: 00c09093 slli ra,ra,0xc + 80002bfc: 67808093 addi ra,ra,1656 + 80002c00: 00000113 li sp,0 + 80002c04: 0020d73b srlw a4,ra,sp + 80002c08: 923453b7 lui t2,0x92345 + 80002c0c: 6783839b addiw t2,t2,1656 # ffffffff92345678 + 80002c10: 02e00193 li gp,46 + 80002c14: 36771c63 bne a4,t2,80002f8c + +0000000080002c18 : + 80002c18: 000920b7 lui ra,0x92 + 80002c1c: 3450809b addiw ra,ra,837 # 92345 <_start-0x7ff6dcbb> + 80002c20: 00c09093 slli ra,ra,0xc + 80002c24: 67808093 addi ra,ra,1656 + 80002c28: 00400113 li sp,4 + 80002c2c: 0020d73b srlw a4,ra,sp + 80002c30: 092343b7 lui t2,0x9234 + 80002c34: 5673839b addiw t2,t2,1383 # 9234567 <_start-0x76dcba99> + 80002c38: 02f00193 li gp,47 + 80002c3c: 34771863 bne a4,t2,80002f8c + +0000000080002c40 : + 80002c40: 800000b7 lui ra,0x80000 + 80002c44: 00700113 li sp,7 + 80002c48: 0020d0bb srlw ra,ra,sp + 80002c4c: 010003b7 lui t2,0x1000 + 80002c50: 01600193 li gp,22 + 80002c54: 32709c63 bne ra,t2,80002f8c + +0000000080002c58 : + 80002c58: 800000b7 lui ra,0x80000 + 80002c5c: 00e00113 li sp,14 + 80002c60: 0020d13b srlw sp,ra,sp + 80002c64: 000203b7 lui t2,0x20 + 80002c68: 01700193 li gp,23 + 80002c6c: 32711063 bne sp,t2,80002f8c + +0000000080002c70 : + 80002c70: 00700093 li ra,7 + 80002c74: 0010d0bb srlw ra,ra,ra + 80002c78: 00000393 li t2,0 + 80002c7c: 01800193 li gp,24 + 80002c80: 30709663 bne ra,t2,80002f8c + +0000000080002c84 : + 80002c84: 00000213 li tp,0 + 80002c88: 800000b7 lui ra,0x80000 + 80002c8c: 00700113 li sp,7 + 80002c90: 0020d73b srlw a4,ra,sp + 80002c94: 00070313 mv t1,a4 + 80002c98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c9c: 00200293 li t0,2 + 80002ca0: fe5214e3 bne tp,t0,80002c88 + 80002ca4: 010003b7 lui t2,0x1000 + 80002ca8: 01900193 li gp,25 + 80002cac: 2e731063 bne t1,t2,80002f8c + +0000000080002cb0 : + 80002cb0: 00000213 li tp,0 + 80002cb4: 800000b7 lui ra,0x80000 + 80002cb8: 00e00113 li sp,14 + 80002cbc: 0020d73b srlw a4,ra,sp + 80002cc0: 00000013 nop + 80002cc4: 00070313 mv t1,a4 + 80002cc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ccc: 00200293 li t0,2 + 80002cd0: fe5212e3 bne tp,t0,80002cb4 + 80002cd4: 000203b7 lui t2,0x20 + 80002cd8: 01a00193 li gp,26 + 80002cdc: 2a731863 bne t1,t2,80002f8c + +0000000080002ce0 : + 80002ce0: 00000213 li tp,0 + 80002ce4: 800000b7 lui ra,0x80000 + 80002ce8: 01f00113 li sp,31 + 80002cec: 0020d73b srlw a4,ra,sp + 80002cf0: 00000013 nop + 80002cf4: 00000013 nop + 80002cf8: 00070313 mv t1,a4 + 80002cfc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d00: 00200293 li t0,2 + 80002d04: fe5210e3 bne tp,t0,80002ce4 + 80002d08: 00100393 li t2,1 + 80002d0c: 01b00193 li gp,27 + 80002d10: 26731e63 bne t1,t2,80002f8c + +0000000080002d14 : + 80002d14: 00000213 li tp,0 + 80002d18: 800000b7 lui ra,0x80000 + 80002d1c: 00700113 li sp,7 + 80002d20: 0020d73b srlw a4,ra,sp + 80002d24: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d28: 00200293 li t0,2 + 80002d2c: fe5216e3 bne tp,t0,80002d18 + 80002d30: 010003b7 lui t2,0x1000 + 80002d34: 01c00193 li gp,28 + 80002d38: 24771a63 bne a4,t2,80002f8c + +0000000080002d3c : + 80002d3c: 00000213 li tp,0 + 80002d40: 800000b7 lui ra,0x80000 + 80002d44: 00e00113 li sp,14 + 80002d48: 00000013 nop + 80002d4c: 0020d73b srlw a4,ra,sp + 80002d50: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d54: 00200293 li t0,2 + 80002d58: fe5214e3 bne tp,t0,80002d40 + 80002d5c: 000203b7 lui t2,0x20 + 80002d60: 01d00193 li gp,29 + 80002d64: 22771463 bne a4,t2,80002f8c + +0000000080002d68 : + 80002d68: 00000213 li tp,0 + 80002d6c: 800000b7 lui ra,0x80000 + 80002d70: 01f00113 li sp,31 + 80002d74: 00000013 nop + 80002d78: 00000013 nop + 80002d7c: 0020d73b srlw a4,ra,sp + 80002d80: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d84: 00200293 li t0,2 + 80002d88: fe5212e3 bne tp,t0,80002d6c + 80002d8c: 00100393 li t2,1 + 80002d90: 01e00193 li gp,30 + 80002d94: 1e771c63 bne a4,t2,80002f8c + +0000000080002d98 : + 80002d98: 00000213 li tp,0 + 80002d9c: 800000b7 lui ra,0x80000 + 80002da0: 00000013 nop + 80002da4: 00700113 li sp,7 + 80002da8: 0020d73b srlw a4,ra,sp + 80002dac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002db0: 00200293 li t0,2 + 80002db4: fe5214e3 bne tp,t0,80002d9c + 80002db8: 010003b7 lui t2,0x1000 + 80002dbc: 01f00193 li gp,31 + 80002dc0: 1c771663 bne a4,t2,80002f8c + +0000000080002dc4 : + 80002dc4: 00000213 li tp,0 + 80002dc8: 800000b7 lui ra,0x80000 + 80002dcc: 00000013 nop + 80002dd0: 00e00113 li sp,14 + 80002dd4: 00000013 nop + 80002dd8: 0020d73b srlw a4,ra,sp + 80002ddc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002de0: 00200293 li t0,2 + 80002de4: fe5212e3 bne tp,t0,80002dc8 + 80002de8: 000203b7 lui t2,0x20 + 80002dec: 02000193 li gp,32 + 80002df0: 18771e63 bne a4,t2,80002f8c + +0000000080002df4 : + 80002df4: 00000213 li tp,0 + 80002df8: 800000b7 lui ra,0x80000 + 80002dfc: 00000013 nop + 80002e00: 00000013 nop + 80002e04: 01f00113 li sp,31 + 80002e08: 0020d73b srlw a4,ra,sp + 80002e0c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e10: 00200293 li t0,2 + 80002e14: fe5212e3 bne tp,t0,80002df8 + 80002e18: 00100393 li t2,1 + 80002e1c: 02100193 li gp,33 + 80002e20: 16771663 bne a4,t2,80002f8c + +0000000080002e24 : + 80002e24: 00000213 li tp,0 + 80002e28: 00700113 li sp,7 + 80002e2c: 800000b7 lui ra,0x80000 + 80002e30: 0020d73b srlw a4,ra,sp + 80002e34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e38: 00200293 li t0,2 + 80002e3c: fe5216e3 bne tp,t0,80002e28 + 80002e40: 010003b7 lui t2,0x1000 + 80002e44: 02200193 li gp,34 + 80002e48: 14771263 bne a4,t2,80002f8c + +0000000080002e4c : + 80002e4c: 00000213 li tp,0 + 80002e50: 00e00113 li sp,14 + 80002e54: 800000b7 lui ra,0x80000 + 80002e58: 00000013 nop + 80002e5c: 0020d73b srlw a4,ra,sp + 80002e60: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e64: 00200293 li t0,2 + 80002e68: fe5214e3 bne tp,t0,80002e50 + 80002e6c: 000203b7 lui t2,0x20 + 80002e70: 02300193 li gp,35 + 80002e74: 10771c63 bne a4,t2,80002f8c + +0000000080002e78 : + 80002e78: 00000213 li tp,0 + 80002e7c: 01f00113 li sp,31 + 80002e80: 800000b7 lui ra,0x80000 + 80002e84: 00000013 nop + 80002e88: 00000013 nop + 80002e8c: 0020d73b srlw a4,ra,sp + 80002e90: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e94: 00200293 li t0,2 + 80002e98: fe5212e3 bne tp,t0,80002e7c + 80002e9c: 00100393 li t2,1 + 80002ea0: 02400193 li gp,36 + 80002ea4: 0e771463 bne a4,t2,80002f8c + +0000000080002ea8 : + 80002ea8: 00000213 li tp,0 + 80002eac: 00700113 li sp,7 + 80002eb0: 00000013 nop + 80002eb4: 800000b7 lui ra,0x80000 + 80002eb8: 0020d73b srlw a4,ra,sp + 80002ebc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ec0: 00200293 li t0,2 + 80002ec4: fe5214e3 bne tp,t0,80002eac + 80002ec8: 010003b7 lui t2,0x1000 + 80002ecc: 02500193 li gp,37 + 80002ed0: 0a771e63 bne a4,t2,80002f8c + +0000000080002ed4 : + 80002ed4: 00000213 li tp,0 + 80002ed8: 00e00113 li sp,14 + 80002edc: 00000013 nop + 80002ee0: 800000b7 lui ra,0x80000 + 80002ee4: 00000013 nop + 80002ee8: 0020d73b srlw a4,ra,sp + 80002eec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ef0: 00200293 li t0,2 + 80002ef4: fe5212e3 bne tp,t0,80002ed8 + 80002ef8: 000203b7 lui t2,0x20 + 80002efc: 02600193 li gp,38 + 80002f00: 08771663 bne a4,t2,80002f8c + +0000000080002f04 : + 80002f04: 00000213 li tp,0 + 80002f08: 01f00113 li sp,31 + 80002f0c: 00000013 nop + 80002f10: 00000013 nop + 80002f14: 800000b7 lui ra,0x80000 + 80002f18: 0020d73b srlw a4,ra,sp + 80002f1c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002f20: 00200293 li t0,2 + 80002f24: fe5212e3 bne tp,t0,80002f08 + 80002f28: 00100393 li t2,1 + 80002f2c: 02700193 li gp,39 + 80002f30: 04771e63 bne a4,t2,80002f8c + +0000000080002f34 : + 80002f34: 00f00093 li ra,15 + 80002f38: 0010513b srlw sp,zero,ra + 80002f3c: 00000393 li t2,0 + 80002f40: 02800193 li gp,40 + 80002f44: 04711463 bne sp,t2,80002f8c + +0000000080002f48 : + 80002f48: 02000093 li ra,32 + 80002f4c: 0000d13b srlw sp,ra,zero + 80002f50: 02000393 li t2,32 + 80002f54: 02900193 li gp,41 + 80002f58: 02711a63 bne sp,t2,80002f8c + +0000000080002f5c : + 80002f5c: 000050bb srlw ra,zero,zero + 80002f60: 00000393 li t2,0 + 80002f64: 02a00193 li gp,42 + 80002f68: 02709263 bne ra,t2,80002f8c + +0000000080002f6c : + 80002f6c: 40000093 li ra,1024 + 80002f70: 00001137 lui sp,0x1 + 80002f74: 8001011b addiw sp,sp,-2048 # 800 <_start-0x7ffff800> + 80002f78: 0020d03b srlw zero,ra,sp + 80002f7c: 00000393 li t2,0 + 80002f80: 02b00193 li gp,43 + 80002f84: 00701463 bne zero,t2,80002f8c + 80002f88: 00301a63 bne zero,gp,80002f9c + +0000000080002f8c : + 80002f8c: 00119513 slli a0,gp,0x1 + 80002f90: 00050063 beqz a0,80002f90 + 80002f94: 00156513 ori a0,a0,1 + 80002f98: 00000073 ecall + +0000000080002f9c : + 80002f9c: 00100513 li a0,1 + 80002fa0: 00000073 ecall + 80002fa4: c0001073 unimp diff --git a/tests/rv64ui-v-sub b/tests/rv64ui-v-sub new file mode 100644 index 0000000000000000000000000000000000000000..c1962757ec7f30c257da941f7e36fab38c1d3d29 GIT binary patch literal 20112 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-sub.dump b/tests/rv64ui-v-sub.dump new file mode 100644 index 0000000..c9561c0 --- /dev/null +++ b/tests/rv64ui-v-sub.dump @@ -0,0 +1,1166 @@ + +rv64ui-v-sub: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 98450513 addi a0,a0,-1660 # 80002e58 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9b850513 addi a0,a0,-1608 # 80002ea0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 9ec50513 addi a0,a0,-1556 # 80002ee8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 9f050513 addi a0,a0,-1552 # 80002f00 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 94868693 addi a3,a3,-1720 # 80002f40 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 99850513 addi a0,a0,-1640 # 80002fe0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 8e050513 addi a0,a0,-1824 # 80003008 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 87050513 addi a0,a0,-1936 # 80002fa8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 82450513 addi a0,a0,-2012 # 80002f70 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02500793 li a5,37 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0913b7b7 lui a5,0x913b + 80002908: 00080637 lui a2,0x80 + 8000290c: a7278793 addi a5,a5,-1422 # 913aa72 <_start-0x76ec558e> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 6e850513 addi a0,a0,1768 # 80003038 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 40208733 sub a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4a771e63 bne a4,t2,80002e38 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 40208733 sub a4,ra,sp + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 4a771263 bne a4,t2,80002e38 + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 40208733 sub a4,ra,sp + 800029a4: ffc00393 li t2,-4 + 800029a8: 00400193 li gp,4 + 800029ac: 48771663 bne a4,t2,80002e38 + +00000000800029b0 : + 800029b0: 00000093 li ra,0 + 800029b4: ffff8137 lui sp,0xffff8 + 800029b8: 40208733 sub a4,ra,sp + 800029bc: 000083b7 lui t2,0x8 + 800029c0: 00500193 li gp,5 + 800029c4: 46771a63 bne a4,t2,80002e38 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 00000113 li sp,0 + 800029d0: 40208733 sub a4,ra,sp + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 00600193 li gp,6 + 800029dc: 44771e63 bne a4,t2,80002e38 + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: ffff8137 lui sp,0xffff8 + 800029e8: 40208733 sub a4,ra,sp + 800029ec: 800083b7 lui t2,0x80008 + 800029f0: 00700193 li gp,7 + 800029f4: 44771263 bne a4,t2,80002e38 + +00000000800029f8 : + 800029f8: 00000093 li ra,0 + 800029fc: 00008137 lui sp,0x8 + 80002a00: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a04: 40208733 sub a4,ra,sp + 80002a08: ffff83b7 lui t2,0xffff8 + 80002a0c: 0013839b addiw t2,t2,1 # ffffffffffff8001 + 80002a10: 00800193 li gp,8 + 80002a14: 42771263 bne a4,t2,80002e38 + +0000000080002a18 : + 80002a18: 800000b7 lui ra,0x80000 + 80002a1c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a20: 00000113 li sp,0 + 80002a24: 40208733 sub a4,ra,sp + 80002a28: 800003b7 lui t2,0x80000 + 80002a2c: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a30: 00900193 li gp,9 + 80002a34: 40771263 bne a4,t2,80002e38 + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a40: 00008137 lui sp,0x8 + 80002a44: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a48: 40208733 sub a4,ra,sp + 80002a4c: 7fff83b7 lui t2,0x7fff8 + 80002a50: 00a00193 li gp,10 + 80002a54: 3e771263 bne a4,t2,80002e38 + +0000000080002a58 : + 80002a58: 800000b7 lui ra,0x80000 + 80002a5c: 00008137 lui sp,0x8 + 80002a60: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a64: 40208733 sub a4,ra,sp + 80002a68: ffff03b7 lui t2,0xffff0 + 80002a6c: fff3839b addiw t2,t2,-1 # fffffffffffeffff + 80002a70: 00f39393 slli t2,t2,0xf + 80002a74: 00138393 addi t2,t2,1 + 80002a78: 00b00193 li gp,11 + 80002a7c: 3a771e63 bne a4,t2,80002e38 + +0000000080002a80 : + 80002a80: 800000b7 lui ra,0x80000 + 80002a84: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a88: ffff8137 lui sp,0xffff8 + 80002a8c: 40208733 sub a4,ra,sp + 80002a90: 000103b7 lui t2,0x10 + 80002a94: 0013839b addiw t2,t2,1 # 10001 <_start-0x7ffeffff> + 80002a98: 00f39393 slli t2,t2,0xf + 80002a9c: fff38393 addi t2,t2,-1 + 80002aa0: 00c00193 li gp,12 + 80002aa4: 38771a63 bne a4,t2,80002e38 + +0000000080002aa8 : + 80002aa8: 00000093 li ra,0 + 80002aac: fff00113 li sp,-1 + 80002ab0: 40208733 sub a4,ra,sp + 80002ab4: 00100393 li t2,1 + 80002ab8: 00d00193 li gp,13 + 80002abc: 36771e63 bne a4,t2,80002e38 + +0000000080002ac0 : + 80002ac0: fff00093 li ra,-1 + 80002ac4: 00100113 li sp,1 + 80002ac8: 40208733 sub a4,ra,sp + 80002acc: ffe00393 li t2,-2 + 80002ad0: 00e00193 li gp,14 + 80002ad4: 36771263 bne a4,t2,80002e38 + +0000000080002ad8 : + 80002ad8: fff00093 li ra,-1 + 80002adc: fff00113 li sp,-1 + 80002ae0: 40208733 sub a4,ra,sp + 80002ae4: 00000393 li t2,0 + 80002ae8: 00f00193 li gp,15 + 80002aec: 34771663 bne a4,t2,80002e38 + +0000000080002af0 : + 80002af0: 00d00093 li ra,13 + 80002af4: 00b00113 li sp,11 + 80002af8: 402080b3 sub ra,ra,sp + 80002afc: 00200393 li t2,2 + 80002b00: 01000193 li gp,16 + 80002b04: 32709a63 bne ra,t2,80002e38 + +0000000080002b08 : + 80002b08: 00e00093 li ra,14 + 80002b0c: 00b00113 li sp,11 + 80002b10: 40208133 sub sp,ra,sp + 80002b14: 00300393 li t2,3 + 80002b18: 01100193 li gp,17 + 80002b1c: 30711e63 bne sp,t2,80002e38 + +0000000080002b20 : + 80002b20: 00d00093 li ra,13 + 80002b24: 401080b3 sub ra,ra,ra + 80002b28: 00000393 li t2,0 + 80002b2c: 01200193 li gp,18 + 80002b30: 30709463 bne ra,t2,80002e38 + +0000000080002b34 : + 80002b34: 00000213 li tp,0 + 80002b38: 00d00093 li ra,13 + 80002b3c: 00b00113 li sp,11 + 80002b40: 40208733 sub a4,ra,sp + 80002b44: 00070313 mv t1,a4 + 80002b48: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b4c: 00200293 li t0,2 + 80002b50: fe5214e3 bne tp,t0,80002b38 + 80002b54: 00200393 li t2,2 + 80002b58: 01300193 li gp,19 + 80002b5c: 2c731e63 bne t1,t2,80002e38 + +0000000080002b60 : + 80002b60: 00000213 li tp,0 + 80002b64: 00e00093 li ra,14 + 80002b68: 00b00113 li sp,11 + 80002b6c: 40208733 sub a4,ra,sp + 80002b70: 00000013 nop + 80002b74: 00070313 mv t1,a4 + 80002b78: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b7c: 00200293 li t0,2 + 80002b80: fe5212e3 bne tp,t0,80002b64 + 80002b84: 00300393 li t2,3 + 80002b88: 01400193 li gp,20 + 80002b8c: 2a731663 bne t1,t2,80002e38 + +0000000080002b90 : + 80002b90: 00000213 li tp,0 + 80002b94: 00f00093 li ra,15 + 80002b98: 00b00113 li sp,11 + 80002b9c: 40208733 sub a4,ra,sp + 80002ba0: 00000013 nop + 80002ba4: 00000013 nop + 80002ba8: 00070313 mv t1,a4 + 80002bac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb0: 00200293 li t0,2 + 80002bb4: fe5210e3 bne tp,t0,80002b94 + 80002bb8: 00400393 li t2,4 + 80002bbc: 01500193 li gp,21 + 80002bc0: 26731c63 bne t1,t2,80002e38 + +0000000080002bc4 : + 80002bc4: 00000213 li tp,0 + 80002bc8: 00d00093 li ra,13 + 80002bcc: 00b00113 li sp,11 + 80002bd0: 40208733 sub a4,ra,sp + 80002bd4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bd8: 00200293 li t0,2 + 80002bdc: fe5216e3 bne tp,t0,80002bc8 + 80002be0: 00200393 li t2,2 + 80002be4: 01600193 li gp,22 + 80002be8: 24771863 bne a4,t2,80002e38 + +0000000080002bec : + 80002bec: 00000213 li tp,0 + 80002bf0: 00e00093 li ra,14 + 80002bf4: 00b00113 li sp,11 + 80002bf8: 00000013 nop + 80002bfc: 40208733 sub a4,ra,sp + 80002c00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c04: 00200293 li t0,2 + 80002c08: fe5214e3 bne tp,t0,80002bf0 + 80002c0c: 00300393 li t2,3 + 80002c10: 01700193 li gp,23 + 80002c14: 22771263 bne a4,t2,80002e38 + +0000000080002c18 : + 80002c18: 00000213 li tp,0 + 80002c1c: 00f00093 li ra,15 + 80002c20: 00b00113 li sp,11 + 80002c24: 00000013 nop + 80002c28: 00000013 nop + 80002c2c: 40208733 sub a4,ra,sp + 80002c30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c34: 00200293 li t0,2 + 80002c38: fe5212e3 bne tp,t0,80002c1c + 80002c3c: 00400393 li t2,4 + 80002c40: 01800193 li gp,24 + 80002c44: 1e771a63 bne a4,t2,80002e38 + +0000000080002c48 : + 80002c48: 00000213 li tp,0 + 80002c4c: 00d00093 li ra,13 + 80002c50: 00000013 nop + 80002c54: 00b00113 li sp,11 + 80002c58: 40208733 sub a4,ra,sp + 80002c5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c60: 00200293 li t0,2 + 80002c64: fe5214e3 bne tp,t0,80002c4c + 80002c68: 00200393 li t2,2 + 80002c6c: 01900193 li gp,25 + 80002c70: 1c771463 bne a4,t2,80002e38 + +0000000080002c74 : + 80002c74: 00000213 li tp,0 + 80002c78: 00e00093 li ra,14 + 80002c7c: 00000013 nop + 80002c80: 00b00113 li sp,11 + 80002c84: 00000013 nop + 80002c88: 40208733 sub a4,ra,sp + 80002c8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c90: 00200293 li t0,2 + 80002c94: fe5212e3 bne tp,t0,80002c78 + 80002c98: 00300393 li t2,3 + 80002c9c: 01a00193 li gp,26 + 80002ca0: 18771c63 bne a4,t2,80002e38 + +0000000080002ca4 : + 80002ca4: 00000213 li tp,0 + 80002ca8: 00f00093 li ra,15 + 80002cac: 00000013 nop + 80002cb0: 00000013 nop + 80002cb4: 00b00113 li sp,11 + 80002cb8: 40208733 sub a4,ra,sp + 80002cbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cc0: 00200293 li t0,2 + 80002cc4: fe5212e3 bne tp,t0,80002ca8 + 80002cc8: 00400393 li t2,4 + 80002ccc: 01b00193 li gp,27 + 80002cd0: 16771463 bne a4,t2,80002e38 + +0000000080002cd4 : + 80002cd4: 00000213 li tp,0 + 80002cd8: 00b00113 li sp,11 + 80002cdc: 00d00093 li ra,13 + 80002ce0: 40208733 sub a4,ra,sp + 80002ce4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce8: 00200293 li t0,2 + 80002cec: fe5216e3 bne tp,t0,80002cd8 + 80002cf0: 00200393 li t2,2 + 80002cf4: 01c00193 li gp,28 + 80002cf8: 14771063 bne a4,t2,80002e38 + +0000000080002cfc : + 80002cfc: 00000213 li tp,0 + 80002d00: 00b00113 li sp,11 + 80002d04: 00e00093 li ra,14 + 80002d08: 00000013 nop + 80002d0c: 40208733 sub a4,ra,sp + 80002d10: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d14: 00200293 li t0,2 + 80002d18: fe5214e3 bne tp,t0,80002d00 + 80002d1c: 00300393 li t2,3 + 80002d20: 01d00193 li gp,29 + 80002d24: 10771a63 bne a4,t2,80002e38 + +0000000080002d28 : + 80002d28: 00000213 li tp,0 + 80002d2c: 00b00113 li sp,11 + 80002d30: 00f00093 li ra,15 + 80002d34: 00000013 nop + 80002d38: 00000013 nop + 80002d3c: 40208733 sub a4,ra,sp + 80002d40: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d44: 00200293 li t0,2 + 80002d48: fe5212e3 bne tp,t0,80002d2c + 80002d4c: 00400393 li t2,4 + 80002d50: 01e00193 li gp,30 + 80002d54: 0e771263 bne a4,t2,80002e38 + +0000000080002d58 : + 80002d58: 00000213 li tp,0 + 80002d5c: 00b00113 li sp,11 + 80002d60: 00000013 nop + 80002d64: 00d00093 li ra,13 + 80002d68: 40208733 sub a4,ra,sp + 80002d6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d70: 00200293 li t0,2 + 80002d74: fe5214e3 bne tp,t0,80002d5c + 80002d78: 00200393 li t2,2 + 80002d7c: 01f00193 li gp,31 + 80002d80: 0a771c63 bne a4,t2,80002e38 + +0000000080002d84 : + 80002d84: 00000213 li tp,0 + 80002d88: 00b00113 li sp,11 + 80002d8c: 00000013 nop + 80002d90: 00e00093 li ra,14 + 80002d94: 00000013 nop + 80002d98: 40208733 sub a4,ra,sp + 80002d9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002da0: 00200293 li t0,2 + 80002da4: fe5212e3 bne tp,t0,80002d88 + 80002da8: 00300393 li t2,3 + 80002dac: 02000193 li gp,32 + 80002db0: 08771463 bne a4,t2,80002e38 + +0000000080002db4 : + 80002db4: 00000213 li tp,0 + 80002db8: 00b00113 li sp,11 + 80002dbc: 00000013 nop + 80002dc0: 00000013 nop + 80002dc4: 00f00093 li ra,15 + 80002dc8: 40208733 sub a4,ra,sp + 80002dcc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dd0: 00200293 li t0,2 + 80002dd4: fe5212e3 bne tp,t0,80002db8 + 80002dd8: 00400393 li t2,4 + 80002ddc: 02100193 li gp,33 + 80002de0: 04771c63 bne a4,t2,80002e38 + +0000000080002de4 : + 80002de4: ff100093 li ra,-15 + 80002de8: 40100133 neg sp,ra + 80002dec: 00f00393 li t2,15 + 80002df0: 02200193 li gp,34 + 80002df4: 04711263 bne sp,t2,80002e38 + +0000000080002df8 : + 80002df8: 02000093 li ra,32 + 80002dfc: 40008133 sub sp,ra,zero + 80002e00: 02000393 li t2,32 + 80002e04: 02300193 li gp,35 + 80002e08: 02711863 bne sp,t2,80002e38 + +0000000080002e0c : + 80002e0c: 400000b3 neg ra,zero + 80002e10: 00000393 li t2,0 + 80002e14: 02400193 li gp,36 + 80002e18: 02709063 bne ra,t2,80002e38 + +0000000080002e1c : + 80002e1c: 01000093 li ra,16 + 80002e20: 01e00113 li sp,30 + 80002e24: 40208033 sub zero,ra,sp + 80002e28: 00000393 li t2,0 + 80002e2c: 02500193 li gp,37 + 80002e30: 00701463 bne zero,t2,80002e38 + 80002e34: 00301a63 bne zero,gp,80002e48 + +0000000080002e38 : + 80002e38: 00119513 slli a0,gp,0x1 + 80002e3c: 00050063 beqz a0,80002e3c + 80002e40: 00156513 ori a0,a0,1 + 80002e44: 00000073 ecall + +0000000080002e48 : + 80002e48: 00100513 li a0,1 + 80002e4c: 00000073 ecall + 80002e50: c0001073 unimp diff --git a/tests/rv64ui-v-subw b/tests/rv64ui-v-subw new file mode 100644 index 0000000000000000000000000000000000000000..111faec792d47b01e836f3e60024796a6867aae8 GIT binary patch literal 20096 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 literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-subw.dump b/tests/rv64ui-v-subw.dump new file mode 100644 index 0000000..c10f7c3 --- /dev/null +++ b/tests/rv64ui-v-subw.dump @@ -0,0 +1,1162 @@ + +rv64ui-v-subw: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 97450513 addi a0,a0,-1676 # 80002e48 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 9a850513 addi a0,a0,-1624 # 80002e90 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 9dc50513 addi a0,a0,-1572 # 80002ed8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 9e050513 addi a0,a0,-1568 # 80002ef0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 93868693 addi a3,a3,-1736 # 80002f30 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 98850513 addi a0,a0,-1656 # 80002fd0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 8d050513 addi a0,a0,-1840 # 80002ff8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 86050513 addi a0,a0,-1952 # 80002f98 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 81450513 addi a0,a0,-2028 # 80002f60 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02a00793 li a5,42 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0accb7b7 lui a5,0xaccb + 80002908: 00080637 lui a2,0x80 + 8000290c: c3078793 addi a5,a5,-976 # accac30 <_start-0x753353d0> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 6d850513 addi a0,a0,1752 # 80003028 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00000093 li ra,0 + 8000296c: 00000113 li sp,0 + 80002970: 4020873b subw a4,ra,sp + 80002974: 00000393 li t2,0 + 80002978: 00200193 li gp,2 + 8000297c: 4a771663 bne a4,t2,80002e28 + +0000000080002980 : + 80002980: 00100093 li ra,1 + 80002984: 00100113 li sp,1 + 80002988: 4020873b subw a4,ra,sp + 8000298c: 00000393 li t2,0 + 80002990: 00300193 li gp,3 + 80002994: 48771a63 bne a4,t2,80002e28 + +0000000080002998 : + 80002998: 00300093 li ra,3 + 8000299c: 00700113 li sp,7 + 800029a0: 4020873b subw a4,ra,sp + 800029a4: ffc00393 li t2,-4 + 800029a8: 00400193 li gp,4 + 800029ac: 46771e63 bne a4,t2,80002e28 + +00000000800029b0 : + 800029b0: 00000093 li ra,0 + 800029b4: ffff8137 lui sp,0xffff8 + 800029b8: 4020873b subw a4,ra,sp + 800029bc: 000083b7 lui t2,0x8 + 800029c0: 00500193 li gp,5 + 800029c4: 46771263 bne a4,t2,80002e28 + +00000000800029c8 : + 800029c8: 800000b7 lui ra,0x80000 + 800029cc: 00000113 li sp,0 + 800029d0: 4020873b subw a4,ra,sp + 800029d4: 800003b7 lui t2,0x80000 + 800029d8: 00600193 li gp,6 + 800029dc: 44771663 bne a4,t2,80002e28 + +00000000800029e0 : + 800029e0: 800000b7 lui ra,0x80000 + 800029e4: ffff8137 lui sp,0xffff8 + 800029e8: 4020873b subw a4,ra,sp + 800029ec: 800083b7 lui t2,0x80008 + 800029f0: 00700193 li gp,7 + 800029f4: 42771a63 bne a4,t2,80002e28 + +00000000800029f8 : + 800029f8: 00000093 li ra,0 + 800029fc: 00008137 lui sp,0x8 + 80002a00: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a04: 4020873b subw a4,ra,sp + 80002a08: ffff83b7 lui t2,0xffff8 + 80002a0c: 0013839b addiw t2,t2,1 # ffffffffffff8001 + 80002a10: 00800193 li gp,8 + 80002a14: 40771a63 bne a4,t2,80002e28 + +0000000080002a18 : + 80002a18: 800000b7 lui ra,0x80000 + 80002a1c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a20: 00000113 li sp,0 + 80002a24: 4020873b subw a4,ra,sp + 80002a28: 800003b7 lui t2,0x80000 + 80002a2c: fff3839b addiw t2,t2,-1 # 7fffffff <_start-0x1> + 80002a30: 00900193 li gp,9 + 80002a34: 3e771a63 bne a4,t2,80002e28 + +0000000080002a38 : + 80002a38: 800000b7 lui ra,0x80000 + 80002a3c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a40: 00008137 lui sp,0x8 + 80002a44: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a48: 4020873b subw a4,ra,sp + 80002a4c: 7fff83b7 lui t2,0x7fff8 + 80002a50: 00a00193 li gp,10 + 80002a54: 3c771a63 bne a4,t2,80002e28 + +0000000080002a58 : + 80002a58: 800000b7 lui ra,0x80000 + 80002a5c: 00008137 lui sp,0x8 + 80002a60: fff1011b addiw sp,sp,-1 # 7fff <_start-0x7fff8001> + 80002a64: 4020873b subw a4,ra,sp + 80002a68: 7fff83b7 lui t2,0x7fff8 + 80002a6c: 0013839b addiw t2,t2,1 # 7fff8001 <_start-0x7fff> + 80002a70: 00b00193 li gp,11 + 80002a74: 3a771a63 bne a4,t2,80002e28 + +0000000080002a78 : + 80002a78: 800000b7 lui ra,0x80000 + 80002a7c: fff0809b addiw ra,ra,-1 # 7fffffff <_start-0x1> + 80002a80: ffff8137 lui sp,0xffff8 + 80002a84: 4020873b subw a4,ra,sp + 80002a88: 800083b7 lui t2,0x80008 + 80002a8c: fff3839b addiw t2,t2,-1 # ffffffff80007fff + 80002a90: 00c00193 li gp,12 + 80002a94: 38771a63 bne a4,t2,80002e28 + +0000000080002a98 : + 80002a98: 00000093 li ra,0 + 80002a9c: fff00113 li sp,-1 + 80002aa0: 4020873b subw a4,ra,sp + 80002aa4: 00100393 li t2,1 + 80002aa8: 00d00193 li gp,13 + 80002aac: 36771e63 bne a4,t2,80002e28 + +0000000080002ab0 : + 80002ab0: fff00093 li ra,-1 + 80002ab4: 00100113 li sp,1 + 80002ab8: 4020873b subw a4,ra,sp + 80002abc: ffe00393 li t2,-2 + 80002ac0: 00e00193 li gp,14 + 80002ac4: 36771263 bne a4,t2,80002e28 + +0000000080002ac8 : + 80002ac8: fff00093 li ra,-1 + 80002acc: fff00113 li sp,-1 + 80002ad0: 4020873b subw a4,ra,sp + 80002ad4: 00000393 li t2,0 + 80002ad8: 00f00193 li gp,15 + 80002adc: 34771663 bne a4,t2,80002e28 + +0000000080002ae0 : + 80002ae0: 00d00093 li ra,13 + 80002ae4: 00b00113 li sp,11 + 80002ae8: 402080bb subw ra,ra,sp + 80002aec: 00200393 li t2,2 + 80002af0: 01000193 li gp,16 + 80002af4: 32709a63 bne ra,t2,80002e28 + +0000000080002af8 : + 80002af8: 00e00093 li ra,14 + 80002afc: 00b00113 li sp,11 + 80002b00: 4020813b subw sp,ra,sp + 80002b04: 00300393 li t2,3 + 80002b08: 01100193 li gp,17 + 80002b0c: 30711e63 bne sp,t2,80002e28 + +0000000080002b10 : + 80002b10: 00d00093 li ra,13 + 80002b14: 401080bb subw ra,ra,ra + 80002b18: 00000393 li t2,0 + 80002b1c: 01200193 li gp,18 + 80002b20: 30709463 bne ra,t2,80002e28 + +0000000080002b24 : + 80002b24: 00000213 li tp,0 + 80002b28: 00d00093 li ra,13 + 80002b2c: 00b00113 li sp,11 + 80002b30: 4020873b subw a4,ra,sp + 80002b34: 00070313 mv t1,a4 + 80002b38: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b3c: 00200293 li t0,2 + 80002b40: fe5214e3 bne tp,t0,80002b28 + 80002b44: 00200393 li t2,2 + 80002b48: 01300193 li gp,19 + 80002b4c: 2c731e63 bne t1,t2,80002e28 + +0000000080002b50 : + 80002b50: 00000213 li tp,0 + 80002b54: 00e00093 li ra,14 + 80002b58: 00b00113 li sp,11 + 80002b5c: 4020873b subw a4,ra,sp + 80002b60: 00000013 nop + 80002b64: 00070313 mv t1,a4 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fe5212e3 bne tp,t0,80002b54 + 80002b74: 00300393 li t2,3 + 80002b78: 01400193 li gp,20 + 80002b7c: 2a731663 bne t1,t2,80002e28 + +0000000080002b80 : + 80002b80: 00000213 li tp,0 + 80002b84: 00f00093 li ra,15 + 80002b88: 00b00113 li sp,11 + 80002b8c: 4020873b subw a4,ra,sp + 80002b90: 00000013 nop + 80002b94: 00000013 nop + 80002b98: 00070313 mv t1,a4 + 80002b9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba0: 00200293 li t0,2 + 80002ba4: fe5210e3 bne tp,t0,80002b84 + 80002ba8: 00400393 li t2,4 + 80002bac: 01500193 li gp,21 + 80002bb0: 26731c63 bne t1,t2,80002e28 + +0000000080002bb4 : + 80002bb4: 00000213 li tp,0 + 80002bb8: 00d00093 li ra,13 + 80002bbc: 00b00113 li sp,11 + 80002bc0: 4020873b subw a4,ra,sp + 80002bc4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bc8: 00200293 li t0,2 + 80002bcc: fe5216e3 bne tp,t0,80002bb8 + 80002bd0: 00200393 li t2,2 + 80002bd4: 01600193 li gp,22 + 80002bd8: 24771863 bne a4,t2,80002e28 + +0000000080002bdc : + 80002bdc: 00000213 li tp,0 + 80002be0: 00e00093 li ra,14 + 80002be4: 00b00113 li sp,11 + 80002be8: 00000013 nop + 80002bec: 4020873b subw a4,ra,sp + 80002bf0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf4: 00200293 li t0,2 + 80002bf8: fe5214e3 bne tp,t0,80002be0 + 80002bfc: 00300393 li t2,3 + 80002c00: 01700193 li gp,23 + 80002c04: 22771263 bne a4,t2,80002e28 + +0000000080002c08 : + 80002c08: 00000213 li tp,0 + 80002c0c: 00f00093 li ra,15 + 80002c10: 00b00113 li sp,11 + 80002c14: 00000013 nop + 80002c18: 00000013 nop + 80002c1c: 4020873b subw a4,ra,sp + 80002c20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c24: 00200293 li t0,2 + 80002c28: fe5212e3 bne tp,t0,80002c0c + 80002c2c: 00400393 li t2,4 + 80002c30: 01800193 li gp,24 + 80002c34: 1e771a63 bne a4,t2,80002e28 + +0000000080002c38 : + 80002c38: 00000213 li tp,0 + 80002c3c: 00d00093 li ra,13 + 80002c40: 00000013 nop + 80002c44: 00b00113 li sp,11 + 80002c48: 4020873b subw a4,ra,sp + 80002c4c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c50: 00200293 li t0,2 + 80002c54: fe5214e3 bne tp,t0,80002c3c + 80002c58: 00200393 li t2,2 + 80002c5c: 01900193 li gp,25 + 80002c60: 1c771463 bne a4,t2,80002e28 + +0000000080002c64 : + 80002c64: 00000213 li tp,0 + 80002c68: 00e00093 li ra,14 + 80002c6c: 00000013 nop + 80002c70: 00b00113 li sp,11 + 80002c74: 00000013 nop + 80002c78: 4020873b subw a4,ra,sp + 80002c7c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c80: 00200293 li t0,2 + 80002c84: fe5212e3 bne tp,t0,80002c68 + 80002c88: 00300393 li t2,3 + 80002c8c: 01a00193 li gp,26 + 80002c90: 18771c63 bne a4,t2,80002e28 + +0000000080002c94 : + 80002c94: 00000213 li tp,0 + 80002c98: 00f00093 li ra,15 + 80002c9c: 00000013 nop + 80002ca0: 00000013 nop + 80002ca4: 00b00113 li sp,11 + 80002ca8: 4020873b subw a4,ra,sp + 80002cac: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cb0: 00200293 li t0,2 + 80002cb4: fe5212e3 bne tp,t0,80002c98 + 80002cb8: 00400393 li t2,4 + 80002cbc: 01b00193 li gp,27 + 80002cc0: 16771463 bne a4,t2,80002e28 + +0000000080002cc4 : + 80002cc4: 00000213 li tp,0 + 80002cc8: 00b00113 li sp,11 + 80002ccc: 00d00093 li ra,13 + 80002cd0: 4020873b subw a4,ra,sp + 80002cd4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cd8: 00200293 li t0,2 + 80002cdc: fe5216e3 bne tp,t0,80002cc8 + 80002ce0: 00200393 li t2,2 + 80002ce4: 01c00193 li gp,28 + 80002ce8: 14771063 bne a4,t2,80002e28 + +0000000080002cec : + 80002cec: 00000213 li tp,0 + 80002cf0: 00b00113 li sp,11 + 80002cf4: 00e00093 li ra,14 + 80002cf8: 00000013 nop + 80002cfc: 4020873b subw a4,ra,sp + 80002d00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d04: 00200293 li t0,2 + 80002d08: fe5214e3 bne tp,t0,80002cf0 + 80002d0c: 00300393 li t2,3 + 80002d10: 01d00193 li gp,29 + 80002d14: 10771a63 bne a4,t2,80002e28 + +0000000080002d18 : + 80002d18: 00000213 li tp,0 + 80002d1c: 00b00113 li sp,11 + 80002d20: 00f00093 li ra,15 + 80002d24: 00000013 nop + 80002d28: 00000013 nop + 80002d2c: 4020873b subw a4,ra,sp + 80002d30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d34: 00200293 li t0,2 + 80002d38: fe5212e3 bne tp,t0,80002d1c + 80002d3c: 00400393 li t2,4 + 80002d40: 01e00193 li gp,30 + 80002d44: 0e771263 bne a4,t2,80002e28 + +0000000080002d48 : + 80002d48: 00000213 li tp,0 + 80002d4c: 00b00113 li sp,11 + 80002d50: 00000013 nop + 80002d54: 00d00093 li ra,13 + 80002d58: 4020873b subw a4,ra,sp + 80002d5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d60: 00200293 li t0,2 + 80002d64: fe5214e3 bne tp,t0,80002d4c + 80002d68: 00200393 li t2,2 + 80002d6c: 01f00193 li gp,31 + 80002d70: 0a771c63 bne a4,t2,80002e28 + +0000000080002d74 : + 80002d74: 00000213 li tp,0 + 80002d78: 00b00113 li sp,11 + 80002d7c: 00000013 nop + 80002d80: 00e00093 li ra,14 + 80002d84: 00000013 nop + 80002d88: 4020873b subw a4,ra,sp + 80002d8c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d90: 00200293 li t0,2 + 80002d94: fe5212e3 bne tp,t0,80002d78 + 80002d98: 00300393 li t2,3 + 80002d9c: 02000193 li gp,32 + 80002da0: 08771463 bne a4,t2,80002e28 + +0000000080002da4 : + 80002da4: 00000213 li tp,0 + 80002da8: 00b00113 li sp,11 + 80002dac: 00000013 nop + 80002db0: 00000013 nop + 80002db4: 00f00093 li ra,15 + 80002db8: 4020873b subw a4,ra,sp + 80002dbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dc0: 00200293 li t0,2 + 80002dc4: fe5212e3 bne tp,t0,80002da8 + 80002dc8: 00400393 li t2,4 + 80002dcc: 02100193 li gp,33 + 80002dd0: 04771c63 bne a4,t2,80002e28 + +0000000080002dd4 : + 80002dd4: ff100093 li ra,-15 + 80002dd8: 4010013b negw sp,ra + 80002ddc: 00f00393 li t2,15 + 80002de0: 02200193 li gp,34 + 80002de4: 04711263 bne sp,t2,80002e28 + +0000000080002de8 : + 80002de8: 02000093 li ra,32 + 80002dec: 4000813b subw sp,ra,zero + 80002df0: 02000393 li t2,32 + 80002df4: 02300193 li gp,35 + 80002df8: 02711863 bne sp,t2,80002e28 + +0000000080002dfc : + 80002dfc: 400000bb negw ra,zero + 80002e00: 00000393 li t2,0 + 80002e04: 02400193 li gp,36 + 80002e08: 02709063 bne ra,t2,80002e28 + +0000000080002e0c : + 80002e0c: 01000093 li ra,16 + 80002e10: 01e00113 li sp,30 + 80002e14: 4020803b subw zero,ra,sp + 80002e18: 00000393 li t2,0 + 80002e1c: 02500193 li gp,37 + 80002e20: 00701463 bne zero,t2,80002e28 + 80002e24: 00301a63 bne zero,gp,80002e38 + +0000000080002e28 : + 80002e28: 00119513 slli a0,gp,0x1 + 80002e2c: 00050063 beqz a0,80002e2c + 80002e30: 00156513 ori a0,a0,1 + 80002e34: 00000073 ecall + +0000000080002e38 : + 80002e38: 00100513 li a0,1 + 80002e3c: 00000073 ecall + 80002e40: c0001073 unimp diff --git a/tests/rv64ui-v-sw b/tests/rv64ui-v-sw new file mode 100644 index 0000000000000000000000000000000000000000..2bc70a3836580d91cea282bf33121f8a51443379 GIT binary patch literal 24128 zcmeHPeQ*?IntytFdV0tQnWO_l0i{D)`EW5i$qXbwz+qj))4g5LRlE}~44omQmSo1v zKw{P1?u2#{*Dcqq%@UL?jbe!v?<4N0LVj&s9&nYUxG%nSqUg2PAY z+2zWh`9!{6tIYHGlT$bfI0`rlI0`rlI0`rlI0`rlI0`rlI0`rld?gi#(@Ba4(yQZv z$Z7)$DEI^0z^S-U;#BYlzJXK0ANdAO1%I>~I28{{oC^LJH*hLmlsJ`nC~+!9C~+#q zC~+z!C~+#KC~+$DQQ}m}P~z-k?HzPoO7`9r^uG*TcEtlAzaQ1hH0f0e6WZNz_9bQ4C9NJ)CjtYci6! zR`Td;Gaj){lJ&ZbEY?e2y*}d=*GcpAb(wkMdZ|cXpD7YINX7bwOtIJ?mFNwb5^*9u92i91$@bJp;8T(liE;2YH+hl4R3d;^--7F@SsZ# zcDdE?Puyz#vu?HFWw#o9%cF+>*`wC~t4D44%%cW{dEm}d>zB;~e;)Y7;1`2m41O{A zrQnx>UkZLH_+{XifnNrG*@X(UUB8_!RFO{&ZuecN@*x&h1{sbrP^mU-_bHOV`Z@HK z9OO>YjslJXjslJXjslJXjslJXjslJXjslJXjslJXjslJXjslJXjslJXjslJXjslJX zjslJXjsjl+1+vYrQg&>ZjL8nldWJ}QSayZFhwx5cBJKMhy2N3LjLZTudi-?k@v-UA zBSX{8X`<2Ze>lx-#2o5-dSH_w^#tnweZ;J1Hi{t3WSfWZPP~iQ`*GHW;+7~Rqn(4Y zOFM9ujERY|^W)Eap~FUz+$4qt#uFHy)ftB~ls)$v8GRlhJ2pbbVcC^EcacUr&rY%S zS=;J~k?GM-$EL65L*I%#ek_~$h{Jv}kI|*_bSQH?V#bKQ46I~!EKfyRK;rPkjP|HZ zqupcEOENNTkj@rt=Y@y@pG@O8MFgg=zI9@TwXHohX0|_icxamKvtV&;$c&k7n_9z`^#ijt`(lx7 zYAv$ZJ>+6G+M*G}&+{x9nKnG9T^fye49_4d-TEnL0pHp|kK5eK0e_1BMq1MC`GVDj z~KhAVF$D1PchS^v2U-!PF4o+a4`^)q?FBwO` z^)3{Qkzvdm^ylbgsd08vPzU!?lB9~hI@X87Cl&uz%Jz(5d_vbs*(ZXV^SVhL1P0&g zD`RxwMXxU>pP9+Z6I8bdv0;pb9+3s{7c%K@_K^4{?z26D8XObU@Q9$+4-0BTGyG$2 z$g&H$f069<`pkSh7vcLgGlnw!zaMkH^0}@|%5JR)oJrZMEr#CmI2mKOKXle@97aB# zkHEcXa%b~kGBjD_oeV_})Y7#AN|*zZ5F zu%Rch{(NX*&-~iLq^Hi0H~z}P8b8L~p>p)!CAGc_dv?mPf9EIIx3f&fejQ1z-z;Ij zjid&n687teun|!&s=;SP?AH+tIc=_a+M^Tm4LLwsdctG$Y{6Xck#=Ab<8hp{Cngq) zYux2%^LKm=l#!#Xhr2xDI>Do_>ypIvf~2qSa*G=Tx4xlE6dMFlZ|HJ~8wHoXu}eUF z-uUV3|4yvS_>7J^(vHZU^JqKi3zE13eRUjtTr_EoW7+5KTZl2x-Tk;Vx8(k7j_04t z&s}vqo4P)83iE>Ldy4CO2>PDn`o1HslBBw&*xQBw1ZF(^&Xaw2qWsaFPu3N?DOYr6 zrtdL4KlZ0b{Ewo)itad)`yY|bQH-NW^z|2%^Am+irbwILP;BgYkCa1ODb({Y#wOMY zmpqLzw#&d^&h~sx`U%X%$r3l#dQbA^VqYEd%St;1MJmB(&&zB*cwU>2b#ki2tFP%o zKa{wc4Xa1p<5~Dk`bvFbt`u#<|8??37K0l616#```MCHYY%#_f`52Q9;`wEs@2h^S zdl+|rh4D1V$I~l{G>_@?%7qn?&$OrHMSac4xkvsX`s+X0{8WQo75+}}yzlm~&qg+1 z{r50GL)};-DvW!FNZIi&=7OL4ZU^^~+cS!1d`4}Um^Kc-fVKKKVfqG)a|=mn#`^r> zyQC-=MWbi3L~Xby|uze*8O^pi4UB{%;dk!(G1fr_0#)j0!OXLt-TjEULF5okF^p~+!2yn-FhEO$XN%PS0Ex$ma^e6T)sGb!0@em!$8DA!HP^jN14{&< zUww|*MJSi0fup+EZwNusmUeuD`)jHz?=OPgfciYMOH)qiFM{2GAw=+9pd-Tl?XG*a zs2}Z;`U0~%Nx5T1{b(0^J-1=)@7QG7MWTiH1_IM)cjj_@yI6b;mfgv}D8%>I%q~51 zIlcsoub%tcS%~j%ncc~m%kiaId~3PCKP$wS*QF3&FN-g1*`;^XZ4Xy05xSa{gEXxM zs$BYW(D3eX#Zg^vHiUlCo^B6vpWm&kS#}?6=NakKGslhv$X|gm;yQS@Uge@(XxV+> z%rk^R(hjv(8^TF*&ui}V8v{qvr{DLN!&d0}wi+nM`YBNE1K|1x?`zj}+@!cFus1e< zv3J*$A)K~&Ctvymy!R}gaHoRrBWe}nZl>JZsM9}q5BjYva2GM|8O|N}?a}nf6Bc*# zR>n2?H!yw|_^8+4J^}s>1^z}4*kEVlaL2nh$dPvn4c2pL4rryC>ysmK0Cj`N(GGor` ztpL+QRTy8s0@utrGK>3GFz2Jt(R839AG?~@TLG@C72uZ?_-4-AX7g7wUXFq)e3TdT z7V)gB<=Wy7Z-HyJy=xX%SY>fTRY%j%5q{LX-Xbtv5x{pB_-5OQ+58*xG3SD61$u$aV1BI# zuk^dDs%784SaWn=prtLDYTvIh6{@bC&zEKs=FMCs&M)QFUz?ZObMvNHLJQm&2%Gv` zJCFTsvCc$HOU0T3u}&?Pn4QSg^4{N;+@DCq+ZiDlO(g=YkhqXJ?@*_36mS%96mS%9 z6mS%96mS%96mS%96mS%96mS&yf3Lv#H~;2$|Ce)f2&uNWB((!1tir9^C$%3~8*Zsh z1RGn~CCV;)*rf><@(M-8TW`H}ePCttsz6Ombxk$@VZJX>OtgL-Fl{#x3I9-;|DC^C zl_LA~!2n+B+76N2)2g}ln@pZadu{j@ z6TecoJGlL)H_!F+9gg?f{M^g&*KPO%96w{jn>g;hX|Dh8nYcttBXjWwxqZ-Pk5_9r zM7qz0|A6CZ8{WrueBTAU!X?s+%Pjxa`hq=2 z9Dj%7N4TGTz{_1&CwKAqBUVM6+Y`@gC$~Sq?Z@x7?8il`BE#+XuCVYaJhS65j^A*j zg?|%EK0BV|e)8*c-p>o%{ym;AUay+RfN6hu-OjJnuLEZ~*w?pTa(i#T)o$MYv}u3k zcspa_xR7OUwMvB7-=>~nu3L&%{1?Y}a(y1=_yqU!O<}Gd_EE?B#moJy=Jqnjf5Y>& z)*a*o+(+ma9)CWb1t#vIi0yOpI_@W-TJ64Krb6^JZVzYaybo5^nz%qGZ27L^e$Mc` z^5cy(?Y6r^ceLJB9j6;QX>YWxX#=9!=!$HLc^0E$a^4 z14b&AOf}Y0swtWx_8!UtLRJyBiZxcT*0id(9_p-uKdrN#YJ#Ro{;9@%Vjydz2CbMS zcV5H2*KqeW@Nd?0*EQUC4R=?|{nWy(88r7-8=^!snY7w6uU0x}21%h2T+sxsRswZ| zcTRY7Rjtv1R$R2i{*;BlZ+mM?TQn7;SSR#q+#Qdnn6;L8h@z?ZK1!shHP*@=_q4}i z`&y6|dr6jrC(D?t&%~zLugRz*wdXP?#e`c-I;k<%)&!UF*1hp$DnA_dMECClD{f+m zc%l*EAhCV1Hlpg}L#?UkZj`BZtK6HvOF@U~mbR7@Rda4NgQ&Va4n3ocQBz${)$D<) zccT}oljha@-dY_^LFwK5(Op!n#amku@a&QP$K5XhjZGoU!2FRmZ}@^#`2A{L>&{#8 zayd%I=gT9T%xSYKU|#8Vt0-I}g*)q}8pWLU`Fte)b=y0CF2UY@nDcA7S^j&o*ZM+8 zC79>4kNo<`+GNMAIOoJ4;qh-XtEsRqSdU0=?(rvhWIhY|^Y7t>-xKG43M`w0Z`=9( zR{MFr&D?CO;0rh3#fi2PvoUs`=QDj~ANjoV*dE+4ESLv)xpSL!V{bptpIzD{Hi-$& zKZB1lb`;}Wk29}7wqlwG`-`KX9miO)?LO-vVsoBvH*bn: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000b117 auipc sp,0xb + 80000098: e4c10113 addi sp,sp,-436 # 8000aee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00004617 auipc a2,0x4 + 80002394: c7060613 addi a2,a2,-912 # 80006000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00008597 auipc a1,0x8 + 800023b0: c5c58593 addi a1,a1,-932 # 8000a008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00008897 auipc a7,0x8 + 800023c4: c408b883 ld a7,-960(a7) # 8000a000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00003797 auipc a5,0x3 + 800023f8: c0c78793 addi a5,a5,-1012 # 80005000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00008797 auipc a5,0x8 + 800024cc: b207bc23 sd zero,-1224(a5) # 8000a000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: 93450513 addi a0,a0,-1740 # 80002e08 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: 96850513 addi a0,a0,-1688 # 80002e50 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: 99c50513 addi a0,a0,-1636 # 80002e98 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: 9a050513 addi a0,a0,-1632 # 80002eb0 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: 8f868693 addi a3,a3,-1800 # 80002ef0 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: 94850513 addi a0,a0,-1720 # 80002f90 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00003497 auipc s1,0x3 + 80002668: 99c48493 addi s1,s1,-1636 # 80005000 + 8000266c: 00004b97 auipc s7,0x4 + 80002670: 994b8b93 addi s7,s7,-1644 # 80006000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00008d97 auipc s11,0x8 + 80002680: 984d8d93 addi s11,s11,-1660 # 8000a000 + 80002684: 00008a17 auipc s4,0x8 + 80002688: 984a0a13 addi s4,s4,-1660 # 8000a008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 89050513 addi a0,a0,-1904 # 80002fb8 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 82050513 addi a0,a0,-2016 # 80002f58 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 7d450513 addi a0,a0,2004 # 80002f20 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00006797 auipc a5,0x6 + 80002774: 89078793 addi a5,a5,-1904 # 80008000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00007817 auipc a6,0x7 + 80002788: 87c80813 addi a6,a6,-1924 # 80009000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00005517 auipc a0,0x5 + 80002798: 86c50513 addi a0,a0,-1940 # 80007000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00004897 auipc a7,0x4 + 800027b0: 85488893 addi a7,a7,-1964 # 80006000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00003717 auipc a4,0x3 + 8000285c: b9870713 addi a4,a4,-1128 # 800053f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00007617 auipc a2,0x7 + 80002874: 78d63c23 sd a3,1944(a2) # 8000a008 + 80002878: 00003317 auipc t1,0x3 + 8000287c: f6830313 addi t1,t1,-152 # 800057e0 + 80002880: 00007697 auipc a3,0x7 + 80002884: 78f6b023 sd a5,1920(a3) # 8000a000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02900793 li a5,41 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00003797 auipc a5,0x3 + 800028d4: f007b423 sd zero,-248(a5) # 800057d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 06fb17b7 lui a5,0x6fb1 + 80002908: 00080637 lui a2,0x80 + 8000290c: a0a78793 addi a5,a5,-1526 # 6fb0a0a <_start-0x7904f5f6> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 69850513 addi a0,a0,1688 # 80002fe8 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00001097 auipc ra,0x1 + 8000296c: 69808093 addi ra,ra,1688 # 80004000 + 80002970: 00aa0137 lui sp,0xaa0 + 80002974: 0aa1011b addiw sp,sp,170 # aa00aa <_start-0x7f55ff56> + 80002978: 0020a023 sw sp,0(ra) + 8000297c: 0000a703 lw a4,0(ra) + 80002980: 00aa03b7 lui t2,0xaa0 + 80002984: 0aa3839b addiw t2,t2,170 # aa00aa <_start-0x7f55ff56> + 80002988: 00200193 li gp,2 + 8000298c: 46771063 bne a4,t2,80002dec + +0000000080002990 : + 80002990: 00001097 auipc ra,0x1 + 80002994: 67008093 addi ra,ra,1648 # 80004000 + 80002998: aa00b137 lui sp,0xaa00b + 8000299c: a001011b addiw sp,sp,-1536 # ffffffffaa00aa00 + 800029a0: 0020a223 sw sp,4(ra) + 800029a4: 0040a703 lw a4,4(ra) + 800029a8: aa00b3b7 lui t2,0xaa00b + 800029ac: a003839b addiw t2,t2,-1536 # ffffffffaa00aa00 + 800029b0: 00300193 li gp,3 + 800029b4: 42771c63 bne a4,t2,80002dec + +00000000800029b8 : + 800029b8: 00001097 auipc ra,0x1 + 800029bc: 64808093 addi ra,ra,1608 # 80004000 + 800029c0: 0aa01137 lui sp,0xaa01 + 800029c4: aa01011b addiw sp,sp,-1376 # aa00aa0 <_start-0x755ff560> + 800029c8: 0020a423 sw sp,8(ra) + 800029cc: 0080a703 lw a4,8(ra) + 800029d0: 0aa013b7 lui t2,0xaa01 + 800029d4: aa03839b addiw t2,t2,-1376 # aa00aa0 <_start-0x755ff560> + 800029d8: 00400193 li gp,4 + 800029dc: 40771863 bne a4,t2,80002dec + +00000000800029e0 : + 800029e0: 00001097 auipc ra,0x1 + 800029e4: 62008093 addi ra,ra,1568 # 80004000 + 800029e8: a00aa137 lui sp,0xa00aa + 800029ec: 00a1011b addiw sp,sp,10 # ffffffffa00aa00a + 800029f0: 0020a623 sw sp,12(ra) + 800029f4: 00c0a703 lw a4,12(ra) + 800029f8: a00aa3b7 lui t2,0xa00aa + 800029fc: 00a3839b addiw t2,t2,10 # ffffffffa00aa00a + 80002a00: 00500193 li gp,5 + 80002a04: 3e771463 bne a4,t2,80002dec + +0000000080002a08 : + 80002a08: 00001097 auipc ra,0x1 + 80002a0c: 61408093 addi ra,ra,1556 # 8000401c + 80002a10: 00aa0137 lui sp,0xaa0 + 80002a14: 0aa1011b addiw sp,sp,170 # aa00aa <_start-0x7f55ff56> + 80002a18: fe20aa23 sw sp,-12(ra) + 80002a1c: ff40a703 lw a4,-12(ra) + 80002a20: 00aa03b7 lui t2,0xaa0 + 80002a24: 0aa3839b addiw t2,t2,170 # aa00aa <_start-0x7f55ff56> + 80002a28: 00600193 li gp,6 + 80002a2c: 3c771063 bne a4,t2,80002dec + +0000000080002a30 : + 80002a30: 00001097 auipc ra,0x1 + 80002a34: 5ec08093 addi ra,ra,1516 # 8000401c + 80002a38: aa00b137 lui sp,0xaa00b + 80002a3c: a001011b addiw sp,sp,-1536 # ffffffffaa00aa00 + 80002a40: fe20ac23 sw sp,-8(ra) + 80002a44: ff80a703 lw a4,-8(ra) + 80002a48: aa00b3b7 lui t2,0xaa00b + 80002a4c: a003839b addiw t2,t2,-1536 # ffffffffaa00aa00 + 80002a50: 00700193 li gp,7 + 80002a54: 38771c63 bne a4,t2,80002dec + +0000000080002a58 : + 80002a58: 00001097 auipc ra,0x1 + 80002a5c: 5c408093 addi ra,ra,1476 # 8000401c + 80002a60: 0aa01137 lui sp,0xaa01 + 80002a64: aa01011b addiw sp,sp,-1376 # aa00aa0 <_start-0x755ff560> + 80002a68: fe20ae23 sw sp,-4(ra) + 80002a6c: ffc0a703 lw a4,-4(ra) + 80002a70: 0aa013b7 lui t2,0xaa01 + 80002a74: aa03839b addiw t2,t2,-1376 # aa00aa0 <_start-0x755ff560> + 80002a78: 00800193 li gp,8 + 80002a7c: 36771863 bne a4,t2,80002dec + +0000000080002a80 : + 80002a80: 00001097 auipc ra,0x1 + 80002a84: 59c08093 addi ra,ra,1436 # 8000401c + 80002a88: a00aa137 lui sp,0xa00aa + 80002a8c: 00a1011b addiw sp,sp,10 # ffffffffa00aa00a + 80002a90: 0020a023 sw sp,0(ra) + 80002a94: 0000a703 lw a4,0(ra) + 80002a98: a00aa3b7 lui t2,0xa00aa + 80002a9c: 00a3839b addiw t2,t2,10 # ffffffffa00aa00a + 80002aa0: 00900193 li gp,9 + 80002aa4: 34771463 bne a4,t2,80002dec + +0000000080002aa8 : + 80002aa8: 00001097 auipc ra,0x1 + 80002aac: 57808093 addi ra,ra,1400 # 80004020 + 80002ab0: 12345137 lui sp,0x12345 + 80002ab4: 6781011b addiw sp,sp,1656 # 12345678 <_start-0x6dcba988> + 80002ab8: fe008213 addi tp,ra,-32 + 80002abc: 02222023 sw sp,32(tp) # 20 <_start-0x7fffffe0> + 80002ac0: 0000a283 lw t0,0(ra) + 80002ac4: 123453b7 lui t2,0x12345 + 80002ac8: 6783839b addiw t2,t2,1656 # 12345678 <_start-0x6dcba988> + 80002acc: 00a00193 li gp,10 + 80002ad0: 30729e63 bne t0,t2,80002dec + +0000000080002ad4 : + 80002ad4: 00001097 auipc ra,0x1 + 80002ad8: 54c08093 addi ra,ra,1356 # 80004020 + 80002adc: 58213137 lui sp,0x58213 + 80002ae0: 0981011b addiw sp,sp,152 # 58213098 <_start-0x27decf68> + 80002ae4: ffd08093 addi ra,ra,-3 + 80002ae8: 0020a3a3 sw sp,7(ra) + 80002aec: 00001217 auipc tp,0x1 + 80002af0: 53820213 addi tp,tp,1336 # 80004024 + 80002af4: 00022283 lw t0,0(tp) # 0 <_start-0x80000000> + 80002af8: 582133b7 lui t2,0x58213 + 80002afc: 0983839b addiw t2,t2,152 # 58213098 <_start-0x27decf68> + 80002b00: 00b00193 li gp,11 + 80002b04: 2e729463 bne t0,t2,80002dec + +0000000080002b08 : + 80002b08: 00c00193 li gp,12 + 80002b0c: 00000213 li tp,0 + 80002b10: aabbd0b7 lui ra,0xaabbd + 80002b14: cdd0809b addiw ra,ra,-803 # ffffffffaabbccdd + 80002b18: 00001117 auipc sp,0x1 + 80002b1c: 4e810113 addi sp,sp,1256 # 80004000 + 80002b20: 00112023 sw ra,0(sp) + 80002b24: 00012703 lw a4,0(sp) + 80002b28: aabbd3b7 lui t2,0xaabbd + 80002b2c: cdd3839b addiw t2,t2,-803 # ffffffffaabbccdd + 80002b30: 2a771e63 bne a4,t2,80002dec + 80002b34: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b38: 00200293 li t0,2 + 80002b3c: fc521ae3 bne tp,t0,80002b10 + +0000000080002b40 : + 80002b40: 00d00193 li gp,13 + 80002b44: 00000213 li tp,0 + 80002b48: daabc0b7 lui ra,0xdaabc + 80002b4c: ccd0809b addiw ra,ra,-819 # ffffffffdaabbccd + 80002b50: 00001117 auipc sp,0x1 + 80002b54: 4b010113 addi sp,sp,1200 # 80004000 + 80002b58: 00000013 nop + 80002b5c: 00112223 sw ra,4(sp) + 80002b60: 00412703 lw a4,4(sp) + 80002b64: daabc3b7 lui t2,0xdaabc + 80002b68: ccd3839b addiw t2,t2,-819 # ffffffffdaabbccd + 80002b6c: 28771063 bne a4,t2,80002dec + 80002b70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b74: 00200293 li t0,2 + 80002b78: fc5218e3 bne tp,t0,80002b48 + +0000000080002b7c : + 80002b7c: 00e00193 li gp,14 + 80002b80: 00000213 li tp,0 + 80002b84: ddaac0b7 lui ra,0xddaac + 80002b88: bcc0809b addiw ra,ra,-1076 # ffffffffddaabbcc + 80002b8c: 00001117 auipc sp,0x1 + 80002b90: 47410113 addi sp,sp,1140 # 80004000 + 80002b94: 00000013 nop + 80002b98: 00000013 nop + 80002b9c: 00112423 sw ra,8(sp) + 80002ba0: 00812703 lw a4,8(sp) + 80002ba4: ddaac3b7 lui t2,0xddaac + 80002ba8: bcc3839b addiw t2,t2,-1076 # ffffffffddaabbcc + 80002bac: 24771063 bne a4,t2,80002dec + 80002bb0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bb4: 00200293 li t0,2 + 80002bb8: fc5216e3 bne tp,t0,80002b84 + +0000000080002bbc : + 80002bbc: 00f00193 li gp,15 + 80002bc0: 00000213 li tp,0 + 80002bc4: cddab0b7 lui ra,0xcddab + 80002bc8: bbc0809b addiw ra,ra,-1092 # ffffffffcddaabbc + 80002bcc: 00000013 nop + 80002bd0: 00001117 auipc sp,0x1 + 80002bd4: 43010113 addi sp,sp,1072 # 80004000 + 80002bd8: 00112623 sw ra,12(sp) + 80002bdc: 00c12703 lw a4,12(sp) + 80002be0: cddab3b7 lui t2,0xcddab + 80002be4: bbc3839b addiw t2,t2,-1092 # ffffffffcddaabbc + 80002be8: 20771263 bne a4,t2,80002dec + 80002bec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf0: 00200293 li t0,2 + 80002bf4: fc5218e3 bne tp,t0,80002bc4 + +0000000080002bf8 : + 80002bf8: 01000193 li gp,16 + 80002bfc: 00000213 li tp,0 + 80002c00: ccddb0b7 lui ra,0xccddb + 80002c04: abb0809b addiw ra,ra,-1349 # ffffffffccddaabb + 80002c08: 00000013 nop + 80002c0c: 00001117 auipc sp,0x1 + 80002c10: 3f410113 addi sp,sp,1012 # 80004000 + 80002c14: 00000013 nop + 80002c18: 00112823 sw ra,16(sp) + 80002c1c: 01012703 lw a4,16(sp) + 80002c20: ccddb3b7 lui t2,0xccddb + 80002c24: abb3839b addiw t2,t2,-1349 # ffffffffccddaabb + 80002c28: 1c771263 bne a4,t2,80002dec + 80002c2c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c30: 00200293 li t0,2 + 80002c34: fc5216e3 bne tp,t0,80002c00 + +0000000080002c38 : + 80002c38: 01100193 li gp,17 + 80002c3c: 00000213 li tp,0 + 80002c40: bccde0b7 lui ra,0xbccde + 80002c44: aab0809b addiw ra,ra,-1365 # ffffffffbccddaab + 80002c48: 00000013 nop + 80002c4c: 00000013 nop + 80002c50: 00001117 auipc sp,0x1 + 80002c54: 3b010113 addi sp,sp,944 # 80004000 + 80002c58: 00112a23 sw ra,20(sp) + 80002c5c: 01412703 lw a4,20(sp) + 80002c60: bccde3b7 lui t2,0xbccde + 80002c64: aab3839b addiw t2,t2,-1365 # ffffffffbccddaab + 80002c68: 18771263 bne a4,t2,80002dec + 80002c6c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c70: 00200293 li t0,2 + 80002c74: fc5216e3 bne tp,t0,80002c40 + +0000000080002c78 : + 80002c78: 01200193 li gp,18 + 80002c7c: 00000213 li tp,0 + 80002c80: 00001117 auipc sp,0x1 + 80002c84: 38010113 addi sp,sp,896 # 80004000 + 80002c88: 001120b7 lui ra,0x112 + 80002c8c: 2330809b addiw ra,ra,563 # 112233 <_start-0x7feeddcd> + 80002c90: 00112023 sw ra,0(sp) + 80002c94: 00012703 lw a4,0(sp) + 80002c98: 001123b7 lui t2,0x112 + 80002c9c: 2333839b addiw t2,t2,563 # 112233 <_start-0x7feeddcd> + 80002ca0: 14771663 bne a4,t2,80002dec + 80002ca4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ca8: 00200293 li t0,2 + 80002cac: fc521ae3 bne tp,t0,80002c80 + +0000000080002cb0 : + 80002cb0: 01300193 li gp,19 + 80002cb4: 00000213 li tp,0 + 80002cb8: 00001117 auipc sp,0x1 + 80002cbc: 34810113 addi sp,sp,840 # 80004000 + 80002cc0: 300110b7 lui ra,0x30011 + 80002cc4: 2230809b addiw ra,ra,547 # 30011223 <_start-0x4ffeeddd> + 80002cc8: 00000013 nop + 80002ccc: 00112223 sw ra,4(sp) + 80002cd0: 00412703 lw a4,4(sp) + 80002cd4: 300113b7 lui t2,0x30011 + 80002cd8: 2233839b addiw t2,t2,547 # 30011223 <_start-0x4ffeeddd> + 80002cdc: 10771863 bne a4,t2,80002dec + 80002ce0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ce4: 00200293 li t0,2 + 80002ce8: fc5218e3 bne tp,t0,80002cb8 + +0000000080002cec : + 80002cec: 01400193 li gp,20 + 80002cf0: 00000213 li tp,0 + 80002cf4: 00001117 auipc sp,0x1 + 80002cf8: 30c10113 addi sp,sp,780 # 80004000 + 80002cfc: 330010b7 lui ra,0x33001 + 80002d00: 1220809b addiw ra,ra,290 # 33001122 <_start-0x4cffeede> + 80002d04: 00000013 nop + 80002d08: 00000013 nop + 80002d0c: 00112423 sw ra,8(sp) + 80002d10: 00812703 lw a4,8(sp) + 80002d14: 330013b7 lui t2,0x33001 + 80002d18: 1223839b addiw t2,t2,290 # 33001122 <_start-0x4cffeede> + 80002d1c: 0c771863 bne a4,t2,80002dec + 80002d20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d24: 00200293 li t0,2 + 80002d28: fc5216e3 bne tp,t0,80002cf4 + +0000000080002d2c : + 80002d2c: 01500193 li gp,21 + 80002d30: 00000213 li tp,0 + 80002d34: 00001117 auipc sp,0x1 + 80002d38: 2cc10113 addi sp,sp,716 # 80004000 + 80002d3c: 00000013 nop + 80002d40: 233000b7 lui ra,0x23300 + 80002d44: 1120809b addiw ra,ra,274 # 23300112 <_start-0x5ccffeee> + 80002d48: 00112623 sw ra,12(sp) + 80002d4c: 00c12703 lw a4,12(sp) + 80002d50: 233003b7 lui t2,0x23300 + 80002d54: 1123839b addiw t2,t2,274 # 23300112 <_start-0x5ccffeee> + 80002d58: 08771a63 bne a4,t2,80002dec + 80002d5c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d60: 00200293 li t0,2 + 80002d64: fc5218e3 bne tp,t0,80002d34 + +0000000080002d68 : + 80002d68: 01600193 li gp,22 + 80002d6c: 00000213 li tp,0 + 80002d70: 00001117 auipc sp,0x1 + 80002d74: 29010113 addi sp,sp,656 # 80004000 + 80002d78: 00000013 nop + 80002d7c: 223300b7 lui ra,0x22330 + 80002d80: 0110809b addiw ra,ra,17 # 22330011 <_start-0x5dccffef> + 80002d84: 00000013 nop + 80002d88: 00112823 sw ra,16(sp) + 80002d8c: 01012703 lw a4,16(sp) + 80002d90: 223303b7 lui t2,0x22330 + 80002d94: 0113839b addiw t2,t2,17 # 22330011 <_start-0x5dccffef> + 80002d98: 04771a63 bne a4,t2,80002dec + 80002d9c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002da0: 00200293 li t0,2 + 80002da4: fc5216e3 bne tp,t0,80002d70 + +0000000080002da8 : + 80002da8: 01700193 li gp,23 + 80002dac: 00000213 li tp,0 + 80002db0: 00001117 auipc sp,0x1 + 80002db4: 25010113 addi sp,sp,592 # 80004000 + 80002db8: 00000013 nop + 80002dbc: 00000013 nop + 80002dc0: 122330b7 lui ra,0x12233 + 80002dc4: 0010809b addiw ra,ra,1 # 12233001 <_start-0x6ddccfff> + 80002dc8: 00112a23 sw ra,20(sp) + 80002dcc: 01412703 lw a4,20(sp) + 80002dd0: 122333b7 lui t2,0x12233 + 80002dd4: 0013839b addiw t2,t2,1 # 12233001 <_start-0x6ddccfff> + 80002dd8: 00771a63 bne a4,t2,80002dec + 80002ddc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002de0: 00200293 li t0,2 + 80002de4: fc5216e3 bne tp,t0,80002db0 + 80002de8: 00301a63 bne zero,gp,80002dfc + +0000000080002dec : + 80002dec: 00119513 slli a0,gp,0x1 + 80002df0: 00050063 beqz a0,80002df0 + 80002df4: 00156513 ori a0,a0,1 + 80002df8: 00000073 ecall + +0000000080002dfc : + 80002dfc: 00100513 li a0,1 + 80002e00: 00000073 ecall + 80002e04: c0001073 unimp + +Disassembly of section .data: + +0000000080004000 : + 80004000: deadbeef jal t4,7ffdf5ea <_start-0x20a16> + +0000000080004004 : + 80004004: deadbeef jal t4,7ffdf5ee <_start-0x20a12> + +0000000080004008 : + 80004008: deadbeef jal t4,7ffdf5f2 <_start-0x20a0e> + +000000008000400c : + 8000400c: deadbeef jal t4,7ffdf5f6 <_start-0x20a0a> + +0000000080004010 : + 80004010: deadbeef jal t4,7ffdf5fa <_start-0x20a06> + +0000000080004014 : + 80004014: deadbeef jal t4,7ffdf5fe <_start-0x20a02> + +0000000080004018 : + 80004018: deadbeef jal t4,7ffdf602 <_start-0x209fe> + +000000008000401c : + 8000401c: deadbeef jal t4,7ffdf606 <_start-0x209fa> + +0000000080004020 : + 80004020: deadbeef jal t4,7ffdf60a <_start-0x209f6> + +0000000080004024 : + 80004024: deadbeef jal t4,7ffdf60e <_start-0x209f2> diff --git a/tests/rv64ui-v-xor b/tests/rv64ui-v-xor new file mode 100644 index 0000000000000000000000000000000000000000..c5998599d73a38ca61855270e47d3de180def3cc GIT binary patch literal 20040 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 WqOrie1ET)aexRkU5{xz7`u_|12Tyna literal 0 HcmV?d00001 diff --git a/tests/rv64ui-v-xor.dump b/tests/rv64ui-v-xor.dump new file mode 100644 index 0000000..50d5469 --- /dev/null +++ b/tests/rv64ui-v-xor.dump @@ -0,0 +1,1208 @@ + +rv64ui-v-xor: file format elf64-littleriscv + + +Disassembly of section .text.init: + +0000000080000000 <_start>: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 0000a117 auipc sp,0xa + 80000098: e4c10113 addi sp,sp,-436 # 80009ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00003617 auipc a2,0x3 + 80002394: c7060613 addi a2,a2,-912 # 80005000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00007597 auipc a1,0x7 + 800023b0: c5c58593 addi a1,a1,-932 # 80009008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00007897 auipc a7,0x7 + 800023c4: c408b883 ld a7,-960(a7) # 80009000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00002797 auipc a5,0x2 + 800023f8: c0c78793 addi a5,a5,-1012 # 80004000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00007797 auipc a5,0x7 + 800024cc: b207bc23 sd zero,-1224(a5) # 80009000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00001517 auipc a0,0x1 + 800024d8: a7c50513 addi a0,a0,-1412 # 80002f50 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00001517 auipc a0,0x1 + 800024ec: ab050513 addi a0,a0,-1360 # 80002f98 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00001517 auipc a0,0x1 + 80002500: ae450513 addi a0,a0,-1308 # 80002fe0 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00001517 auipc a0,0x1 + 80002514: ae850513 addi a0,a0,-1304 # 80002ff8 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00001697 auipc a3,0x1 + 800025fc: a4068693 addi a3,a3,-1472 # 80003038 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00001517 auipc a0,0x1 + 8000264c: a9050513 addi a0,a0,-1392 # 800030d8 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00002497 auipc s1,0x2 + 80002668: 99c48493 addi s1,s1,-1636 # 80004000 + 8000266c: 00003b97 auipc s7,0x3 + 80002670: 994b8b93 addi s7,s7,-1644 # 80005000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00007d97 auipc s11,0x7 + 80002680: 984d8d93 addi s11,s11,-1660 # 80009000 + 80002684: 00007a17 auipc s4,0x7 + 80002688: 984a0a13 addi s4,s4,-1660 # 80009008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00001517 auipc a0,0x1 + 8000272c: 9d850513 addi a0,a0,-1576 # 80003100 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00001517 auipc a0,0x1 + 8000273c: 96850513 addi a0,a0,-1688 # 800030a0 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00001517 auipc a0,0x1 + 80002750: 91c50513 addi a0,a0,-1764 # 80003068 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00005797 auipc a5,0x5 + 80002774: 89078793 addi a5,a5,-1904 # 80007000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00006817 auipc a6,0x6 + 80002788: 87c80813 addi a6,a6,-1924 # 80008000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00004517 auipc a0,0x4 + 80002798: 86c50513 addi a0,a0,-1940 # 80006000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00003897 auipc a7,0x3 + 800027b0: 85488893 addi a7,a7,-1964 # 80005000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00002717 auipc a4,0x2 + 8000285c: b9870713 addi a4,a4,-1128 # 800043f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00006617 auipc a2,0x6 + 80002874: 78d63c23 sd a3,1944(a2) # 80009008 + 80002878: 00002317 auipc t1,0x2 + 8000287c: f6830313 addi t1,t1,-152 # 800047e0 + 80002880: 00006697 auipc a3,0x6 + 80002884: 78f6b023 sd a5,1920(a3) # 80009000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02900793 li a5,41 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00002797 auipc a5,0x2 + 800028d4: f007b423 sd zero,-248(a5) # 800047d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 0c2b87b7 lui a5,0xc2b8 + 80002908: 00080637 lui a2,0x80 + 8000290c: 9f278793 addi a5,a5,-1550 # c2b79f2 <_start-0x73d4860e> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 7e050513 addi a0,a0,2016 # 80003130 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 000100b7 lui ra,0x10 + 8000296c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002970: 01009093 slli ra,ra,0x10 + 80002974: f0008093 addi ra,ra,-256 + 80002978: 0f0f1137 lui sp,0xf0f1 + 8000297c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002980: 0020c733 xor a4,ra,sp + 80002984: 000f03b7 lui t2,0xf0 + 80002988: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 8000298c: 00c39393 slli t2,t2,0xc + 80002990: 00f38393 addi t2,t2,15 + 80002994: 00200193 li gp,2 + 80002998: 58771c63 bne a4,t2,80002f30 + +000000008000299c : + 8000299c: 0ff010b7 lui ra,0xff01 + 800029a0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 800029a4: 000f1137 lui sp,0xf1 + 800029a8: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 800029ac: 00c11113 slli sp,sp,0xc + 800029b0: 0f010113 addi sp,sp,240 + 800029b4: 0020c733 xor a4,ra,sp + 800029b8: 000103b7 lui t2,0x10 + 800029bc: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 800029c0: 01039393 slli t2,t2,0x10 + 800029c4: f0038393 addi t2,t2,-256 + 800029c8: 00300193 li gp,3 + 800029cc: 56771263 bne a4,t2,80002f30 + +00000000800029d0 : + 800029d0: 00ff00b7 lui ra,0xff0 + 800029d4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 800029d8: 0f0f1137 lui sp,0xf0f1 + 800029dc: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 800029e0: 0020c733 xor a4,ra,sp + 800029e4: 0ff013b7 lui t2,0xff01 + 800029e8: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 800029ec: 00400193 li gp,4 + 800029f0: 54771063 bne a4,t2,80002f30 + +00000000800029f4 : + 800029f4: 000f00b7 lui ra,0xf0 + 800029f8: 0ff0809b addiw ra,ra,255 # f00ff <_start-0x7ff0ff01> + 800029fc: 00c09093 slli ra,ra,0xc + 80002a00: 00f08093 addi ra,ra,15 + 80002a04: 000f1137 lui sp,0xf1 + 80002a08: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002a0c: 00c11113 slli sp,sp,0xc + 80002a10: 0f010113 addi sp,sp,240 + 80002a14: 0020c733 xor a4,ra,sp + 80002a18: 00ff03b7 lui t2,0xff0 + 80002a1c: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002a20: 00500193 li gp,5 + 80002a24: 50771663 bne a4,t2,80002f30 + +0000000080002a28 : + 80002a28: 000100b7 lui ra,0x10 + 80002a2c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a30: 01009093 slli ra,ra,0x10 + 80002a34: f0008093 addi ra,ra,-256 + 80002a38: 0f0f1137 lui sp,0xf0f1 + 80002a3c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002a40: 0020c0b3 xor ra,ra,sp + 80002a44: 000f03b7 lui t2,0xf0 + 80002a48: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002a4c: 00c39393 slli t2,t2,0xc + 80002a50: 00f38393 addi t2,t2,15 + 80002a54: 00600193 li gp,6 + 80002a58: 4c709c63 bne ra,t2,80002f30 + +0000000080002a5c : + 80002a5c: 000100b7 lui ra,0x10 + 80002a60: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a64: 01009093 slli ra,ra,0x10 + 80002a68: f0008093 addi ra,ra,-256 + 80002a6c: 0f0f1137 lui sp,0xf0f1 + 80002a70: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002a74: 0020c133 xor sp,ra,sp + 80002a78: 000f03b7 lui t2,0xf0 + 80002a7c: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002a80: 00c39393 slli t2,t2,0xc + 80002a84: 00f38393 addi t2,t2,15 + 80002a88: 00700193 li gp,7 + 80002a8c: 4a711263 bne sp,t2,80002f30 + +0000000080002a90 : + 80002a90: 000100b7 lui ra,0x10 + 80002a94: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002a98: 01009093 slli ra,ra,0x10 + 80002a9c: f0008093 addi ra,ra,-256 + 80002aa0: 0010c0b3 xor ra,ra,ra + 80002aa4: 00000393 li t2,0 + 80002aa8: 00800193 li gp,8 + 80002aac: 48709263 bne ra,t2,80002f30 + +0000000080002ab0 : + 80002ab0: 00000213 li tp,0 + 80002ab4: 000100b7 lui ra,0x10 + 80002ab8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002abc: 01009093 slli ra,ra,0x10 + 80002ac0: f0008093 addi ra,ra,-256 + 80002ac4: 0f0f1137 lui sp,0xf0f1 + 80002ac8: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002acc: 0020c733 xor a4,ra,sp + 80002ad0: 00070313 mv t1,a4 + 80002ad4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ad8: 00200293 li t0,2 + 80002adc: fc521ce3 bne tp,t0,80002ab4 + 80002ae0: 000f03b7 lui t2,0xf0 + 80002ae4: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002ae8: 00c39393 slli t2,t2,0xc + 80002aec: 00f38393 addi t2,t2,15 + 80002af0: 00900193 li gp,9 + 80002af4: 42731e63 bne t1,t2,80002f30 + +0000000080002af8 : + 80002af8: 00000213 li tp,0 + 80002afc: 0ff010b7 lui ra,0xff01 + 80002b00: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002b04: 000f1137 lui sp,0xf1 + 80002b08: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002b0c: 00c11113 slli sp,sp,0xc + 80002b10: 0f010113 addi sp,sp,240 + 80002b14: 0020c733 xor a4,ra,sp + 80002b18: 00000013 nop + 80002b1c: 00070313 mv t1,a4 + 80002b20: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b24: 00200293 li t0,2 + 80002b28: fc521ae3 bne tp,t0,80002afc + 80002b2c: 000103b7 lui t2,0x10 + 80002b30: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002b34: 01039393 slli t2,t2,0x10 + 80002b38: f0038393 addi t2,t2,-256 + 80002b3c: 00a00193 li gp,10 + 80002b40: 3e731863 bne t1,t2,80002f30 + +0000000080002b44 : + 80002b44: 00000213 li tp,0 + 80002b48: 00ff00b7 lui ra,0xff0 + 80002b4c: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b50: 0f0f1137 lui sp,0xf0f1 + 80002b54: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002b58: 0020c733 xor a4,ra,sp + 80002b5c: 00000013 nop + 80002b60: 00000013 nop + 80002b64: 00070313 mv t1,a4 + 80002b68: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b6c: 00200293 li t0,2 + 80002b70: fc521ce3 bne tp,t0,80002b48 + 80002b74: 0ff013b7 lui t2,0xff01 + 80002b78: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002b7c: 00b00193 li gp,11 + 80002b80: 3a731863 bne t1,t2,80002f30 + +0000000080002b84 : + 80002b84: 00000213 li tp,0 + 80002b88: 000100b7 lui ra,0x10 + 80002b8c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002b90: 01009093 slli ra,ra,0x10 + 80002b94: f0008093 addi ra,ra,-256 + 80002b98: 0f0f1137 lui sp,0xf0f1 + 80002b9c: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002ba0: 0020c733 xor a4,ra,sp + 80002ba4: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ba8: 00200293 li t0,2 + 80002bac: fc521ee3 bne tp,t0,80002b88 + 80002bb0: 000f03b7 lui t2,0xf0 + 80002bb4: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002bb8: 00c39393 slli t2,t2,0xc + 80002bbc: 00f38393 addi t2,t2,15 + 80002bc0: 00c00193 li gp,12 + 80002bc4: 36771663 bne a4,t2,80002f30 + +0000000080002bc8 : + 80002bc8: 00000213 li tp,0 + 80002bcc: 0ff010b7 lui ra,0xff01 + 80002bd0: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002bd4: 000f1137 lui sp,0xf1 + 80002bd8: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002bdc: 00c11113 slli sp,sp,0xc + 80002be0: 0f010113 addi sp,sp,240 + 80002be4: 00000013 nop + 80002be8: 0020c733 xor a4,ra,sp + 80002bec: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002bf0: 00200293 li t0,2 + 80002bf4: fc521ce3 bne tp,t0,80002bcc + 80002bf8: 000103b7 lui t2,0x10 + 80002bfc: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002c00: 01039393 slli t2,t2,0x10 + 80002c04: f0038393 addi t2,t2,-256 + 80002c08: 00d00193 li gp,13 + 80002c0c: 32771263 bne a4,t2,80002f30 + +0000000080002c10 : + 80002c10: 00000213 li tp,0 + 80002c14: 00ff00b7 lui ra,0xff0 + 80002c18: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002c1c: 0f0f1137 lui sp,0xf0f1 + 80002c20: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002c24: 00000013 nop + 80002c28: 00000013 nop + 80002c2c: 0020c733 xor a4,ra,sp + 80002c30: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c34: 00200293 li t0,2 + 80002c38: fc521ee3 bne tp,t0,80002c14 + 80002c3c: 0ff013b7 lui t2,0xff01 + 80002c40: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002c44: 00e00193 li gp,14 + 80002c48: 2e771463 bne a4,t2,80002f30 + +0000000080002c4c : + 80002c4c: 00000213 li tp,0 + 80002c50: 000100b7 lui ra,0x10 + 80002c54: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002c58: 01009093 slli ra,ra,0x10 + 80002c5c: f0008093 addi ra,ra,-256 + 80002c60: 00000013 nop + 80002c64: 0f0f1137 lui sp,0xf0f1 + 80002c68: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002c6c: 0020c733 xor a4,ra,sp + 80002c70: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002c74: 00200293 li t0,2 + 80002c78: fc521ce3 bne tp,t0,80002c50 + 80002c7c: 000f03b7 lui t2,0xf0 + 80002c80: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002c84: 00c39393 slli t2,t2,0xc + 80002c88: 00f38393 addi t2,t2,15 + 80002c8c: 00f00193 li gp,15 + 80002c90: 2a771063 bne a4,t2,80002f30 + +0000000080002c94 : + 80002c94: 00000213 li tp,0 + 80002c98: 0ff010b7 lui ra,0xff01 + 80002c9c: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002ca0: 00000013 nop + 80002ca4: 000f1137 lui sp,0xf1 + 80002ca8: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002cac: 00c11113 slli sp,sp,0xc + 80002cb0: 0f010113 addi sp,sp,240 + 80002cb4: 00000013 nop + 80002cb8: 0020c733 xor a4,ra,sp + 80002cbc: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002cc0: 00200293 li t0,2 + 80002cc4: fc521ae3 bne tp,t0,80002c98 + 80002cc8: 000103b7 lui t2,0x10 + 80002ccc: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002cd0: 01039393 slli t2,t2,0x10 + 80002cd4: f0038393 addi t2,t2,-256 + 80002cd8: 01000193 li gp,16 + 80002cdc: 24771a63 bne a4,t2,80002f30 + +0000000080002ce0 : + 80002ce0: 00000213 li tp,0 + 80002ce4: 00ff00b7 lui ra,0xff0 + 80002ce8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002cec: 00000013 nop + 80002cf0: 00000013 nop + 80002cf4: 0f0f1137 lui sp,0xf0f1 + 80002cf8: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002cfc: 0020c733 xor a4,ra,sp + 80002d00: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d04: 00200293 li t0,2 + 80002d08: fc521ee3 bne tp,t0,80002ce4 + 80002d0c: 0ff013b7 lui t2,0xff01 + 80002d10: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002d14: 01100193 li gp,17 + 80002d18: 20771c63 bne a4,t2,80002f30 + +0000000080002d1c : + 80002d1c: 00000213 li tp,0 + 80002d20: 0f0f1137 lui sp,0xf0f1 + 80002d24: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002d28: 000100b7 lui ra,0x10 + 80002d2c: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002d30: 01009093 slli ra,ra,0x10 + 80002d34: f0008093 addi ra,ra,-256 + 80002d38: 0020c733 xor a4,ra,sp + 80002d3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d40: 00200293 li t0,2 + 80002d44: fc521ee3 bne tp,t0,80002d20 + 80002d48: 000f03b7 lui t2,0xf0 + 80002d4c: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002d50: 00c39393 slli t2,t2,0xc + 80002d54: 00f38393 addi t2,t2,15 + 80002d58: 01200193 li gp,18 + 80002d5c: 1c771a63 bne a4,t2,80002f30 + +0000000080002d60 : + 80002d60: 00000213 li tp,0 + 80002d64: 000f1137 lui sp,0xf1 + 80002d68: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002d6c: 00c11113 slli sp,sp,0xc + 80002d70: 0f010113 addi sp,sp,240 + 80002d74: 0ff010b7 lui ra,0xff01 + 80002d78: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002d7c: 00000013 nop + 80002d80: 0020c733 xor a4,ra,sp + 80002d84: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002d88: 00200293 li t0,2 + 80002d8c: fc521ce3 bne tp,t0,80002d64 + 80002d90: 000103b7 lui t2,0x10 + 80002d94: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002d98: 01039393 slli t2,t2,0x10 + 80002d9c: f0038393 addi t2,t2,-256 + 80002da0: 01300193 li gp,19 + 80002da4: 18771663 bne a4,t2,80002f30 + +0000000080002da8 : + 80002da8: 00000213 li tp,0 + 80002dac: 0f0f1137 lui sp,0xf0f1 + 80002db0: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002db4: 00ff00b7 lui ra,0xff0 + 80002db8: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002dbc: 00000013 nop + 80002dc0: 00000013 nop + 80002dc4: 0020c733 xor a4,ra,sp + 80002dc8: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002dcc: 00200293 li t0,2 + 80002dd0: fc521ee3 bne tp,t0,80002dac + 80002dd4: 0ff013b7 lui t2,0xff01 + 80002dd8: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002ddc: 01400193 li gp,20 + 80002de0: 14771863 bne a4,t2,80002f30 + +0000000080002de4 : + 80002de4: 00000213 li tp,0 + 80002de8: 0f0f1137 lui sp,0xf0f1 + 80002dec: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002df0: 00000013 nop + 80002df4: 000100b7 lui ra,0x10 + 80002df8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002dfc: 01009093 slli ra,ra,0x10 + 80002e00: f0008093 addi ra,ra,-256 + 80002e04: 0020c733 xor a4,ra,sp + 80002e08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e0c: 00200293 li t0,2 + 80002e10: fc521ce3 bne tp,t0,80002de8 + 80002e14: 000f03b7 lui t2,0xf0 + 80002e18: 0ff3839b addiw t2,t2,255 # f00ff <_start-0x7ff0ff01> + 80002e1c: 00c39393 slli t2,t2,0xc + 80002e20: 00f38393 addi t2,t2,15 + 80002e24: 01500193 li gp,21 + 80002e28: 10771463 bne a4,t2,80002f30 + +0000000080002e2c : + 80002e2c: 00000213 li tp,0 + 80002e30: 000f1137 lui sp,0xf1 + 80002e34: f0f1011b addiw sp,sp,-241 # f0f0f <_start-0x7ff0f0f1> + 80002e38: 00c11113 slli sp,sp,0xc + 80002e3c: 0f010113 addi sp,sp,240 + 80002e40: 00000013 nop + 80002e44: 0ff010b7 lui ra,0xff01 + 80002e48: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002e4c: 00000013 nop + 80002e50: 0020c733 xor a4,ra,sp + 80002e54: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e58: 00200293 li t0,2 + 80002e5c: fc521ae3 bne tp,t0,80002e30 + 80002e60: 000103b7 lui t2,0x10 + 80002e64: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002e68: 01039393 slli t2,t2,0x10 + 80002e6c: f0038393 addi t2,t2,-256 + 80002e70: 01600193 li gp,22 + 80002e74: 0a771e63 bne a4,t2,80002f30 + +0000000080002e78 : + 80002e78: 00000213 li tp,0 + 80002e7c: 0f0f1137 lui sp,0xf0f1 + 80002e80: f0f1011b addiw sp,sp,-241 # f0f0f0f <_start-0x70f0f0f1> + 80002e84: 00000013 nop + 80002e88: 00000013 nop + 80002e8c: 00ff00b7 lui ra,0xff0 + 80002e90: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002e94: 0020c733 xor a4,ra,sp + 80002e98: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002e9c: 00200293 li t0,2 + 80002ea0: fc521ee3 bne tp,t0,80002e7c + 80002ea4: 0ff013b7 lui t2,0xff01 + 80002ea8: ff03839b addiw t2,t2,-16 # ff00ff0 <_start-0x700ff010> + 80002eac: 01700193 li gp,23 + 80002eb0: 08771063 bne a4,t2,80002f30 + +0000000080002eb4 : + 80002eb4: 000100b7 lui ra,0x10 + 80002eb8: f010809b addiw ra,ra,-255 # ff01 <_start-0x7fff00ff> + 80002ebc: 01009093 slli ra,ra,0x10 + 80002ec0: f0008093 addi ra,ra,-256 + 80002ec4: 00104133 xor sp,zero,ra + 80002ec8: 000103b7 lui t2,0x10 + 80002ecc: f013839b addiw t2,t2,-255 # ff01 <_start-0x7fff00ff> + 80002ed0: 01039393 slli t2,t2,0x10 + 80002ed4: f0038393 addi t2,t2,-256 + 80002ed8: 01800193 li gp,24 + 80002edc: 04711a63 bne sp,t2,80002f30 + +0000000080002ee0 : + 80002ee0: 00ff00b7 lui ra,0xff0 + 80002ee4: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002ee8: 0000c133 xor sp,ra,zero + 80002eec: 00ff03b7 lui t2,0xff0 + 80002ef0: 0ff3839b addiw t2,t2,255 # ff00ff <_start-0x7f00ff01> + 80002ef4: 01900193 li gp,25 + 80002ef8: 02711c63 bne sp,t2,80002f30 + +0000000080002efc : + 80002efc: 000040b3 xor ra,zero,zero + 80002f00: 00000393 li t2,0 + 80002f04: 01a00193 li gp,26 + 80002f08: 02709463 bne ra,t2,80002f30 + +0000000080002f0c : + 80002f0c: 111110b7 lui ra,0x11111 + 80002f10: 1110809b addiw ra,ra,273 # 11111111 <_start-0x6eeeeeef> + 80002f14: 22222137 lui sp,0x22222 + 80002f18: 2221011b addiw sp,sp,546 # 22222222 <_start-0x5dddddde> + 80002f1c: 0020c033 xor zero,ra,sp + 80002f20: 00000393 li t2,0 + 80002f24: 01b00193 li gp,27 + 80002f28: 00701463 bne zero,t2,80002f30 + 80002f2c: 00301a63 bne zero,gp,80002f40 + +0000000080002f30 : + 80002f30: 00119513 slli a0,gp,0x1 + 80002f34: 00050063 beqz a0,80002f34 + 80002f38: 00156513 ori a0,a0,1 + 80002f3c: 00000073 ecall + +0000000080002f40 : + 80002f40: 00100513 li a0,1 + 80002f44: 00000073 ecall + 80002f48: c0001073 unimp diff --git a/tests/rv64ui-v-xori b/tests/rv64ui-v-xori new file mode 100644 index 0000000000000000000000000000000000000000..7d9dd0d9398d8080a824a1e838643f59d2f47b53 GIT binary patch literal 18624 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: + 80000000: 00c0006f j 8000000c + +0000000080000004 : + 80000004: 2c80206f j 800022cc + +0000000080000008 : + 80000008: 2c40206f j 800022cc + +000000008000000c : + 8000000c: 00000093 li ra,0 + 80000010: 00000113 li sp,0 + 80000014: 00000193 li gp,0 + 80000018: 00000213 li tp,0 + 8000001c: 00000293 li t0,0 + 80000020: 00000313 li t1,0 + 80000024: 00000393 li t2,0 + 80000028: 00000413 li s0,0 + 8000002c: 00000493 li s1,0 + 80000030: 00000513 li a0,0 + 80000034: 00000593 li a1,0 + 80000038: 00000613 li a2,0 + 8000003c: 00000693 li a3,0 + 80000040: 00000713 li a4,0 + 80000044: 00000793 li a5,0 + 80000048: 00000813 li a6,0 + 8000004c: 00000893 li a7,0 + 80000050: 00000913 li s2,0 + 80000054: 00000993 li s3,0 + 80000058: 00000a13 li s4,0 + 8000005c: 00000a93 li s5,0 + 80000060: 00000b13 li s6,0 + 80000064: 00000b93 li s7,0 + 80000068: 00000c13 li s8,0 + 8000006c: 00000c93 li s9,0 + 80000070: 00000d13 li s10,0 + 80000074: 00000d93 li s11,0 + 80000078: 00000e13 li t3,0 + 8000007c: 00000e93 li t4,0 + 80000080: 00000f13 li t5,0 + 80000084: 00000f93 li t6,0 + 80000088: 00000297 auipc t0,0x0 + 8000008c: f8028293 addi t0,t0,-128 # 80000008 + 80000090: 30529073 csrw mtvec,t0 + 80000094: 00009117 auipc sp,0x9 + 80000098: e4c10113 addi sp,sp,-436 # 80008ee0 + 8000009c: f14022f3 csrr t0,mhartid + 800000a0: 00c29293 slli t0,t0,0xc + 800000a4: 00510133 add sp,sp,t0 + 800000a8: 34011073 csrw mscratch,sp + 800000ac: 0b9020ef jal ra,80002964 + 800000b0: 00003517 auipc a0,0x3 + 800000b4: 8b850513 addi a0,a0,-1864 # 80002968 + 800000b8: 6b00206f j 80002768 + +00000000800000bc : + 800000bc: 10853283 ld t0,264(a0) + 800000c0: 14129073 csrw sepc,t0 + 800000c4: 00853083 ld ra,8(a0) + 800000c8: 01053103 ld sp,16(a0) + 800000cc: 01853183 ld gp,24(a0) + 800000d0: 02053203 ld tp,32(a0) + 800000d4: 02853283 ld t0,40(a0) + 800000d8: 03053303 ld t1,48(a0) + 800000dc: 03853383 ld t2,56(a0) + 800000e0: 04053403 ld s0,64(a0) + 800000e4: 04853483 ld s1,72(a0) + 800000e8: 05853583 ld a1,88(a0) + 800000ec: 06053603 ld a2,96(a0) + 800000f0: 06853683 ld a3,104(a0) + 800000f4: 07053703 ld a4,112(a0) + 800000f8: 07853783 ld a5,120(a0) + 800000fc: 08053803 ld a6,128(a0) + 80000100: 08853883 ld a7,136(a0) + 80000104: 09053903 ld s2,144(a0) + 80000108: 09853983 ld s3,152(a0) + 8000010c: 0a053a03 ld s4,160(a0) + 80000110: 0a853a83 ld s5,168(a0) + 80000114: 0b053b03 ld s6,176(a0) + 80000118: 0b853b83 ld s7,184(a0) + 8000011c: 0c053c03 ld s8,192(a0) + 80000120: 0c853c83 ld s9,200(a0) + 80000124: 0d053d03 ld s10,208(a0) + 80000128: 0d853d83 ld s11,216(a0) + 8000012c: 0e053e03 ld t3,224(a0) + 80000130: 0e853e83 ld t4,232(a0) + 80000134: 0f053f03 ld t5,240(a0) + 80000138: 0f853f83 ld t6,248(a0) + 8000013c: 05053503 ld a0,80(a0) + 80000140: 10200073 sret + +0000000080000144 : + 80000144: 14011173 csrrw sp,sscratch,sp + 80000148: 00113423 sd ra,8(sp) + 8000014c: 00313c23 sd gp,24(sp) + 80000150: 02413023 sd tp,32(sp) + 80000154: 02513423 sd t0,40(sp) + 80000158: 02613823 sd t1,48(sp) + 8000015c: 02713c23 sd t2,56(sp) + 80000160: 04813023 sd s0,64(sp) + 80000164: 04913423 sd s1,72(sp) + 80000168: 04a13823 sd a0,80(sp) + 8000016c: 04b13c23 sd a1,88(sp) + 80000170: 06c13023 sd a2,96(sp) + 80000174: 06d13423 sd a3,104(sp) + 80000178: 06e13823 sd a4,112(sp) + 8000017c: 06f13c23 sd a5,120(sp) + 80000180: 09013023 sd a6,128(sp) + 80000184: 09113423 sd a7,136(sp) + 80000188: 09213823 sd s2,144(sp) + 8000018c: 09313c23 sd s3,152(sp) + 80000190: 0b413023 sd s4,160(sp) + 80000194: 0b513423 sd s5,168(sp) + 80000198: 0b613823 sd s6,176(sp) + 8000019c: 0b713c23 sd s7,184(sp) + 800001a0: 0d813023 sd s8,192(sp) + 800001a4: 0d913423 sd s9,200(sp) + 800001a8: 0da13823 sd s10,208(sp) + 800001ac: 0db13c23 sd s11,216(sp) + 800001b0: 0fc13023 sd t3,224(sp) + 800001b4: 0fd13423 sd t4,232(sp) + 800001b8: 0fe13823 sd t5,240(sp) + 800001bc: 0ff13c23 sd t6,248(sp) + 800001c0: 140112f3 csrrw t0,sscratch,sp + 800001c4: 00513823 sd t0,16(sp) + 800001c8: 100022f3 csrr t0,sstatus + 800001cc: 10513023 sd t0,256(sp) + 800001d0: 141022f3 csrr t0,sepc + 800001d4: 10513423 sd t0,264(sp) + 800001d8: 143022f3 csrr t0,stval + 800001dc: 10513823 sd t0,272(sp) + 800001e0: 142022f3 csrr t0,scause + 800001e4: 10513c23 sd t0,280(sp) + 800001e8: 00010513 mv a0,sp + 800001ec: 3380206f j 80002524 + +Disassembly of section .text: + +0000000080002000 : + 80002000: 00b567b3 or a5,a0,a1 + 80002004: 00c7e7b3 or a5,a5,a2 + 80002008: 0077f793 andi a5,a5,7 + 8000200c: 00c506b3 add a3,a0,a2 + 80002010: 02078463 beqz a5,80002038 + 80002014: 00c58633 add a2,a1,a2 + 80002018: 00050793 mv a5,a0 + 8000201c: 02d57e63 bgeu a0,a3,80002058 + 80002020: 0005c703 lbu a4,0(a1) + 80002024: 00158593 addi a1,a1,1 + 80002028: 00178793 addi a5,a5,1 + 8000202c: fee78fa3 sb a4,-1(a5) + 80002030: fec598e3 bne a1,a2,80002020 + 80002034: 00008067 ret + 80002038: fed57ee3 bgeu a0,a3,80002034 + 8000203c: 00050793 mv a5,a0 + 80002040: 0005b703 ld a4,0(a1) + 80002044: 00878793 addi a5,a5,8 + 80002048: 00858593 addi a1,a1,8 + 8000204c: fee7bc23 sd a4,-8(a5) + 80002050: fed7e8e3 bltu a5,a3,80002040 + 80002054: 00008067 ret + 80002058: 00008067 ret + +000000008000205c : + 8000205c: ff010113 addi sp,sp,-16 + 80002060: 00c567b3 or a5,a0,a2 + 80002064: 00813023 sd s0,0(sp) + 80002068: 00113423 sd ra,8(sp) + 8000206c: 0077f793 andi a5,a5,7 + 80002070: 00050413 mv s0,a0 + 80002074: 00c50733 add a4,a0,a2 + 80002078: 02078263 beqz a5,8000209c + 8000207c: 00e57663 bgeu a0,a4,80002088 + 80002080: 0ff5f593 zext.b a1,a1 + 80002084: fd9ff0ef jal ra,8000205c + 80002088: 00813083 ld ra,8(sp) + 8000208c: 00040513 mv a0,s0 + 80002090: 00013403 ld s0,0(sp) + 80002094: 01010113 addi sp,sp,16 + 80002098: 00008067 ret + 8000209c: 0ff5f593 zext.b a1,a1 + 800020a0: 00859693 slli a3,a1,0x8 + 800020a4: 00b6e6b3 or a3,a3,a1 + 800020a8: 01069793 slli a5,a3,0x10 + 800020ac: 00d7e7b3 or a5,a5,a3 + 800020b0: 02079693 slli a3,a5,0x20 + 800020b4: 00f6e6b3 or a3,a3,a5 + 800020b8: fce578e3 bgeu a0,a4,80002088 + 800020bc: 00050793 mv a5,a0 + 800020c0: 00878793 addi a5,a5,8 + 800020c4: fed7bc23 sd a3,-8(a5) + 800020c8: fee7ece3 bltu a5,a4,800020c0 + 800020cc: 00813083 ld ra,8(sp) + 800020d0: 00040513 mv a0,s0 + 800020d4: 00013403 ld s0,0(sp) + 800020d8: 01010113 addi sp,sp,16 + 800020dc: 00008067 ret + +00000000800020e0 : + 800020e0: 00054783 lbu a5,0(a0) + 800020e4: 00078e63 beqz a5,80002100 + 800020e8: 00050793 mv a5,a0 + 800020ec: 0017c703 lbu a4,1(a5) + 800020f0: 00178793 addi a5,a5,1 + 800020f4: fe071ce3 bnez a4,800020ec + 800020f8: 40a78533 sub a0,a5,a0 + 800020fc: 00008067 ret + 80002100: 00000513 li a0,0 + 80002104: 00008067 ret + +0000000080002108 : + 80002108: 00054783 lbu a5,0(a0) + 8000210c: 00158593 addi a1,a1,1 + 80002110: 00150513 addi a0,a0,1 + 80002114: fff5c703 lbu a4,-1(a1) + 80002118: 00078a63 beqz a5,8000212c + 8000211c: fee786e3 beq a5,a4,80002108 + 80002120: 0007851b sext.w a0,a5 + 80002124: 40e5053b subw a0,a0,a4 + 80002128: 00008067 ret + 8000212c: 00000513 li a0,0 + 80002130: ff5ff06f j 80002124 + +0000000080002134 : + 80002134: 00b567b3 or a5,a0,a1 + 80002138: 0077f793 andi a5,a5,7 + 8000213c: 02079e63 bnez a5,80002178 + 80002140: ff867813 andi a6,a2,-8 + 80002144: 01050833 add a6,a0,a6 + 80002148: 03057863 bgeu a0,a6,80002178 + 8000214c: 00050793 mv a5,a0 + 80002150: 0100006f j 80002160 + 80002154: 00878793 addi a5,a5,8 + 80002158: 00858593 addi a1,a1,8 + 8000215c: 0107f863 bgeu a5,a6,8000216c + 80002160: 0007b683 ld a3,0(a5) + 80002164: 0005b703 ld a4,0(a1) + 80002168: fee686e3 beq a3,a4,80002154 + 8000216c: 40a78533 sub a0,a5,a0 + 80002170: 40a60633 sub a2,a2,a0 + 80002174: 00078513 mv a0,a5 + 80002178: 00c58633 add a2,a1,a2 + 8000217c: 0140006f j 80002190 + 80002180: 0005c703 lbu a4,0(a1) + 80002184: fff54783 lbu a5,-1(a0) + 80002188: 00158593 addi a1,a1,1 + 8000218c: 00e79a63 bne a5,a4,800021a0 + 80002190: 00150513 addi a0,a0,1 + 80002194: fec596e3 bne a1,a2,80002180 + 80002198: 00000513 li a0,0 + 8000219c: 00008067 ret + 800021a0: 40e7853b subw a0,a5,a4 + 800021a4: 00008067 ret + +00000000800021a8 : + 800021a8: 00050793 mv a5,a0 + 800021ac: 0005c703 lbu a4,0(a1) + 800021b0: 00178793 addi a5,a5,1 + 800021b4: 00158593 addi a1,a1,1 + 800021b8: fee78fa3 sb a4,-1(a5) + 800021bc: fe0718e3 bnez a4,800021ac + 800021c0: 00008067 ret + +00000000800021c4 : + 800021c4: 00054703 lbu a4,0(a0) + 800021c8: 02000693 li a3,32 + 800021cc: 00050793 mv a5,a0 + 800021d0: 00d71863 bne a4,a3,800021e0 + 800021d4: 0017c703 lbu a4,1(a5) + 800021d8: 00178793 addi a5,a5,1 + 800021dc: fed70ce3 beq a4,a3,800021d4 + 800021e0: 02d00693 li a3,45 + 800021e4: 06d70063 beq a4,a3,80002244 + 800021e8: 02b00693 li a3,43 + 800021ec: 04d70063 beq a4,a3,8000222c + 800021f0: 0007c683 lbu a3,0(a5) + 800021f4: 00000593 li a1,0 + 800021f8: 04068263 beqz a3,8000223c + 800021fc: 00000513 li a0,0 + 80002200: 00178793 addi a5,a5,1 + 80002204: 00251713 slli a4,a0,0x2 + 80002208: fd06861b addiw a2,a3,-48 + 8000220c: 0007c683 lbu a3,0(a5) + 80002210: 00a70733 add a4,a4,a0 + 80002214: 00171713 slli a4,a4,0x1 + 80002218: 00e60533 add a0,a2,a4 + 8000221c: fe0692e3 bnez a3,80002200 + 80002220: 02058063 beqz a1,80002240 + 80002224: 40a00533 neg a0,a0 + 80002228: 00008067 ret + 8000222c: 0017c683 lbu a3,1(a5) + 80002230: 00000593 li a1,0 + 80002234: 00178793 addi a5,a5,1 + 80002238: fc0692e3 bnez a3,800021fc + 8000223c: 00000513 li a0,0 + 80002240: 00008067 ret + 80002244: 0017c683 lbu a3,1(a5) + 80002248: 00100593 li a1,1 + 8000224c: 00178793 addi a5,a5,1 + 80002250: fa0696e3 bnez a3,800021fc + 80002254: 00000513 li a0,0 + 80002258: fe9ff06f j 80002240 + +000000008000225c : + 8000225c: 00054783 lbu a5,0(a0) + 80002260: 04078063 beqz a5,800022a0 + 80002264: 10100593 li a1,257 + 80002268: fffff717 auipc a4,0xfffff + 8000226c: d9870713 addi a4,a4,-616 # 80001000 + 80002270: 03059593 slli a1,a1,0x30 + 80002274: 00073603 ld a2,0(a4) + 80002278: 00150513 addi a0,a0,1 + 8000227c: 00b7e6b3 or a3,a5,a1 + 80002280: 00060a63 beqz a2,80002294 + 80002284: fffff797 auipc a5,0xfffff + 80002288: da07be23 sd zero,-580(a5) # 80001040 + 8000228c: 00073783 ld a5,0(a4) + 80002290: fe079ae3 bnez a5,80002284 + 80002294: 00d73023 sd a3,0(a4) + 80002298: 00054783 lbu a5,0(a0) + 8000229c: fc079ce3 bnez a5,80002274 + 800022a0: 00008067 ret + +00000000800022a4 : + 800022a4: fffff717 auipc a4,0xfffff + 800022a8: d5c70713 addi a4,a4,-676 # 80001000 + 800022ac: 00073783 ld a5,0(a4) + 800022b0: 00078a63 beqz a5,800022c4 + 800022b4: fffff797 auipc a5,0xfffff + 800022b8: d807b623 sd zero,-628(a5) # 80001040 + 800022bc: 00073783 ld a5,0(a4) + 800022c0: fe079ae3 bnez a5,800022b4 + 800022c4: 00a73023 sd a0,0(a4) + 800022c8: 0000006f j 800022c8 + +00000000800022cc : + 800022cc: ff010113 addi sp,sp,-16 + 800022d0: 34900513 li a0,841 + 800022d4: 00113423 sd ra,8(sp) + 800022d8: fcdff0ef jal ra,800022a4 + +00000000800022dc : + 800022dc: fe010113 addi sp,sp,-32 + 800022e0: 00810613 addi a2,sp,8 + 800022e4: 01710793 addi a5,sp,23 + 800022e8: 00900813 li a6,9 + 800022ec: 0080006f j 800022f4 + 800022f0: 00070793 mv a5,a4 + 800022f4: 00f57693 andi a3,a0,15 + 800022f8: 00068713 mv a4,a3 + 800022fc: 03000593 li a1,48 + 80002300: 00d87463 bgeu a6,a3,80002308 + 80002304: 05700593 li a1,87 + 80002308: 00b7073b addw a4,a4,a1 + 8000230c: 00e78023 sb a4,0(a5) + 80002310: 00455513 srli a0,a0,0x4 + 80002314: fff78713 addi a4,a5,-1 + 80002318: fcf61ce3 bne a2,a5,800022f0 + 8000231c: 00814783 lbu a5,8(sp) + 80002320: 00010c23 sb zero,24(sp) + 80002324: 04078263 beqz a5,80002368 + 80002328: 10100513 li a0,257 + 8000232c: 00060693 mv a3,a2 + 80002330: fffff717 auipc a4,0xfffff + 80002334: cd070713 addi a4,a4,-816 # 80001000 + 80002338: 03051513 slli a0,a0,0x30 + 8000233c: 00073583 ld a1,0(a4) + 80002340: 00168693 addi a3,a3,1 + 80002344: 00a7e633 or a2,a5,a0 + 80002348: 00058a63 beqz a1,8000235c + 8000234c: fffff797 auipc a5,0xfffff + 80002350: ce07ba23 sd zero,-780(a5) # 80001040 + 80002354: 00073783 ld a5,0(a4) + 80002358: fe079ae3 bnez a5,8000234c + 8000235c: 0006c783 lbu a5,0(a3) + 80002360: 00c73023 sd a2,0(a4) + 80002364: fc079ce3 bnez a5,8000233c + 80002368: 02010113 addi sp,sp,32 + 8000236c: 00008067 ret + +0000000080002370 : + 80002370: ff010113 addi sp,sp,-16 + 80002374: fffff837 lui a6,0xfffff + 80002378: 00113423 sd ra,8(sp) + 8000237c: 01050733 add a4,a0,a6 + 80002380: 0003e7b7 lui a5,0x3e + 80002384: 14f77863 bgeu a4,a5,800024d4 + 80002388: 00c55713 srli a4,a0,0xc + 8000238c: 60070693 addi a3,a4,1536 + 80002390: 00002617 auipc a2,0x2 + 80002394: c7060613 addi a2,a2,-912 # 80004000 + 80002398: 00369793 slli a5,a3,0x3 + 8000239c: 00f607b3 add a5,a2,a5 + 800023a0: 0007b783 ld a5,0(a5) # 3e000 <_start-0x7ffc2000> + 800023a4: 01057533 and a0,a0,a6 + 800023a8: 0e079063 bnez a5,80002488 + 800023ac: 00006597 auipc a1,0x6 + 800023b0: c5c58593 addi a1,a1,-932 # 80008008 + 800023b4: 0005b803 ld a6,0(a1) + 800023b8: 14080263 beqz a6,800024fc + 800023bc: 00883783 ld a5,8(a6) # fffffffffffff008 + 800023c0: 00006897 auipc a7,0x6 + 800023c4: c408b883 ld a7,-960(a7) # 80008000 + 800023c8: 00f5b023 sd a5,0(a1) + 800023cc: 0f178e63 beq a5,a7,800024c8 + 800023d0: 00083783 ld a5,0(a6) + 800023d4: 00369893 slli a7,a3,0x3 + 800023d8: 011608b3 add a7,a2,a7 + 800023dc: 00c7d793 srli a5,a5,0xc + 800023e0: 00a79793 slli a5,a5,0xa + 800023e4: 0df7e313 ori t1,a5,223 + 800023e8: 01f7e593 ori a1,a5,31 + 800023ec: 0068b023 sd t1,0(a7) + 800023f0: 12050073 sfence.vma a0 + 800023f4: 00001797 auipc a5,0x1 + 800023f8: c0c78793 addi a5,a5,-1012 # 80003000 + 800023fc: 00471713 slli a4,a4,0x4 + 80002400: 00e787b3 add a5,a5,a4 + 80002404: 0007b703 ld a4,0(a5) + 80002408: 10071463 bnez a4,80002510 + 8000240c: 00083703 ld a4,0(a6) + 80002410: 000408b7 lui a7,0x40 + 80002414: 00e7b023 sd a4,0(a5) + 80002418: 00883703 ld a4,8(a6) + 8000241c: 00e7b423 sd a4,8(a5) + 80002420: 1008a8f3 csrrs a7,sstatus,a7 + 80002424: ffe007b7 lui a5,0xffe00 + 80002428: 00f507b3 add a5,a0,a5 + 8000242c: 00001837 lui a6,0x1 + 80002430: 00050713 mv a4,a0 + 80002434: 01078833 add a6,a5,a6 + 80002438: 0007bf03 ld t5,0(a5) # ffffffffffe00000 + 8000243c: 0087be83 ld t4,8(a5) + 80002440: 0107be03 ld t3,16(a5) + 80002444: 0187b303 ld t1,24(a5) + 80002448: 01e73023 sd t5,0(a4) + 8000244c: 01d73423 sd t4,8(a4) + 80002450: 01c73823 sd t3,16(a4) + 80002454: 00673c23 sd t1,24(a4) + 80002458: 02078793 addi a5,a5,32 + 8000245c: 02070713 addi a4,a4,32 + 80002460: fd079ce3 bne a5,a6,80002438 + 80002464: 10089073 csrw sstatus,a7 + 80002468: 00369793 slli a5,a3,0x3 + 8000246c: 00f606b3 add a3,a2,a5 + 80002470: 00b6b023 sd a1,0(a3) + 80002474: 12050073 sfence.vma a0 + 80002478: 0000100f fence.i + 8000247c: 00813083 ld ra,8(sp) + 80002480: 01010113 addi sp,sp,16 + 80002484: 00008067 ret + 80002488: 0407f713 andi a4,a5,64 + 8000248c: 02070a63 beqz a4,800024c0 + 80002490: 0807f713 andi a4,a5,128 + 80002494: 04071a63 bnez a4,800024e8 + 80002498: 00f00713 li a4,15 + 8000249c: 0807e793 ori a5,a5,128 + 800024a0: 04e59463 bne a1,a4,800024e8 + 800024a4: 00369693 slli a3,a3,0x3 + 800024a8: 00d606b3 add a3,a2,a3 + 800024ac: 00f6b023 sd a5,0(a3) + 800024b0: 12050073 sfence.vma a0 + 800024b4: 00813083 ld ra,8(sp) + 800024b8: 01010113 addi sp,sp,16 + 800024bc: 00008067 ret + 800024c0: 0407e793 ori a5,a5,64 + 800024c4: fe1ff06f j 800024a4 + 800024c8: 00006797 auipc a5,0x6 + 800024cc: b207bc23 sd zero,-1224(a5) # 80008000 + 800024d0: f01ff06f j 800023d0 + 800024d4: 00000517 auipc a0,0x0 + 800024d8: 69450513 addi a0,a0,1684 # 80002b68 + 800024dc: d81ff0ef jal ra,8000225c + 800024e0: 00300513 li a0,3 + 800024e4: dc1ff0ef jal ra,800022a4 + 800024e8: 00000517 auipc a0,0x0 + 800024ec: 6c850513 addi a0,a0,1736 # 80002bb0 + 800024f0: d6dff0ef jal ra,8000225c + 800024f4: 00300513 li a0,3 + 800024f8: dadff0ef jal ra,800022a4 + 800024fc: 00000517 auipc a0,0x0 + 80002500: 6fc50513 addi a0,a0,1788 # 80002bf8 + 80002504: d59ff0ef jal ra,8000225c + 80002508: 00300513 li a0,3 + 8000250c: d99ff0ef jal ra,800022a4 + 80002510: 00000517 auipc a0,0x0 + 80002514: 70050513 addi a0,a0,1792 # 80002c10 + 80002518: d45ff0ef jal ra,8000225c + 8000251c: 00300513 li a0,3 + 80002520: d85ff0ef jal ra,800022a4 + +0000000080002524 : + 80002524: 11853583 ld a1,280(a0) + 80002528: f8010113 addi sp,sp,-128 + 8000252c: 06813823 sd s0,112(sp) + 80002530: 06113c23 sd ra,120(sp) + 80002534: 06913423 sd s1,104(sp) + 80002538: 07213023 sd s2,96(sp) + 8000253c: 05313c23 sd s3,88(sp) + 80002540: 05413823 sd s4,80(sp) + 80002544: 05513423 sd s5,72(sp) + 80002548: 05613023 sd s6,64(sp) + 8000254c: 03713c23 sd s7,56(sp) + 80002550: 03813823 sd s8,48(sp) + 80002554: 03913423 sd s9,40(sp) + 80002558: 03a13023 sd s10,32(sp) + 8000255c: 01b13c23 sd s11,24(sp) + 80002560: 00800793 li a5,8 + 80002564: 00050413 mv s0,a0 + 80002568: 0ef58a63 beq a1,a5,8000265c + 8000256c: 00200793 li a5,2 + 80002570: 06f58063 beq a1,a5,800025d0 + 80002574: ff458793 addi a5,a1,-12 + 80002578: 00100713 li a4,1 + 8000257c: 00f77663 bgeu a4,a5,80002588 + 80002580: 00f00793 li a5,15 + 80002584: 1af59263 bne a1,a5,80002728 + 80002588: 11043503 ld a0,272(s0) + 8000258c: de5ff0ef jal ra,80002370 + 80002590: 00040513 mv a0,s0 + 80002594: 07013403 ld s0,112(sp) + 80002598: 07813083 ld ra,120(sp) + 8000259c: 06813483 ld s1,104(sp) + 800025a0: 06013903 ld s2,96(sp) + 800025a4: 05813983 ld s3,88(sp) + 800025a8: 05013a03 ld s4,80(sp) + 800025ac: 04813a83 ld s5,72(sp) + 800025b0: 04013b03 ld s6,64(sp) + 800025b4: 03813b83 ld s7,56(sp) + 800025b8: 03013c03 ld s8,48(sp) + 800025bc: 02813c83 ld s9,40(sp) + 800025c0: 02013d03 ld s10,32(sp) + 800025c4: 01813d83 ld s11,24(sp) + 800025c8: 08010113 addi sp,sp,128 + 800025cc: af1fd06f j 800000bc + 800025d0: 10853703 ld a4,264(a0) + 800025d4: 00377793 andi a5,a4,3 + 800025d8: 06079863 bnez a5,80002648 + 800025dc: 008007ef jal a5,800025e4 + 800025e0: 00301073 fscsr zero + 800025e4: 00072703 lw a4,0(a4) + 800025e8: 0007a783 lw a5,0(a5) + 800025ec: 04f70a63 beq a4,a5,80002640 + 800025f0: 10100513 li a0,257 + 800025f4: 04100793 li a5,65 + 800025f8: 00000697 auipc a3,0x0 + 800025fc: 65868693 addi a3,a3,1624 # 80002c50 + 80002600: fffff717 auipc a4,0xfffff + 80002604: a0070713 addi a4,a4,-1536 # 80001000 + 80002608: 03051513 slli a0,a0,0x30 + 8000260c: 00073583 ld a1,0(a4) + 80002610: 00168693 addi a3,a3,1 + 80002614: 00a7e633 or a2,a5,a0 + 80002618: 00058a63 beqz a1,8000262c + 8000261c: fffff797 auipc a5,0xfffff + 80002620: a207b223 sd zero,-1500(a5) # 80001040 + 80002624: 00073783 ld a5,0(a4) + 80002628: fe079ae3 bnez a5,8000261c + 8000262c: 0006c783 lbu a5,0(a3) + 80002630: 00c73023 sd a2,0(a4) + 80002634: fc079ce3 bnez a5,8000260c + 80002638: 00300513 li a0,3 + 8000263c: c69ff0ef jal ra,800022a4 + 80002640: 00100513 li a0,1 + 80002644: c61ff0ef jal ra,800022a4 + 80002648: 00000517 auipc a0,0x0 + 8000264c: 6a850513 addi a0,a0,1704 # 80002cf0 + 80002650: c0dff0ef jal ra,8000225c + 80002654: 00300513 li a0,3 + 80002658: c4dff0ef jal ra,800022a4 + 8000265c: 05052903 lw s2,80(a0) + 80002660: 00001c37 lui s8,0x1 + 80002664: 00001497 auipc s1,0x1 + 80002668: 99c48493 addi s1,s1,-1636 # 80003000 + 8000266c: 00002b97 auipc s7,0x2 + 80002670: 994b8b93 addi s7,s7,-1644 # 80004000 + 80002674: 00040b37 lui s6,0x40 + 80002678: ffe00ab7 lui s5,0xffe00 + 8000267c: 00006d97 auipc s11,0x6 + 80002680: 984d8d93 addi s11,s11,-1660 # 80008000 + 80002684: 00006a17 auipc s4,0x6 + 80002688: 984a0a13 addi s4,s4,-1660 # 80008008 + 8000268c: 0003f9b7 lui s3,0x3f + 80002690: 0180006f j 800026a8 + 80002694: 00f73423 sd a5,8(a4) + 80002698: 00fdb023 sd a5,0(s11) + 8000269c: 000017b7 lui a5,0x1 + 800026a0: 00fc0c33 add s8,s8,a5 + 800026a4: 0b3c0e63 beq s8,s3,80002760 + 800026a8: 00cc5793 srli a5,s8,0xc + 800026ac: 00479413 slli s0,a5,0x4 + 800026b0: 00848733 add a4,s1,s0 + 800026b4: 00073703 ld a4,0(a4) + 800026b8: fe0702e3 beqz a4,8000269c + 800026bc: 60078793 addi a5,a5,1536 # 1600 <_start-0x7fffea00> + 800026c0: 00379793 slli a5,a5,0x3 + 800026c4: 00fb87b3 add a5,s7,a5 + 800026c8: 0007bc83 ld s9,0(a5) + 800026cc: 040cf793 andi a5,s9,64 + 800026d0: 06078e63 beqz a5,8000274c + 800026d4: 100b2d73 csrrs s10,sstatus,s6 + 800026d8: 00001637 lui a2,0x1 + 800026dc: 015c05b3 add a1,s8,s5 + 800026e0: 000c0513 mv a0,s8 + 800026e4: 00b13423 sd a1,8(sp) + 800026e8: a4dff0ef jal ra,80002134 + 800026ec: 00050e63 beqz a0,80002708 + 800026f0: 080cfc93 andi s9,s9,128 + 800026f4: 00813583 ld a1,8(sp) + 800026f8: 040c8063 beqz s9,80002738 + 800026fc: 00001637 lui a2,0x1 + 80002700: 000c0513 mv a0,s8 + 80002704: 8fdff0ef jal ra,80002000 + 80002708: 008487b3 add a5,s1,s0 + 8000270c: 100d1073 csrw sstatus,s10 + 80002710: 000db703 ld a4,0(s11) + 80002714: 0007b023 sd zero,0(a5) + 80002718: f6071ee3 bnez a4,80002694 + 8000271c: 00fdb023 sd a5,0(s11) + 80002720: 00fa3023 sd a5,0(s4) + 80002724: f79ff06f j 8000269c + 80002728: 00000517 auipc a0,0x0 + 8000272c: 5f050513 addi a0,a0,1520 # 80002d18 + 80002730: b2dff0ef jal ra,8000225c + 80002734: f05ff06f j 80002638 + 80002738: 00000517 auipc a0,0x0 + 8000273c: 58050513 addi a0,a0,1408 # 80002cb8 + 80002740: b1dff0ef jal ra,8000225c + 80002744: 00300513 li a0,3 + 80002748: b5dff0ef jal ra,800022a4 + 8000274c: 00000517 auipc a0,0x0 + 80002750: 53450513 addi a0,a0,1332 # 80002c80 + 80002754: b09ff0ef jal ra,8000225c + 80002758: 00300513 li a0,3 + 8000275c: b49ff0ef jal ra,800022a4 + 80002760: 00090513 mv a0,s2 + 80002764: b41ff0ef jal ra,800022a4 + +0000000080002768 : + 80002768: f14027f3 csrr a5,mhartid + 8000276c: 18079a63 bnez a5,80002900 + 80002770: 00004797 auipc a5,0x4 + 80002774: 89078793 addi a5,a5,-1904 # 80006000 + 80002778: ed010113 addi sp,sp,-304 + 8000277c: 00c7d793 srli a5,a5,0xc + 80002780: 12813023 sd s0,288(sp) + 80002784: 00005817 auipc a6,0x5 + 80002788: 87c80813 addi a6,a6,-1924 # 80007000 + 8000278c: 00050413 mv s0,a0 + 80002790: 00a79793 slli a5,a5,0xa + 80002794: 00003517 auipc a0,0x3 + 80002798: 86c50513 addi a0,a0,-1940 # 80005000 + 8000279c: 12113423 sd ra,296(sp) + 800027a0: 00c55693 srli a3,a0,0xc + 800027a4: 00c85713 srli a4,a6,0xc + 800027a8: 0017e793 ori a5,a5,1 + 800027ac: 00002897 auipc a7,0x2 + 800027b0: 85488893 addi a7,a7,-1964 # 80004000 + 800027b4: fff00613 li a2,-1 + 800027b8: fef53c23 sd a5,-8(a0) + 800027bc: 00a69693 slli a3,a3,0xa + 800027c0: 00a71713 slli a4,a4,0xa + 800027c4: 200007b7 lui a5,0x20000 + 800027c8: 0016e693 ori a3,a3,1 + 800027cc: 00176713 ori a4,a4,1 + 800027d0: 00c8d593 srli a1,a7,0xc + 800027d4: 03f61313 slli t1,a2,0x3f + 800027d8: 0cf78793 addi a5,a5,207 # 200000cf <_start-0x5fffff31> + 800027dc: fef83c23 sd a5,-8(a6) + 800027e0: 00d8b023 sd a3,0(a7) + 800027e4: 00e53023 sd a4,0(a0) + 800027e8: 0065e7b3 or a5,a1,t1 + 800027ec: 18079073 csrw satp,a5 + 800027f0: 18002773 csrr a4,satp + 800027f4: 14e79e63 bne a5,a4,80002950 + 800027f8: 00b65613 srli a2,a2,0xb + 800027fc: 01f00793 li a5,31 + 80002800: 00000297 auipc t0,0x0 + 80002804: 01428293 addi t0,t0,20 # 80002814 + 80002808: 305292f3 csrrw t0,mtvec,t0 + 8000280c: 3b061073 csrw pmpaddr0,a2 + 80002810: 3a079073 csrw pmpcfg0,a5 + 80002814: 30529073 csrw mtvec,t0 + 80002818: bff00813 li a6,-1025 + 8000281c: 01581813 slli a6,a6,0x15 + 80002820: ffffe797 auipc a5,0xffffe + 80002824: 92478793 addi a5,a5,-1756 # 80000144 + 80002828: 010787b3 add a5,a5,a6 + 8000282c: 10579073 csrw stvec,a5 + 80002830: 340027f3 csrr a5,mscratch + 80002834: 010787b3 add a5,a5,a6 + 80002838: 14079073 csrw sscratch,a5 + 8000283c: 0000b7b7 lui a5,0xb + 80002840: 1007879b addiw a5,a5,256 # b100 <_start-0x7fff4f00> + 80002844: 30279073 csrw medeleg,a5 + 80002848: 0001e7b7 lui a5,0x1e + 8000284c: 6007879b addiw a5,a5,1536 # 1e600 <_start-0x7ffe1a00> + 80002850: 30079073 csrw mstatus,a5 + 80002854: 30405073 csrwi mie,0 + 80002858: 00001717 auipc a4,0x1 + 8000285c: b9870713 addi a4,a4,-1128 # 800033f0 + 80002860: 3e080793 addi a5,a6,992 + 80002864: 010706b3 add a3,a4,a6 + 80002868: 00f707b3 add a5,a4,a5 + 8000286c: 000808b7 lui a7,0x80 + 80002870: 00005617 auipc a2,0x5 + 80002874: 78d63c23 sd a3,1944(a2) # 80008008 + 80002878: 00001317 auipc t1,0x1 + 8000287c: f6830313 addi t1,t1,-152 # 800037e0 + 80002880: 00005697 auipc a3,0x5 + 80002884: 78f6b023 sd a5,1920(a3) # 80008000 + 80002888: 03f88893 addi a7,a7,63 # 8003f <_start-0x7ff7ffc1> + 8000288c: 02400793 li a5,36 + 80002890: 01080813 addi a6,a6,16 + 80002894: 0017d613 srli a2,a5,0x1 + 80002898: 011786b3 add a3,a5,a7 + 8000289c: 00f647b3 xor a5,a2,a5 + 800028a0: 010705b3 add a1,a4,a6 + 800028a4: 00c69693 slli a3,a3,0xc + 800028a8: 00579793 slli a5,a5,0x5 + 800028ac: 00d73023 sd a3,0(a4) + 800028b0: 00b73423 sd a1,8(a4) + 800028b4: 0207f793 andi a5,a5,32 + 800028b8: 01070713 addi a4,a4,16 + 800028bc: 00f667b3 or a5,a2,a5 + 800028c0: fce31ae3 bne t1,a4,80002894 + 800028c4: 12000613 li a2,288 + 800028c8: 00000593 li a1,0 + 800028cc: 00010513 mv a0,sp + 800028d0: 00001797 auipc a5,0x1 + 800028d4: f007b423 sd zero,-248(a5) # 800037d8 + 800028d8: f84ff0ef jal ra,8000205c + 800028dc: 800007b7 lui a5,0x80000 + 800028e0: 00f40433 add s0,s0,a5 + 800028e4: 00010513 mv a0,sp + 800028e8: 10813423 sd s0,264(sp) + 800028ec: fd0fd0ef jal ra,800000bc + 800028f0: 12813083 ld ra,296(sp) + 800028f4: 12013403 ld s0,288(sp) + 800028f8: 13010113 addi sp,sp,304 + 800028fc: 00008067 ret + 80002900: 00100713 li a4,1 + 80002904: 08da87b7 lui a5,0x8da8 + 80002908: 00080637 lui a2,0x80 + 8000290c: ffc78793 addi a5,a5,-4 # 8da7ffc <_start-0x77258004> + 80002910: ffc60613 addi a2,a2,-4 # 7fffc <_start-0x7ff80004> + 80002914: 01f71513 slli a0,a4,0x1f + 80002918: 03e71693 slli a3,a4,0x3e + 8000291c: 01c0006f j 80002938 + 80002920: 0007202f amoadd.w zero,zero,(a4) + 80002924: 0017d713 srli a4,a5,0x1 + 80002928: 00e7c7b3 xor a5,a5,a4 + 8000292c: 03e79793 slli a5,a5,0x3e + 80002930: 00d7f7b3 and a5,a5,a3 + 80002934: 00e7e7b3 or a5,a5,a4 + 80002938: 00c7f733 and a4,a5,a2 + 8000293c: 0017f593 andi a1,a5,1 + 80002940: 00a70733 add a4,a4,a0 + 80002944: fc059ee3 bnez a1,80002920 + 80002948: 00072003 lw zero,0(a4) + 8000294c: fd9ff06f j 80002924 + 80002950: 00000517 auipc a0,0x0 + 80002954: 3f850513 addi a0,a0,1016 # 80002d48 + 80002958: 905ff0ef jal ra,8000225c + 8000295c: 00300513 li a0,3 + 80002960: 945ff0ef jal ra,800022a4 + +0000000080002964 : + 80002964: 00008067 ret + +0000000080002968 : + 80002968: 00ff10b7 lui ra,0xff1 + 8000296c: f000809b addiw ra,ra,-256 # ff0f00 <_start-0x7f00f100> + 80002970: f0f0c713 xori a4,ra,-241 + 80002974: ff00f3b7 lui t2,0xff00f + 80002978: 00f3839b addiw t2,t2,15 # ffffffffff00f00f + 8000297c: 00200193 li gp,2 + 80002980: 1c771663 bne a4,t2,80002b4c + +0000000080002984 : + 80002984: 0ff010b7 lui ra,0xff01 + 80002988: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 8000298c: 0f00c713 xori a4,ra,240 + 80002990: 0ff013b7 lui t2,0xff01 + 80002994: f003839b addiw t2,t2,-256 # ff00f00 <_start-0x700ff100> + 80002998: 00300193 li gp,3 + 8000299c: 1a771863 bne a4,t2,80002b4c + +00000000800029a0 : + 800029a0: 00ff10b7 lui ra,0xff1 + 800029a4: 8ff0809b addiw ra,ra,-1793 # ff08ff <_start-0x7f00f701> + 800029a8: 70f0c713 xori a4,ra,1807 + 800029ac: 00ff13b7 lui t2,0xff1 + 800029b0: ff03839b addiw t2,t2,-16 # ff0ff0 <_start-0x7f00f010> + 800029b4: 00400193 li gp,4 + 800029b8: 18771a63 bne a4,t2,80002b4c + +00000000800029bc : + 800029bc: f00ff0b7 lui ra,0xf00ff + 800029c0: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 800029c4: 0f00c713 xori a4,ra,240 + 800029c8: f00ff3b7 lui t2,0xf00ff + 800029cc: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 800029d0: 00500193 li gp,5 + 800029d4: 16771c63 bne a4,t2,80002b4c + +00000000800029d8 : + 800029d8: ff00f0b7 lui ra,0xff00f + 800029dc: 7000809b addiw ra,ra,1792 # ffffffffff00f700 + 800029e0: 70f0c093 xori ra,ra,1807 + 800029e4: ff00f3b7 lui t2,0xff00f + 800029e8: 00f3839b addiw t2,t2,15 # ffffffffff00f00f + 800029ec: 00600193 li gp,6 + 800029f0: 14709e63 bne ra,t2,80002b4c + +00000000800029f4 : + 800029f4: 00000213 li tp,0 + 800029f8: 0ff010b7 lui ra,0xff01 + 800029fc: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002a00: 0f00c713 xori a4,ra,240 + 80002a04: 00070313 mv t1,a4 + 80002a08: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a0c: 00200293 li t0,2 + 80002a10: fe5214e3 bne tp,t0,800029f8 + 80002a14: 0ff013b7 lui t2,0xff01 + 80002a18: f003839b addiw t2,t2,-256 # ff00f00 <_start-0x700ff100> + 80002a1c: 00700193 li gp,7 + 80002a20: 12731663 bne t1,t2,80002b4c + +0000000080002a24 : + 80002a24: 00000213 li tp,0 + 80002a28: 00ff10b7 lui ra,0xff1 + 80002a2c: 8ff0809b addiw ra,ra,-1793 # ff08ff <_start-0x7f00f701> + 80002a30: 70f0c713 xori a4,ra,1807 + 80002a34: 00000013 nop + 80002a38: 00070313 mv t1,a4 + 80002a3c: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a40: 00200293 li t0,2 + 80002a44: fe5212e3 bne tp,t0,80002a28 + 80002a48: 00ff13b7 lui t2,0xff1 + 80002a4c: ff03839b addiw t2,t2,-16 # ff0ff0 <_start-0x7f00f010> + 80002a50: 00800193 li gp,8 + 80002a54: 0e731c63 bne t1,t2,80002b4c + +0000000080002a58 : + 80002a58: 00000213 li tp,0 + 80002a5c: f00ff0b7 lui ra,0xf00ff + 80002a60: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 80002a64: 0f00c713 xori a4,ra,240 + 80002a68: 00000013 nop + 80002a6c: 00000013 nop + 80002a70: 00070313 mv t1,a4 + 80002a74: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002a78: 00200293 li t0,2 + 80002a7c: fe5210e3 bne tp,t0,80002a5c + 80002a80: f00ff3b7 lui t2,0xf00ff + 80002a84: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 80002a88: 00900193 li gp,9 + 80002a8c: 0c731063 bne t1,t2,80002b4c + +0000000080002a90 : + 80002a90: 00000213 li tp,0 + 80002a94: 0ff010b7 lui ra,0xff01 + 80002a98: ff00809b addiw ra,ra,-16 # ff00ff0 <_start-0x700ff010> + 80002a9c: 0f00c713 xori a4,ra,240 + 80002aa0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002aa4: 00200293 li t0,2 + 80002aa8: fe5216e3 bne tp,t0,80002a94 + 80002aac: 0ff013b7 lui t2,0xff01 + 80002ab0: f003839b addiw t2,t2,-256 # ff00f00 <_start-0x700ff100> + 80002ab4: 00a00193 li gp,10 + 80002ab8: 08771a63 bne a4,t2,80002b4c + +0000000080002abc : + 80002abc: 00000213 li tp,0 + 80002ac0: 00ff10b7 lui ra,0xff1 + 80002ac4: fff0809b addiw ra,ra,-1 # ff0fff <_start-0x7f00f001> + 80002ac8: 00000013 nop + 80002acc: 00f0c713 xori a4,ra,15 + 80002ad0: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002ad4: 00200293 li t0,2 + 80002ad8: fe5214e3 bne tp,t0,80002ac0 + 80002adc: 00ff13b7 lui t2,0xff1 + 80002ae0: ff03839b addiw t2,t2,-16 # ff0ff0 <_start-0x7f00f010> + 80002ae4: 00b00193 li gp,11 + 80002ae8: 06771263 bne a4,t2,80002b4c + +0000000080002aec : + 80002aec: 00000213 li tp,0 + 80002af0: f00ff0b7 lui ra,0xf00ff + 80002af4: 00f0809b addiw ra,ra,15 # fffffffff00ff00f + 80002af8: 00000013 nop + 80002afc: 00000013 nop + 80002b00: 0f00c713 xori a4,ra,240 + 80002b04: 00120213 addi tp,tp,1 # 1 <_start-0x7fffffff> + 80002b08: 00200293 li t0,2 + 80002b0c: fe5212e3 bne tp,t0,80002af0 + 80002b10: f00ff3b7 lui t2,0xf00ff + 80002b14: 0ff3839b addiw t2,t2,255 # fffffffff00ff0ff + 80002b18: 00c00193 li gp,12 + 80002b1c: 02771863 bne a4,t2,80002b4c + +0000000080002b20 : + 80002b20: 0f004093 xori ra,zero,240 + 80002b24: 0f000393 li t2,240 + 80002b28: 00d00193 li gp,13 + 80002b2c: 02709063 bne ra,t2,80002b4c + +0000000080002b30 : + 80002b30: 00ff00b7 lui ra,0xff0 + 80002b34: 0ff0809b addiw ra,ra,255 # ff00ff <_start-0x7f00ff01> + 80002b38: 70f0c013 xori zero,ra,1807 + 80002b3c: 00000393 li t2,0 + 80002b40: 00e00193 li gp,14 + 80002b44: 00701463 bne zero,t2,80002b4c + 80002b48: 00301a63 bne zero,gp,80002b5c + +0000000080002b4c : + 80002b4c: 00119513 slli a0,gp,0x1 + 80002b50: 00050063 beqz a0,80002b50 + 80002b54: 00156513 ori a0,a0,1 + 80002b58: 00000073 ecall + +0000000080002b5c : + 80002b5c: 00100513 li a0,1 + 80002b60: 00000073 ecall + 80002b64: c0001073 unimp