diff options
Diffstat (limited to 'src/lj_target_arm.h')
-rw-r--r-- | src/lj_target_arm.h | 11 |
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 |