diff options
author | Mike Pall <mike> | 2010-12-06 16:18:18 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2010-12-06 18:21:51 +0100 |
commit | 159f51d8113555853a3325462f802010d4aac024 (patch) | |
tree | 270b24defe097629df0cf6afa021747babf31c75 /src/lj_ir.h | |
parent | f6c4e8d3d70aa891de5a923a88ff670caef0a59d (diff) | |
download | luajit-159f51d8113555853a3325462f802010d4aac024.tar.gz luajit-159f51d8113555853a3325462f802010d4aac024.tar.bz2 luajit-159f51d8113555853a3325462f802010d4aac024.zip |
Add IR_TOI64.
Diffstat (limited to 'src/lj_ir.h')
-rw-r--r-- | src/lj_ir.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lj_ir.h b/src/lj_ir.h index 72a4d6b4..72c37343 100644 --- a/src/lj_ir.h +++ b/src/lj_ir.h | |||
@@ -119,6 +119,7 @@ | |||
119 | _(TONUM, N , ref, ___) \ | 119 | _(TONUM, N , ref, ___) \ |
120 | _(TOINT, N , ref, lit) \ | 120 | _(TOINT, N , ref, lit) \ |
121 | _(TOBIT, N , ref, ref) \ | 121 | _(TOBIT, N , ref, ref) \ |
122 | _(TOI64, N , ref, lit) \ | ||
122 | _(TOSTR, N , ref, ___) \ | 123 | _(TOSTR, N , ref, ___) \ |
123 | _(STRTO, N , ref, ___) \ | 124 | _(STRTO, N , ref, ___) \ |
124 | \ | 125 | \ |
@@ -204,11 +205,14 @@ IRFLDEF(FLENUM) | |||
204 | #define IRXLOAD_READONLY 1 /* Load from read-only data. */ | 205 | #define IRXLOAD_READONLY 1 /* Load from read-only data. */ |
205 | #define IRXLOAD_UNALIGNED 2 /* Unaligned load. */ | 206 | #define IRXLOAD_UNALIGNED 2 /* Unaligned load. */ |
206 | 207 | ||
207 | /* TOINT mode, stored in op2. Ordered by strength of the checks. */ | 208 | /* TOINT/TOI64 mode, stored in op2. Ordered by strength of the checks. */ |
208 | #define IRTOINT_CHECK 0 /* Number checked for integerness. */ | 209 | #define IRTOINT_CHECK 0 /* Number checked for integerness. */ |
209 | #define IRTOINT_INDEX 1 /* Checked + special backprop rules. */ | 210 | #define IRTOINT_INDEX 1 /* Checked + special backprop rules. */ |
210 | #define IRTOINT_ANY 2 /* Any FP number is ok. */ | 211 | #define IRTOINT_ANY 2 /* Any FP number is ok. */ |
211 | #define IRTOINT_TOBIT 3 /* Cache only: TOBIT conversion. */ | 212 | #define IRTOINT_ZEXT64 3 /* Convert uint32_t to int64_t. */ |
213 | #define IRTOINT_SEXT64 4 /* Convert int32_t to int64_t. */ | ||
214 | #define IRTOINT_TRUNCI64 5 /* Truncate number to int64_t. */ | ||
215 | #define IRTOINT_TOBIT 6 /* Cache only: TOBIT conversion. */ | ||
212 | 216 | ||
213 | /* C call info for CALL* instructions. */ | 217 | /* C call info for CALL* instructions. */ |
214 | typedef struct CCallInfo { | 218 | typedef struct CCallInfo { |