global const int x = 1 global const int y = 1 function main () int a is $0 int b is $1 int ans is $2 str ans_string is $3 load_absolute_32 &x -> a load_absolute_32 &y -> b call add a b -> ans int_to_string ans -> ans_string call pln ans_string exit 0 function add (int a is $0, int b is $1) int result is $2 add_int a b -> result return result function pln (str message is $0) str ts is $1 int mode is $5 int msg_length is $2 str nl is $3 int nl_length is $4 malloc_immediate "/dev/term/0" -> ts load_immediate 0 -> mode syscall OPEN ts mode -> ts strlen message -> msg_length syscall WRITE ts message msg_length malloc_immediate "\n" -> nl strlen nl -> nl_length syscall WRITE ts nl nl_length return