4 R0
, R1
, R2
, R3
, R4
, R5
, R6
, R7
,
5 R8
, R9
, R10
, R11
, R12
, R13
, R14
, R15
,
7 V0
, V1
, V2
, V3
, V4
, V5
, V6
, V7
,
8 V16
, V17
, V18
, V19
, V20
, V21
, V22
, V23
,
9 V24
, V25
, V26
, V27
, V28
, V29
, V30
,
13 R19
, R20
, R21
, R22
, R23
, R24
, R25
, R26
,
15 V8
, V9
, V10
, V11
, V12
, V13
, V14
, V15
,
19 #define RGLOB (BIT(FP) | BIT(SP) | BIT(R18))
28 #define ARM64_COMMON \
35 .rsave = arm64_rsave, \
36 .nrsave = {NGPS, NFPS}, \
37 .retregs = arm64_retregs, \
38 .argregs = arm64_argregs, \
39 .memargs = arm64_memargs, \
42 .emitfn = arm64_emitfn, \
47 .emitfin
= elf_emitfin
,
52 Target T_arm64_apple
= {
53 .name
= "arm64_apple",
56 .emitfin
= macho_emitfin
,
62 MAKESURE(globals_are_not_arguments
,
63 (RGLOB
& (BIT(R8
+1) - 1)) == 0
65 MAKESURE(arrays_size_ok
,
66 sizeof arm64_rsave
== (NGPS
+NFPS
+1) * sizeof(int) &&
67 sizeof arm64_rclob
== (NCLR
+1) * sizeof(int)