arm: Support pac_key_* register operand for MRS/MSR in Armv8.1-M Mainline
[binutils-gdb.git] / sim / testsuite / m32c / testutils.inc
blobfa6f5a9d0c748d1628de57cc5f00a954b828ed86
1 # MACRO: exit
2         .macro exit nr
3         mov.w \nr, r1;
4         # Trap function 1: exit().
5         mov.b #1, r0l;
6         ste.b r0l, 0x400;
7         .endm
9 # MACRO: pass
10 # Write 'pass' to stdout and quit
11         .macro pass
12         # Use stdout.
13         mov.w #1, r1;
14         # Point to the string.
15         mov.w #1f, r2;
16         # Number of bytes to write; push onto stack.
17         push.w #5;
18         # Adjust as the sim expects 3 byte offset. (!?)
19         add.w #-3, sp;
20         # Trap function 5: write().
21         mov.b #5, r0l;
22         ste.b r0l, 0x400;
23         exit #0
24         .data
25         1: .asciz "pass\n"
26         .endm
28 # MACRO: fail
29 # Write 'fail' to stdout and quit
30         .macro fail
31         # Use stdout.
32         mov.w #1, r1;
33         # Point to the string.
34         mov.w #1f, r2;
35         # Number of bytes to write; push onto stack.
36         push.w #5;
37         # Adjust as the sim expects 3 byte offset. (!?)
38         add.w #-3, sp;
39         # Trap function 5: write().
40         mov.b #5, r0l;
41         ste.b r0l, 0x400;
42         exit #1
43         .data
44         1: .asciz "fail\n"
45         .endm
47 # MACRO: start
48 # All assembler tests should start with a call to "start"
49         .macro start
50         .text
51 .global _start
52 _start:
53         .endm