;; Print "pass\n" and 'exit 0' .macro pass .data mpass: .string "pass\n" .text _pass: mov %r1, mpass ; point to "pass\n" string mov %r2, 5 ; strlen mpass call 7 ; printk mov %r0, 0 ; exit ; exit 0 .endm ;;; MACRO fail ;;; Exit with status 1 .macro fail mov %r0, 1 exit .endm ;;; MACRO fail_ne32 ;;; Exit with status 1 if \reg32 != \val .macro fail_ne32 reg val jeq32 \reg, \val, 2 mov %r0, 1 exit .endm ;;; MACRO fail_ne ;;; Exit with status1 if \reg ne \val .macro fail_ne reg val lddw %r0, \val jeq \reg, %r0, 2 mov %r0, 1 exit .endm