Rizin
unix-like reverse engineering framework and cli tools
darwin-arm64.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2015 pancake <pancake@nopcode.org>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #if 0
5  __ut64 __x[29]; /* General purpose registers x0-x28 */
6  __ut64 __fp; /* Frame pointer x29 */
7  __ut64 __lr; /* Link register x30 */
8  __ut64 __sp; /* Stack pointer x31 */
9  __ut64 __pc; /* Program counter */
10  __uint32_t __cpsr; /* Current program status register */
11 #endif
12 return strdup(
13  "=PC pc\n"
14  "=SP sp\n" // XXX
15  "=BP x30\n" // XXX
16  "=A0 x0\n"
17  "=A1 x1\n"
18  "=A2 x2\n"
19  "=A3 x3\n"
20  "=ZF zf\n"
21  "=SF nf\n"
22  "=OF vf\n"
23  "=CF cf\n"
24  "gpr x0 .64 0 0\n" // r14
25  "gpr x1 .64 8 0\n" // r14
26  "gpr x2 .64 16 0\n" // r14
27  "gpr x3 .64 24 0\n" // r14
28  "gpr x4 .64 32 0\n" // r14
29  "gpr x5 .64 40 0\n" // r14
30  "gpr x6 .64 48 0\n" // r14
31  "gpr x7 .64 56 0\n" // r14
32  "gpr x8 .64 64 0\n" // r14
33  "gpr x9 .64 72 0\n" // r14
34  "gpr x10 .64 80 0\n" // r14
35  "gpr x11 .64 88 0\n" // r14
36  "gpr x12 .64 96 0\n" // r14
37  "gpr x13 .64 104 0\n" // r14
38  "gpr x14 .64 112 0\n" // r14
39  "gpr x15 .64 120 0\n" // r14
40  "gpr x16 .64 128 0\n" // r14
41  "gpr x17 .64 136 0\n" // r14
42  "gpr x18 .64 144 0\n" // r14
43  "gpr x19 .64 152 0\n" // r14
44  "gpr x20 .64 160 0\n" // r14
45  "gpr x21 .64 168 0\n" // r14
46  "gpr x22 .64 176 0\n" // r14
47  "gpr x23 .64 184 0\n" // r14
48  "gpr x24 .64 192 0\n" // r14
49  "gpr x25 .64 200 0\n" // r14
50  "gpr x26 .64 208 0\n" // r14
51  "gpr x27 .64 216 0\n" // r14
52  "gpr x28 .64 224 0\n" // r14
53  "gpr x29 .64 232 0\n" // r14
54  // words (32bit lower part of x
55  "gpr w0 .32 0 0\n" // w0
56  "gpr w1 .32 8 0\n" // w0
57  "gpr w2 .32 16 0\n" // w0
58  "gpr w3 .32 24 0\n" // w0
59  "gpr w4 .32 32 0\n" // w0
60  "gpr w5 .32 40 0\n" // w0
61  "gpr w6 .32 48 0\n" // w0
62  "gpr w7 .32 56 0\n" // w0
63  "gpr w8 .32 64 0\n" // w0
64  "gpr w9 .32 72 0\n" // w0
65  "gpr w10 .32 80 0\n" // w0
66  "gpr w11 .32 88 0\n" // w0
67  "gpr w12 .32 96 0\n" // w0
68  "gpr w13 .32 104 0\n" // w0
69  "gpr w14 .32 112 0\n" // w0
70  "gpr w15 .32 120 0\n" // w0
71  "gpr w16 .32 128 0\n" // w0
72  "gpr w17 .32 136 0\n" // w0
73  "gpr w18 .32 144 0\n" // w0
74  "gpr w19 .32 152 0\n" // w0
75  "gpr w20 .32 160 0\n" // w0
76  "gpr w21 .32 168 0\n" // w0
77  "gpr w22 .32 176 0\n" // w0
78  "gpr w23 .32 184 0\n" // w0
79  "gpr w24 .32 192 0\n" // w0
80  "gpr w25 .32 200 0\n" // w0
81  "gpr w26 .32 208 0\n" // w0
82  "gpr w27 .32 216 0\n" // w0
83  "gpr w28 .32 224 0\n" // w0
84  "gpr w29 .32 232 0\n" // w0
85  "gpr wzr .32 ? 0\n" // w0
86  "gpr zr .64 ? 0\n" // w0
87  // TODO complete w list ...
88  // special registers
89  "gpr fp .64 232 0\n" // FP
90  "gpr lr .64 236 0\n" // LR
91  "gpr sp .64 240 0\n" // SP
92  "gpr pc .64 248 0\n" // PC
93  "gpr pstate .64 256 0\n" // FLAGS
94  // TODO flags
95  "gpr nf .1 .2176 0 sign\n" // XXX wrong offset
96 );
return strdup("=PC pc\n" "=SP sp\n" "=BP x30\n" "=A0 x0\n" "=A1 x1\n" "=A2 x2\n" "=A3 x3\n" "=ZF zf\n" "=SF nf\n" "=OF vf\n" "=CF cf\n" "gpr x0 .64 0 0\n" "gpr x1 .64 8 0\n" "gpr x2 .64 16 0\n" "gpr x3 .64 24 0\n" "gpr x4 .64 32 0\n" "gpr x5 .64 40 0\n" "gpr x6 .64 48 0\n" "gpr x7 .64 56 0\n" "gpr x8 .64 64 0\n" "gpr x9 .64 72 0\n" "gpr x10 .64 80 0\n" "gpr x11 .64 88 0\n" "gpr x12 .64 96 0\n" "gpr x13 .64 104 0\n" "gpr x14 .64 112 0\n" "gpr x15 .64 120 0\n" "gpr x16 .64 128 0\n" "gpr x17 .64 136 0\n" "gpr x18 .64 144 0\n" "gpr x19 .64 152 0\n" "gpr x20 .64 160 0\n" "gpr x21 .64 168 0\n" "gpr x22 .64 176 0\n" "gpr x23 .64 184 0\n" "gpr x24 .64 192 0\n" "gpr x25 .64 200 0\n" "gpr x26 .64 208 0\n" "gpr x27 .64 216 0\n" "gpr x28 .64 224 0\n" "gpr x29 .64 232 0\n" "gpr w0 .32 0 0\n" "gpr w1 .32 8 0\n" "gpr w2 .32 16 0\n" "gpr w3 .32 24 0\n" "gpr w4 .32 32 0\n" "gpr w5 .32 40 0\n" "gpr w6 .32 48 0\n" "gpr w7 .32 56 0\n" "gpr w8 .32 64 0\n" "gpr w9 .32 72 0\n" "gpr w10 .32 80 0\n" "gpr w11 .32 88 0\n" "gpr w12 .32 96 0\n" "gpr w13 .32 104 0\n" "gpr w14 .32 112 0\n" "gpr w15 .32 120 0\n" "gpr w16 .32 128 0\n" "gpr w17 .32 136 0\n" "gpr w18 .32 144 0\n" "gpr w19 .32 152 0\n" "gpr w20 .32 160 0\n" "gpr w21 .32 168 0\n" "gpr w22 .32 176 0\n" "gpr w23 .32 184 0\n" "gpr w24 .32 192 0\n" "gpr w25 .32 200 0\n" "gpr w26 .32 208 0\n" "gpr w27 .32 216 0\n" "gpr w28 .32 224 0\n" "gpr w29 .32 232 0\n" "gpr wzr .32 ? 0\n" "gpr zr .64 ? 0\n" "gpr fp .64 232 0\n" "gpr lr .64 236 0\n" "gpr sp .64 240 0\n" "gpr pc .64 248 0\n" "gpr pstate .64 256 0\n" "gpr nf .1 .2176 0 sign\n")