diff options
| author | Eugen Wissner <belka@caraus.de> | 2024-09-15 23:03:25 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2024-09-15 23:03:25 +0200 |
| commit | c9ff4f0a2a2cfa31964a307c08f9baa349565bbd (patch) | |
| tree | 780fd5b416c9c8a54b0d7933a70a2d49e4c8d549 /tools | |
| parent | d29012d30e158edc28d4467b69a95b5a3c68f04d (diff) | |
| download | elna-c9ff4f0a2a2cfa31964a307c08f9baa349565bbd.tar.gz | |
Add call pseudo instruction
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/builtin.s | 29 | ||||
| -rw-r--r-- | tools/init.c | 1 |
2 files changed, 29 insertions, 1 deletions
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 diff --git a/tools/init.c b/tools/init.c index cb646bd..f463bcd 100644 --- a/tools/init.c +++ b/tools/init.c @@ -118,7 +118,6 @@ enum status run_test(const char *file_entry_name) close(pipe_ends[0]); int wait_status = 0; - wait(&wait_status); make_path(filename, "./expectations/", file_entry_name, ".txt"); |
