blob: 3e7b42e26c5dbbb517614d5cb2232700e7d239d4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// Test stepping over a variety of instructions.
.global main
main:
la t0, trap_entry // 0, 4
csrw mtvec, t0 // 0x8
li t0, 5 // 0xc
beq zero, zero, one // 0x10
nop // 0x14
one:
beq zero, t0, one // 0x18
// Use t0 instead of ra to force a 32-bit opcode in C mode. Otherwise
// 32-bit and 64-bit binaries end up with different instructions (I
// didn't pursue this).
jal t0, two // 0x1c
three:
.word 0 // 0x20
nop // 0x24
two:
jr t0 // 0x28
.align 2
trap_entry:
j trap_entry // 0x2c
|