From c9ff4f0a2a2cfa31964a307c08f9baa349565bbd Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Sun, 15 Sep 2024 23:03:25 +0200 Subject: Add call pseudo instruction --- tools/builtin.s | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tools/builtin.s (limited to 'tools/builtin.s') diff --git a/tools/builtin.s b/tools/builtin.s new file mode 100644 index 0000000..6fc43f6 --- /dev/null +++ b/tools/builtin.s @@ -0,0 +1,29 @@ +.global printi +.type printi, @function + +.text +printi: + addi sp, sp, -8 + sw s0, 0(sp) + sw ra, 4(sp) + addi s0, sp, 8 + + addi t0, a0, 0 + addi a0, a0, '0' + sw a0, 0(s0) + addi a0, x0, 1 + addi a1, s0, 0 + addi a2, x0, 1 + addi a7, x0, 64 + ecall + + addi t1, x0, '\n' + sw t1, 0(s0) + ecall + + addi a0, t0, 0 + + lw s0, 0(sp) + lw ra, 4(sp) + addi sp, sp, 8 + ret -- cgit v1.2.3