aboutsummaryrefslogtreecommitdiff
path: root/VexRiscv/src/test/resources/asm/machineCsrCompressed.asm
diff options
context:
space:
mode:
Diffstat (limited to 'VexRiscv/src/test/resources/asm/machineCsrCompressed.asm')
-rw-r--r--VexRiscv/src/test/resources/asm/machineCsrCompressed.asm323
1 files changed, 323 insertions, 0 deletions
diff --git a/VexRiscv/src/test/resources/asm/machineCsrCompressed.asm b/VexRiscv/src/test/resources/asm/machineCsrCompressed.asm
new file mode 100644
index 0000000..1cf1d28
--- /dev/null
+++ b/VexRiscv/src/test/resources/asm/machineCsrCompressed.asm
@@ -0,0 +1,323 @@
+
+build/machineCsr.elf: file format elf32-littleriscv
+
+
+Disassembly of section .yolo:
+
+80000000 <trap_entry-0x20>:
+ j _start
+80000000: 0900006f j 80000090 <_start>
+ nop
+80000004: 00000013 nop
+ nop
+80000008: 00000013 nop
+ nop
+8000000c: 00000013 nop
+ nop
+80000010: 00000013 nop
+ nop
+80000014: 00000013 nop
+ nop
+80000018: 00000013 nop
+ nop
+8000001c: 00000013 nop
+
+80000020 <trap_entry>:
+
+.global trap_entry
+trap_entry:
+ csrr x28, mcause
+80000020: 34202e73 csrr t3,mcause
+
+ bnez x28, notICmdAlignementException
+80000024: 000e1e63 bnez t3,80000040 <notICmdAlignementException>
+ li x30, 0xFFFFFFFC
+80000028: ffc00f13 li t5,-4
+ csrr x29, mepc
+8000002c: 34102ef3 csrr t4,mepc
+ and x29,x29,x30
+80000030: 01eefeb3 and t4,t4,t5
+ addi x29, x29, 4
+80000034: 004e8e93 addi t4,t4,4
+ csrw mepc, x29
+80000038: 341e9073 csrw mepc,t4
+ j mepcFixed
+8000003c: 01c0006f j 80000058 <mepcFixed>
+
+80000040 <notICmdAlignementException>:
+
+notICmdAlignementException:
+ li x29, 0x80000000
+80000040: 80000eb7 lui t4,0x80000
+ and x30, x28, x29
+80000044: 01de7f33 and t5,t3,t4
+ bnez x30, mepcFixed
+80000048: 000f1863 bnez t5,80000058 <mepcFixed>
+ csrr x29, mepc
+8000004c: 34102ef3 csrr t4,mepc
+ addi x29, x29, 4
+80000050: 004e8e93 addi t4,t4,4 # 80000004 <_etext+0xfffffdf8>
+ csrw mepc, x29
+80000054: 341e9073 csrw mepc,t4
+
+80000058 <mepcFixed>:
+mepcFixed:
+
+
+ li x29, 0x80000003u
+80000058: 80000eb7 lui t4,0x80000
+8000005c: 003e8e93 addi t4,t4,3 # 80000003 <_etext+0xfffffdf7>
+ bne x29, x28, noSoftwareInterrupt
+80000060: 01ce9663 bne t4,t3,8000006c <noSoftwareInterrupt>
+ li x29, 0x008
+80000064: 00800e93 li t4,8
+ csrc mip, x29
+80000068: 344eb073 csrc mip,t4
+
+8000006c <noSoftwareInterrupt>:
+
+noSoftwareInterrupt:
+
+ li x29, 0x80000007u
+8000006c: 80000eb7 lui t4,0x80000
+80000070: 007e8e93 addi t4,t4,7 # 80000007 <_etext+0xfffffdfb>
+ bne x29, x28, noTimerInterrupt
+80000074: 01ce9463 bne t4,t3,8000007c <noTimerInterrupt>
+ csrw mie, 0
+80000078: 30405073 csrwi mie,0
+
+8000007c <noTimerInterrupt>:
+noTimerInterrupt:
+
+ li x29, 0x8000000bu
+8000007c: 80000eb7 lui t4,0x80000
+80000080: 00be8e93 addi t4,t4,11 # 8000000b <_etext+0xfffffdff>
+ bne x29, x28, noExernalInterrupt
+80000084: 01ce9463 bne t4,t3,8000008c <noExernalInterrupt>
+ csrw mie, 0
+80000088: 30405073 csrwi mie,0
+
+8000008c <noExernalInterrupt>:
+noExernalInterrupt:
+
+ mret
+8000008c: 30200073 mret
+
+80000090 <_start>:
+
+
+ .text
+ .globl _start
+_start:
+ li x28, 1
+80000090: 00100e13 li t3,1
+ scall
+80000094: 00000073 ecall
+
+ li x28, 2
+80000098: 00200e13 li t3,2
+ li t0, 0x008
+8000009c: 00800293 li t0,8
+ csrs mstatus,t0
+800000a0: 3002a073 csrs mstatus,t0
+ li t0, 0x008
+800000a4: 00800293 li t0,8
+ csrw mie,t0
+800000a8: 30429073 csrw mie,t0
+ li t0, 0x008
+800000ac: 00800293 li t0,8
+ csrs mip,t0
+800000b0: 3442a073 csrs mip,t0
+ nop
+800000b4: 00000013 nop
+ nop
+800000b8: 00000013 nop
+ nop
+800000bc: 00000013 nop
+ nop
+800000c0: 00000013 nop
+ nop
+800000c4: 00000013 nop
+ nop
+800000c8: 00000013 nop
+ nop
+800000cc: 00000013 nop
+ nop
+800000d0: 00000013 nop
+ nop
+800000d4: 00000013 nop
+ nop
+800000d8: 00000013 nop
+ nop
+800000dc: 00000013 nop
+ nop
+800000e0: 00000013 nop
+
+
+ li x28, 3
+800000e4: 00300e13 li t3,3
+ li t0, 0x080
+800000e8: 08000293 li t0,128
+ csrw mie,t0
+800000ec: 30429073 csrw mie,t0
+ nop
+800000f0: 00000013 nop
+ nop
+800000f4: 00000013 nop
+ nop
+800000f8: 00000013 nop
+ nop
+800000fc: 00000013 nop
+ nop
+80000100: 00000013 nop
+ nop
+80000104: 00000013 nop
+ nop
+80000108: 00000013 nop
+
+ li x28, 4
+8000010c: 00400e13 li t3,4
+ li t0, 0x800
+80000110: 000012b7 lui t0,0x1
+80000114: 80028293 addi t0,t0,-2048 # 800 <_stack_size>
+ csrw mie,t0
+80000118: 30429073 csrw mie,t0
+ nop
+8000011c: 00000013 nop
+ nop
+80000120: 00000013 nop
+ nop
+80000124: 00000013 nop
+ nop
+80000128: 00000013 nop
+ nop
+8000012c: 00000013 nop
+ nop
+80000130: 00000013 nop
+ nop
+80000134: 00000013 nop
+
+ li x28, 5
+80000138: 00500e13 li t3,5
+ li x3, 0xF00FFF40
+8000013c: f01001b7 lui gp,0xf0100
+80000140: f4018193 addi gp,gp,-192 # f00fff40 <_etext+0x700ffd34>
+ lw x4, 0(x3)
+80000144: 0001a203 lw tp,0(gp)
+ lw x5, 4(x3)
+80000148: 0041a283 lw t0,4(gp)
+ addi x4, x4, 1023
+8000014c: 3ff20213 addi tp,tp,1023 # 3ff <_stack_size-0x401>
+ sw x4, 8(x3)
+80000150: 0041a423 sw tp,8(gp)
+ sw x5, 12(x3)
+80000154: 0051a623 sw t0,12(gp)
+ li x28, 6
+80000158: 00600e13 li t3,6
+ li x4, 0x080
+8000015c: 08000213 li tp,128
+ csrw mie,x4
+80000160: 30421073 csrw mie,tp
+ li x28, 7
+80000164: 00700e13 li t3,7
+ wfi
+80000168: 10500073 wfi
+
+
+ li x28, 8
+8000016c: 00800e13 li t3,8
+ li x3, 1
+80000170: 00100193 li gp,1
+ sw x4,0(x3)
+80000174: 0041a023 sw tp,0(gp)
+ li x28, 9
+80000178: 00900e13 li t3,9
+ sh x4,0(x3)
+8000017c: 00419023 sh tp,0(gp)
+ li x28, 10
+80000180: 00a00e13 li t3,10
+ lw x4,0(x3)
+80000184: 0001a203 lw tp,0(gp)
+ li x28, 11
+80000188: 00b00e13 li t3,11
+ lh x4,0(x3)
+8000018c: 00019203 lh tp,0(gp)
+ li x28, 12
+80000190: 00c00e13 li t3,12
+
+
+
+ li x28, 13
+80000194: 00d00e13 li t3,13
+ lw x1,0(x0)
+80000198: 00002083 lw ra,0(zero) # 0 <_stack_size-0x800>
+//unalignedPcA:
+ //j unalignedPcA+2
+ //lw x1,0(x0)
+
+ li x28, 14
+8000019c: 00e00e13 li t3,14
+ hret
+800001a0: 20200073 hret
+ li x28, 15
+800001a4: 00f00e13 li t3,15
+
+
+ li x1, 0xF00FFF60
+800001a8: f01000b7 lui ra,0xf0100
+800001ac: f6008093 addi ra,ra,-160 # f00fff60 <_etext+0x700ffd54>
+ lw x2, 0(x1)
+800001b0: 0000a103 lw sp,0(ra)
+ li x28, 16
+800001b4: 01000e13 li t3,16
+ sw x2, 0(x1)
+800001b8: 0020a023 sw sp,0(ra)
+ li x28, 17
+800001bc: 01100e13 li t3,17
+ jr x1
+800001c0: 00008067 ret
+
+Disassembly of section .text:
+
+800001c4 <irqCpp>:
+}
+
+
+void irqCpp(int irq){
+
+}
+800001c4: 00008067 ret
+
+800001c8 <main>:
+}
+800001c8: 00000513 li a0,0
+800001cc: 00008067 ret
+800001d0: 0010 0x10
+800001d2: 0000 unimp
+800001d4: 0000 unimp
+800001d6: 0000 unimp
+800001d8: 7a01 lui s4,0xfffe0
+800001da: 0052 c.slli zero,0x14
+800001dc: 7c01 lui s8,0xfffe0
+800001de: 0101 addi sp,sp,0
+800001e0: 00020d1b 0x20d1b
+800001e4: 0010 0x10
+800001e6: 0000 unimp
+800001e8: 0018 0x18
+800001ea: 0000 unimp
+800001ec: ffdc fsw fa5,60(a5)
+800001ee: ffff 0xffff
+800001f0: 0008 0x8
+800001f2: 0000 unimp
+800001f4: 0000 unimp
+800001f6: 0000 unimp
+800001f8: 0010 0x10
+800001fa: 0000 unimp
+800001fc: 002c addi a1,sp,8
+800001fe: 0000 unimp
+80000200: ffc4 fsw fs1,60(a5)
+80000202: ffff 0xffff
+80000204: 0004 0x4
+80000206: 0000 unimp
+80000208: 0000 unimp
+ ...