Add consistency check on temporaries during a jump - lightning.git - Portable just-in-time compiler library

index : lightning.git
Portable just-in-time compiler library
summary refs log tree commit diff
path: root/lib/jit_arm-cpu.c
diff options
context:
space:
mode:
authorpcpa <paulo.cesar.pereira.de.andrade@gmail.com>2014年08月16日 20:31:55 -0300
committerpcpa <paulo.cesar.pereira.de.andrade@gmail.com>2014年08月16日 20:31:55 -0300
commitb58960638da7480a469fbcd4f239e57e8d1733c5 (patch)
tree001ee4c4295943c4caeddd270f94c87035305c17 /lib/jit_arm-cpu.c
parent93e3ff38e157cd46b10c7e2b32dd63ef6271a891 (diff)
downloadlightning-b58960638da7480a469fbcd4f239e57e8d1733c5.tar.gz
Add consistency check on temporaries during a jump
* lib/jit_aarch64-cpu.c, lib/jit_aarch64-fpu.c, lib/jit_arm-cpu.c, lib/jit_arm-vfp.c, lib/jit_hppa-cpu.c, lib/jit_hppa-fpu.c, lib/jit_ia64-cpu.c, lib/jit_ia64-fpu.c, lib/jit_mips-cpu.c, lib/jit_mips-fpu.c, lib/jit_ppc-cpu.c, lib/jit_ppc-fpu.c, lib/jit_s390x-cpu.c, lib/jit_s390x-fpu.c, lib/jit_s390x.c, lib/jit_sparc-cpu.c, lib/jit_x86-cpu.c, lib/jit_x86-sse.c, lib/jit_x86-x87.c: Review generation of all branch instructions and always adds the jit_class_nospill bitfield for temporary registers that cannot be spilled because the reload would be after a conditional jump; the patch only adds an extra assertion. These conditions do not happen on documented lightning usage, but can happen if one uses the not exported jit_get_reg and jit_unget_reg calls and cause enough register starvation.
Diffstat (limited to 'lib/jit_arm-cpu.c')
-rw-r--r--lib/jit_arm-cpu.c 2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/jit_arm-cpu.c b/lib/jit_arm-cpu.c
index 08db893..1be40b5 100644
--- a/lib/jit_arm-cpu.c
+++ b/lib/jit_arm-cpu.c
@@ -2582,7 +2582,7 @@ _jmpi_p(jit_state_t *_jit, jit_word_t i0)
#if 0
jit_word_t w;
jit_int32_t reg;
- reg = jit_get_reg(jit_class_gpr);
+ reg = jit_get_reg(jit_class_gpr|jit_class_nospill);
w = movi_p(rn(reg), i0);
jmpr(rn(reg));
jit_unget_reg(reg);
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月15日 08:28:01 +0000

AltStyle によって変換されたページ (->オリジナル) /