diff options
-rw-r--r-- | src/lj_asm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c index bed2268e..d961927b 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c | |||
@@ -1017,7 +1017,11 @@ static uint32_t ir_khash(IRIns *ir) | |||
1017 | } else { | 1017 | } else { |
1018 | lua_assert(irt_isgcv(ir->t)); | 1018 | lua_assert(irt_isgcv(ir->t)); |
1019 | lo = u32ptr(ir_kgc(ir)); | 1019 | lo = u32ptr(ir_kgc(ir)); |
1020 | #if LJ_GC64 | ||
1021 | hi = (uint32_t)(u64ptr(ir_kgc(ir)) >> 32) | (irt_toitype(ir->t) << 15); | ||
1022 | #else | ||
1020 | hi = lo + HASH_BIAS; | 1023 | hi = lo + HASH_BIAS; |
1024 | #endif | ||
1021 | } | 1025 | } |
1022 | return hashrot(lo, hi); | 1026 | return hashrot(lo, hi); |
1023 | } | 1027 | } |