diff options
author | Mike Pall <mike> | 2017-10-02 23:10:56 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2017-10-02 23:10:56 +0200 |
commit | 850f8c59d3d04a9847f21f32a6c36d8269b5b6b1 (patch) | |
tree | f4c9094703020bac4ec156b127b3c1b64c9f1f23 /src/lj_ir.h | |
parent | b4ed3219a1a98dd9fe7d1e3eeea3b82f5a780948 (diff) | |
download | luajit-850f8c59d3d04a9847f21f32a6c36d8269b5b6b1.tar.gz luajit-850f8c59d3d04a9847f21f32a6c36d8269b5b6b1.tar.bz2 luajit-850f8c59d3d04a9847f21f32a6c36d8269b5b6b1.zip |
LJ_GC64: Make ASMREF_L references 64 bit.
Reported by Yichun Zhang.
Diffstat (limited to 'src/lj_ir.h')
-rw-r--r-- | src/lj_ir.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lj_ir.h b/src/lj_ir.h index 34c27853..8057a750 100644 --- a/src/lj_ir.h +++ b/src/lj_ir.h | |||
@@ -377,10 +377,12 @@ typedef struct IRType1 { uint8_t irt; } IRType1; | |||
377 | #define irt_isint64(t) (irt_typerange((t), IRT_I64, IRT_U64)) | 377 | #define irt_isint64(t) (irt_typerange((t), IRT_I64, IRT_U64)) |
378 | 378 | ||
379 | #if LJ_GC64 | 379 | #if LJ_GC64 |
380 | /* Include IRT_NIL, so IR(ASMREF_L) (aka REF_NIL) is considered 64 bit. */ | ||
380 | #define IRT_IS64 \ | 381 | #define IRT_IS64 \ |
381 | ((1u<<IRT_NUM)|(1u<<IRT_I64)|(1u<<IRT_U64)|(1u<<IRT_P64)|\ | 382 | ((1u<<IRT_NUM)|(1u<<IRT_I64)|(1u<<IRT_U64)|(1u<<IRT_P64)|\ |
382 | (1u<<IRT_LIGHTUD)|(1u<<IRT_STR)|(1u<<IRT_THREAD)|(1u<<IRT_PROTO)|\ | 383 | (1u<<IRT_LIGHTUD)|(1u<<IRT_STR)|(1u<<IRT_THREAD)|(1u<<IRT_PROTO)|\ |
383 | (1u<<IRT_FUNC)|(1u<<IRT_CDATA)|(1u<<IRT_TAB)|(1u<<IRT_UDATA)) | 384 | (1u<<IRT_FUNC)|(1u<<IRT_CDATA)|(1u<<IRT_TAB)|(1u<<IRT_UDATA)|\ |
385 | (1u<<IRT_NIL)) | ||
384 | #elif LJ_64 | 386 | #elif LJ_64 |
385 | #define IRT_IS64 \ | 387 | #define IRT_IS64 \ |
386 | ((1u<<IRT_NUM)|(1u<<IRT_I64)|(1u<<IRT_U64)|(1u<<IRT_P64)|(1u<<IRT_LIGHTUD)) | 388 | ((1u<<IRT_NUM)|(1u<<IRT_I64)|(1u<<IRT_U64)|(1u<<IRT_P64)|(1u<<IRT_LIGHTUD)) |