From efb0a239c4aaee370d97caf216859a724d7f72bd Mon Sep 17 00:00:00 2001 From: Jacob McDonnell Date: Sun, 15 Mar 2026 20:03:26 -0400 Subject: feat: Parsing modifiers and directives Support added for parsing a limited set of directives and for all access modifiers. --- examples/labels.s | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 examples/labels.s (limited to 'examples/labels.s') diff --git a/examples/labels.s b/examples/labels.s new file mode 100644 index 0000000..363b9e5 --- /dev/null +++ b/examples/labels.s @@ -0,0 +1,37 @@ +# int square(int num) { +# return num * num; +# } +# +# +# int main(void) { +# return square(2); +# } + +square: + addi sp,sp,-32 + sd ra,24(sp) + sd s0,16(sp) + addi s0,sp,32 + mv a5,a0 + sw a5,-20(s0) + lw a5,-20(s0) + mulw a5,a5,a5 + sext.w a5,a5 + mv a0,a5 + ld ra,24(sp) + ld s0,16(sp) + addi sp,sp,32 + jr ra +main: + addi sp,sp,-16 + sd ra,8(sp) + sd s0,0(sp) + addi s0,sp,16 + li a0,2 + call square + mv a5,a0 + mv a0,a5 + ld ra,8(sp) + ld s0,0(sp) + addi sp,sp,16 + jr ra -- cgit v1.2.3