mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
Merge remote-tracking branch 'lightening/master'
This commit is contained in:
commit
9b4870cad3
2 changed files with 7 additions and 5 deletions
|
@ -994,10 +994,11 @@ static void
|
|||
emit_veneer(jit_state_t *_jit, jit_pointer_t target)
|
||||
{
|
||||
jit_gpr_t tmp = get_temp_gpr(_jit);
|
||||
uint32_t inst = encode_ox19(A64_LDRI_LITERAL, jit_gpr_regno(tmp));
|
||||
uint32_t ldr = encode_ox19(A64_LDRI_LITERAL, jit_gpr_regno(tmp));
|
||||
uint32_t br = write_Rn_bitfield(A64_BR, jit_gpr_regno(tmp));
|
||||
uint32_t *loc = _jit->pc.ui;
|
||||
emit_u32(_jit, inst);
|
||||
BR(_jit, jit_gpr_regno(tmp));
|
||||
emit_u32(_jit, ldr);
|
||||
emit_u32(_jit, br);
|
||||
unget_temp_gpr(_jit);
|
||||
if (_jit->overflow)
|
||||
return;
|
||||
|
|
|
@ -1331,8 +1331,6 @@ emit_literal_pool(jit_state_t *_jit, enum guard_pool guard)
|
|||
if (_jit->overflow)
|
||||
return;
|
||||
|
||||
_jit->pool->deadline = -1;
|
||||
|
||||
if (!_jit->pool->size)
|
||||
return;
|
||||
|
||||
|
@ -1368,6 +1366,9 @@ emit_literal_pool(jit_state_t *_jit, enum guard_pool guard)
|
|||
}
|
||||
}
|
||||
|
||||
if (_jit->overflow)
|
||||
return;
|
||||
|
||||
if (guard == GUARD_NEEDED)
|
||||
patch_jmp_without_veneer(_jit, patch_loc);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue