init_regs.s
1 .macro INIT_REGS_LOAD 2 # load the initial states of registers 3 # the value of a register `n` is assumed to be stored under address `0x100 + n * 4`. 4 lw x1, 0x104(x0) 5 lw x2, 0x108(x0) 6 lw x3, 0x10c(x0) 7 lw x4, 0x110(x0) 8 lw x5, 0x114(x0) 9 lw x6, 0x118(x0) 10 lw x7, 0x11c(x0) 11 lw x8, 0x120(x0) 12 lw x9, 0x124(x0) 13 lw x10,0x128(x0) 14 lw x11,0x12c(x0) 15 lw x12,0x130(x0) 16 lw x13,0x134(x0) 17 lw x14,0x138(x0) 18 lw x15,0x13c(x0) 19 lw x16,0x140(x0) 20 lw x17,0x144(x0) 21 lw x18,0x148(x0) 22 lw x19,0x14c(x0) 23 lw x20,0x150(x0) 24 lw x21,0x154(x0) 25 lw x22,0x158(x0) 26 lw x23,0x15c(x0) 27 lw x24,0x160(x0) 28 lw x25,0x164(x0) 29 lw x26,0x168(x0) 30 lw x27,0x16c(x0) 31 lw x28,0x170(x0) 32 lw x29,0x174(x0) 33 lw x30,0x178(x0) 34 lw x31,0x17c(x0) 35 .endm 36 37 .macro INIT_REGS_ALLOCATION 38 .section .init_regs, "a", @nobits 39 .skip 0x80 40 .previous 41 .endm