aboutsummaryrefslogtreecommitdiff
path: root/src/lj_target_arm.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_target_arm.h')
-rw-r--r--src/lj_target_arm.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/lj_target_arm.h b/src/lj_target_arm.h
index a24fc819..20e8ad36 100644
--- a/src/lj_target_arm.h
+++ b/src/lj_target_arm.h
@@ -14,7 +14,9 @@
14#if LJ_SOFTFP 14#if LJ_SOFTFP
15#define FPRDEF(_) 15#define FPRDEF(_)
16#else 16#else
17#error "NYI: hard-float support for ARM" 17#define FPRDEF(_) \
18 _(D0) _(D1) _(D2) _(D3) _(D4) _(D5) _(D6) _(D7) \
19 _(D8) _(D9) _(D10) _(D11) _(D12) _(D13) _(D14) _(D15)
18#endif 20#endif
19#define VRIDDEF(_) 21#define VRIDDEF(_)
20 22
@@ -45,7 +47,7 @@ enum {
45#if LJ_SOFTFP 47#if LJ_SOFTFP
46 RID_MAX_FPR = RID_MIN_FPR, 48 RID_MAX_FPR = RID_MIN_FPR,
47#else 49#else
48#error "NYI: VFP support for ARM" 50 RID_MAX_FPR = RID_D15+1,
49#endif 51#endif
50 RID_NUM_GPR = RID_MAX_GPR - RID_MIN_GPR, 52 RID_NUM_GPR = RID_MAX_GPR - RID_MIN_GPR,
51 RID_NUM_FPR = RID_MAX_FPR - RID_MIN_FPR 53 RID_NUM_FPR = RID_MAX_FPR - RID_MIN_FPR
@@ -68,7 +70,8 @@ enum {
68#define RSET_FPR 0 70#define RSET_FPR 0
69#define RSET_ALL RSET_GPR 71#define RSET_ALL RSET_GPR
70#else 72#else
71#error "NYI: VFP support for ARM" 73#define RSET_FPR (RSET_RANGE(RID_MIN_FPR, RID_MAX_FPR))
74#define RSET_ALL (RSET_GPR|RSET_FPR)
72#endif 75#endif
73#define RSET_INIT RSET_ALL 76#define RSET_INIT RSET_ALL
74 77
@@ -82,7 +85,7 @@ enum {
82#if LJ_SOFTFP 85#if LJ_SOFTFP
83#define RSET_SCRATCH_FPR 0 86#define RSET_SCRATCH_FPR 0
84#else 87#else
85#error "NYI: VFP support for ARM" 88#define RSET_SCRATCH_FPR (RSET_RANGE(RID_D0, RID_D7+1))
86#endif 89#endif
87#define RSET_SCRATCH (RSET_SCRATCH_GPR|RSET_SCRATCH_FPR) 90#define RSET_SCRATCH (RSET_SCRATCH_GPR|RSET_SCRATCH_FPR)
88#define REGARG_FIRSTGPR RID_R0 91#define REGARG_FIRSTGPR RID_R0