mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-10 00:14:09 +00:00
Working on 64-bit JIT
This commit is contained in:
parent
d68d05d525
commit
e524c586a3
@ -323,7 +323,7 @@ TRef lj_ir_kgc(jit_State *J, GCobj *o, IRType t)
|
||||
{
|
||||
IRIns *ir, *cir = J->cur.ir;
|
||||
IRRef ref;
|
||||
lua_assert(!LJ_GC64); /* TODO_GC64: major changes required. */
|
||||
//lua_assert(!LJ_GC64); /* TODO_GC64: major changes required. */
|
||||
lua_assert(!isdead(J2G(J), o));
|
||||
for (ref = J->chain[IR_KGC]; ref; ref = cir[ref].prev)
|
||||
if (ir_kgc(&cir[ref]) == o)
|
||||
|
@ -166,7 +166,11 @@ typedef struct SnapShot {
|
||||
#define SNAPCOUNT_DONE 255 /* Already compiled and linked a side trace. */
|
||||
|
||||
/* Compressed snapshot entry. */
|
||||
#ifdef LJ_GC64
|
||||
typedef uint64_t SnapEntry;
|
||||
#else
|
||||
typedef uint32_t SnapEntry;
|
||||
#endif
|
||||
|
||||
#define SNAP_FRAME 0x010000 /* Frame slot. */
|
||||
#define SNAP_CONT 0x020000 /* Continuation slot. */
|
||||
@ -178,7 +182,7 @@ LJ_STATIC_ASSERT(SNAP_CONT == TREF_CONT);
|
||||
#define SNAP(slot, flags, ref) (((SnapEntry)(slot) << 24) + (flags) + (ref))
|
||||
#define SNAP_TR(slot, tr) \
|
||||
(((SnapEntry)(slot) << 24) + ((tr) & (TREF_CONT|TREF_FRAME|TREF_REFMASK)))
|
||||
#define SNAP_MKPC(pc) ((SnapEntry)u32ptr(pc))
|
||||
#define SNAP_MKPC(pc) ((SnapEntry)(pc))
|
||||
#define SNAP_MKFTSZ(ftsz) ((SnapEntry)(ftsz))
|
||||
#define snap_ref(sn) ((sn) & 0xffff)
|
||||
#define snap_slot(sn) ((BCReg)((sn) >> 24))
|
||||
|
Loading…
Reference in New Issue
Block a user