Commit | Line | Data |
---|---|---|
193614f2 SD |
1 | func: |
2 | # OP x[0,30], x[0,30], x[0,30] | |
3 | .macro expand_3_reg op | |
4 | \op x0, x0, x0 | |
5 | \op x27, x0, x0 | |
6 | \op x0, x27, x0 | |
7 | \op x0, x0, x27 | |
8 | \op x27, x27, x27 | |
9 | .endm | |
10 | ||
11 | # OP x[0,30], x[0,30], #[0,30], #[0,14] | |
12 | .macro expand_2_reg op | |
13 | \op x0, x0, #0, #0 | |
14 | \op x27, x0, #0, #0 | |
15 | \op x0, x27, #0, #0 | |
16 | \op x27, x27, #0, #0 | |
17 | .endm | |
18 | ||
fb3265b3 SD |
19 | .macro expand_stg op |
20 | \op [x0, #0] | |
21 | \op [x27, #0] | |
22 | \op [x0, #-80] | |
23 | \op [x0, #0]! | |
24 | \op [x0, #160]! | |
25 | \op [x0], #0 | |
26 | \op [x0], #-1440 | |
27 | \op [sp, #4080] | |
28 | \op [sp, #-4096] | |
29 | \op [sp, #4080]! | |
30 | \op [sp], #-4096 | |
31 | .endm | |
32 | ||
193614f2 SD |
33 | # IRG |
34 | expand_3_reg irg | |
35 | irg sp, x0 | |
36 | irg x0, sp | |
37 | ||
38 | # GMI | |
39 | expand_3_reg gmi | |
40 | gmi x0, sp, x0 | |
41 | gmi xzr, x0, x0 | |
42 | ||
43 | # ADDG | |
44 | expand_2_reg addg | |
45 | addg x0, sp, #0x3f0, #0xf | |
46 | addg sp, x0, #0x2a0, #0xf | |
47 | ||
48 | # SUBG | |
49 | expand_2_reg subg | |
50 | subg x0, sp, #0x3f0, #0xf | |
51 | subg sp, x0, #0x3f0, #0x5 | |
b731bc3b SD |
52 | |
53 | # SUBP | |
54 | expand_3_reg subp | |
55 | subp x0, sp, x0 | |
56 | subp x0, x0, sp | |
57 | subp xzr, x0, x0 | |
58 | ||
59 | # SUBPS | |
60 | expand_3_reg subps | |
61 | subps x0, sp, x0 | |
62 | subps x0, x0, sp | |
63 | subps xzr, x0, x0 | |
64 | ||
65 | # CMPP | |
66 | cmpp x0, x0 | |
67 | cmpp x27, x0 | |
68 | cmpp x0, x27 | |
69 | cmpp x27, x27 | |
70 | cmpp sp, x0 | |
71 | cmpp x0, sp | |
fb3265b3 SD |
72 | |
73 | expand_stg stg | |
74 | expand_stg stzg | |
75 | expand_stg st2g | |
76 | expand_stg stz2g | |
77 | ||
78 | stgp x0, x0, [x0, #0] | |
79 | stgp x0, x27, [x0, #0] | |
80 | stgp x27, x0, [x0, #0] | |
81 | stgp x27, x27, [x0, #0] | |
82 | stgp x0, x0, [x27, #0] | |
83 | stgp x0, x0, [x0, #-80] | |
84 | stgp x0, x0, [x0, #0]! | |
85 | stgp x0, x0, [x0, #160]! | |
86 | stgp x0, x0, [x0], #0 | |
87 | stgp x0, x0, [x0], #-144 | |
88 | stgp xzr, x0, [x0, #1008] | |
89 | stgp x0, xzr, [x0, #-1024] | |
90 | stgp x0, x0, [sp, #1008]! | |
91 | stgp x0, x0, [sp], #-1024 |