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
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/jit_aarch64.c 1
-rw-r--r--lib/jit_alpha.c 1
-rw-r--r--lib/jit_arm.c 1
-rw-r--r--lib/jit_hppa.c 1
-rw-r--r--lib/jit_ia64.c 6
-rw-r--r--lib/jit_mips.c 1
-rw-r--r--lib/jit_ppc.c 1
-rw-r--r--lib/jit_s390x.c 1
-rw-r--r--lib/jit_sparc.c 1
-rw-r--r--lib/jit_x86.c 1
10 files changed, 15 insertions, 0 deletions
diff --git a/lib/jit_aarch64.c b/lib/jit_aarch64.c
index 52d5c4f..a8673ea 100644
--- a/lib/jit_aarch64.c
+++ b/lib/jit_aarch64.c
@@ -1150,6 +1150,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_alpha.c b/lib/jit_alpha.c
index 6fbdf6d..91e2aa1 100644
--- a/lib/jit_alpha.c
+++ b/lib/jit_alpha.c
@@ -1191,6 +1191,7 @@ _emit_code(jit_state_t *_jit)
}
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == jit_carry == _NOREG ? 0 : (1 << jit_carry));
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_arm.c b/lib/jit_arm.c
index ed086dd..1790225 100644
--- a/lib/jit_arm.c
+++ b/lib/jit_arm.c
@@ -1526,6 +1526,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
diff --git a/lib/jit_hppa.c b/lib/jit_hppa.c
index bc277bc..d3f79d7 100644
--- a/lib/jit_hppa.c
+++ b/lib/jit_hppa.c
@@ -1139,6 +1139,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_ia64.c b/lib/jit_ia64.c
index e3c6554..6aa4562 100644
--- a/lib/jit_ia64.c
+++ b/lib/jit_ia64.c
@@ -1356,6 +1356,12 @@ _emit_code(jit_state_t *_jit)
sync();
#endif
jit_regarg_clr(node, value);
+ if (jit_carry == _NOREG)
+ assert(jit_regset_cmp_ui(&_jitc->regarg, 0) == 0);
+ else {
+ assert(jit_regset_scan1(&_jitc->regarg, 0) == jit_carry);
+ assert(jit_regset_scan1(&_jitc->regarg, jit_carry + 1) == ULONG_MAX);
+ }
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_mips.c b/lib/jit_mips.c
index aed730c..71822a0 100644
--- a/lib/jit_mips.c
+++ b/lib/jit_mips.c
@@ -1467,6 +1467,7 @@ _emit_code(jit_state_t *_jit)
}
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == jit_carry == _NOREG ? 0 : (1 << jit_carry));
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_ppc.c b/lib/jit_ppc.c
index 8ef6119..2bd92cb 100644
--- a/lib/jit_ppc.c
+++ b/lib/jit_ppc.c
@@ -1351,6 +1351,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_s390x.c b/lib/jit_s390x.c
index 460d793..98863e7 100644
--- a/lib/jit_s390x.c
+++ b/lib/jit_s390x.c
@@ -1135,6 +1135,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_sparc.c b/lib/jit_sparc.c
index dc1557c..65b4f3f 100644
--- a/lib/jit_sparc.c
+++ b/lib/jit_sparc.c
@@ -1132,6 +1132,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
diff --git a/lib/jit_x86.c b/lib/jit_x86.c
index 6f55ebd..c2158d6 100644
--- a/lib/jit_x86.c
+++ b/lib/jit_x86.c
@@ -1765,6 +1765,7 @@ _emit_code(jit_state_t *_jit)
abort();
}
jit_regarg_clr(node, value);
+ assert(_jitc->regarg == 0);
/* update register live state */
jit_reglive(node);
}
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月18日 01:52:07 +0000

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