blob: ce5c55217e739023b1f785d55d3bbdf4a25c658e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
;; Print "pass\n" and 'exit 0'
.macro pass
.data
mpass:
.string "pass\n"
.text
_pass:
lddw %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
|