| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | #include "compiler.h"#include "sections.h"#include "picorv32.h"#include "ioregs.h"	// Debug functions to read and write x-registers from interrupt	// mode by register number	.pushsection ".text.hot.rdxreg","ax"	.globl	rdxreg	.balign 4rdxreg:	la a3,_xreg_smc	lw a2,8(a3)		// addqxi a0,zero,0	andi a0,a0,31	slli a0,a0,15		// rs1	or a2,a2,a0	sw a2,(a3)	jr a3	.type rdxreg, @function	.size rdxreg, . - rdxreg	.popsection	.pushsection ".text.hot.wrxreg","ax"	.globl	wrxreg	.balign 4wrxreg:	la a3,_xreg_smc	lw a2,12(a3)		// addxqi zero,a1,0	andi a0,a0,31	slli a0,a0,7		// rd	or a2,a2,a0	sw a2,(a3)	jr a3	.type wrxreg, @function	.size wrxreg, . - wrxreg	.popsection	__rwtext	.balign 4	.option norvc_xreg_smc:	nop	ret	addqxi a0,zero,0	addxqi zero,a1,0	.type _xreg_smc, @function	.size _xreg_smc, . - _xreg_smc
 |