abs:
PUSH %14
MOV %15,%14
SUBS %15,$4,%15
@abs_body:
@if0:
CMPS 8(%14),$0
JGES @false0
@true0:
SUBS $0,8(%14),%0
MOV %0,-4(%14)
JMP @exit0
@false0:
MOV 8(%14),-4(%14)
@exit0:
MOV -4(%14),%13
JMP @abs_exit
@abs_exit:
MOV %14,%15
POP %14
RET
main:
PUSH %14
MOV %15,%14
@main_body:
PUSH $-5
CALL abs
ADDS %15,$4,%15
MOV %13,%0
MOV %0,%13
JMP @main_exit
@main_exit:
MOV %14,%15
POP %14
RET