mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
Revise hardcoded inlining in lj_asm.c. Saves 1-2K.
This commit is contained in:
parent
02e58f5e56
commit
9a682f341d
@ -666,7 +666,7 @@ static Reg ra_restore(ASMState *as, IRRef ref)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Save a register to a spill slot. */
|
/* Save a register to a spill slot. */
|
||||||
static LJ_AINLINE void ra_save(ASMState *as, IRIns *ir, Reg r)
|
static void ra_save(ASMState *as, IRIns *ir, Reg r)
|
||||||
{
|
{
|
||||||
RA_DBGX((as, "save $i $r", ir, r));
|
RA_DBGX((as, "save $i $r", ir, r));
|
||||||
emit_rmro(as, r < RID_MAX_GPR ? XO_MOVto : XO_MOVSDto,
|
emit_rmro(as, r < RID_MAX_GPR ? XO_MOVto : XO_MOVSDto,
|
||||||
@ -710,7 +710,7 @@ static Reg ra_evict(ASMState *as, RegSet allow)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Pick any register (marked as free). Evict on-demand. */
|
/* Pick any register (marked as free). Evict on-demand. */
|
||||||
static LJ_AINLINE Reg ra_pick(ASMState *as, RegSet allow)
|
static Reg ra_pick(ASMState *as, RegSet allow)
|
||||||
{
|
{
|
||||||
RegSet pick = as->freeset & allow;
|
RegSet pick = as->freeset & allow;
|
||||||
if (!pick)
|
if (!pick)
|
||||||
@ -720,7 +720,7 @@ static LJ_AINLINE Reg ra_pick(ASMState *as, RegSet allow)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Get a scratch register (marked as free). */
|
/* Get a scratch register (marked as free). */
|
||||||
static LJ_AINLINE Reg ra_scratch(ASMState *as, RegSet allow)
|
static Reg ra_scratch(ASMState *as, RegSet allow)
|
||||||
{
|
{
|
||||||
Reg r = ra_pick(as, allow);
|
Reg r = ra_pick(as, allow);
|
||||||
ra_modified(as, r);
|
ra_modified(as, r);
|
||||||
@ -785,7 +785,7 @@ found:
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Allocate a register on-demand. */
|
/* Allocate a register on-demand. */
|
||||||
static LJ_INLINE Reg ra_alloc1(ASMState *as, IRRef ref, RegSet allow)
|
static Reg ra_alloc1(ASMState *as, IRRef ref, RegSet allow)
|
||||||
{
|
{
|
||||||
Reg r = IR(ref)->r;
|
Reg r = IR(ref)->r;
|
||||||
/* Note: allow is ignored if the register is already allocated. */
|
/* Note: allow is ignored if the register is already allocated. */
|
||||||
|
Loading…
Reference in New Issue
Block a user