diff options
Diffstat (limited to '')
-rw-r--r-- | src/lj_asm_arm64.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lj_asm_arm64.h b/src/lj_asm_arm64.h index f761525f..c537c514 100644 --- a/src/lj_asm_arm64.h +++ b/src/lj_asm_arm64.h | |||
@@ -421,8 +421,8 @@ static void asm_gencall(ASMState *as, const CCallInfo *ci, IRRef *args) | |||
421 | uint32_t n, nargs = CCI_XNARGS(ci); | 421 | uint32_t n, nargs = CCI_XNARGS(ci); |
422 | int32_t ofs = 0; | 422 | int32_t ofs = 0; |
423 | Reg gpr, fpr = REGARG_FIRSTFPR; | 423 | Reg gpr, fpr = REGARG_FIRSTFPR; |
424 | if ((void *)ci->func) | 424 | if (ci->func) |
425 | emit_call(as, (void *)ci->func); | 425 | emit_call(as, ci->func); |
426 | for (gpr = REGARG_FIRSTGPR; gpr <= REGARG_LASTGPR; gpr++) | 426 | for (gpr = REGARG_FIRSTGPR; gpr <= REGARG_LASTGPR; gpr++) |
427 | as->cost[gpr] = REGCOST(~0u, ASMREF_L); | 427 | as->cost[gpr] = REGCOST(~0u, ASMREF_L); |
428 | gpr = REGARG_FIRSTGPR; | 428 | gpr = REGARG_FIRSTGPR; |
@@ -501,7 +501,7 @@ static void asm_callx(ASMState *as, IRIns *ir) | |||
501 | ci.func = (ASMFunction)(ir_k64(irf)->u64); | 501 | ci.func = (ASMFunction)(ir_k64(irf)->u64); |
502 | } else { /* Need a non-argument register for indirect calls. */ | 502 | } else { /* Need a non-argument register for indirect calls. */ |
503 | Reg freg = ra_alloc1(as, func, RSET_RANGE(RID_X8, RID_MAX_GPR)-RSET_FIXED); | 503 | Reg freg = ra_alloc1(as, func, RSET_RANGE(RID_X8, RID_MAX_GPR)-RSET_FIXED); |
504 | emit_n(as, A64I_BLR, freg); | 504 | emit_n(as, A64I_BLR_AUTH, freg); |
505 | ci.func = (ASMFunction)(void *)0; | 505 | ci.func = (ASMFunction)(void *)0; |
506 | } | 506 | } |
507 | asm_gencall(as, &ci, args); | 507 | asm_gencall(as, &ci, args); |