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_s390-fpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/jit_s390-fpu.c')
-rw-r--r--lib/jit_s390-fpu.c 40
1 files changed, 24 insertions, 16 deletions
diff --git a/lib/jit_s390-fpu.c b/lib/jit_s390-fpu.c
index db848d9..b43f4f6 100644
--- a/lib/jit_s390-fpu.c
+++ b/lib/jit_s390-fpu.c
@@ -997,12 +997,13 @@ static void
_fmar_f(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3)
- MAER(r0, r2, r1);
+ MAEBR(r0, r2, r1);
else {
t0 = jit_get_reg(jit_class_fpr);
movr_f(rn(t0), r3);
- MAER(rn(t0), r2, r1);
+ MAEBR(rn(t0), r2, r1);
movr_f(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1012,12 +1013,13 @@ static void
_fmsr_f(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3)
- MSER(r0, r2, r1);
+ MSEBR(r0, r2, r1);
else {
t0 = jit_get_reg(jit_class_fpr);
movr_f(rn(t0), r3);
- MSER(rn(t0), r2, r1);
+ MSEBR(rn(t0), r2, r1);
movr_f(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1027,14 +1029,15 @@ static void
_fnmar_f(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3) {
- MAER(r0, r2, r1);
+ MAEBR(r0, r2, r1);
negr_f(r0, r0);
}
else {
t0 = jit_get_reg(jit_class_fpr);
movr_f(rn(t0), r3);
- MAER(rn(t0), r2, r1);
+ MAEBR(rn(t0), r2, r1);
negr_f(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1044,14 +1047,15 @@ static void
_fnmsr_f(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3) {
- MSER(r0, r2, r1);
+ MSEBR(r0, r2, r1);
negr_f(r0, r0);
}
else {
t0 = jit_get_reg(jit_class_fpr);
movr_f(rn(t0), r3);
- MSER(rn(t0), r2, r1);
+ MSEBR(rn(t0), r2, r1);
negr_f(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1061,12 +1065,13 @@ static void
_fmar_d(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3)
- MADR(r0, r2, r1);
+ MADBR(r0, r2, r1);
else {
t0 = jit_get_reg(jit_class_fpr);
movr_d(rn(t0), r3);
- MADR(rn(t0), r2, r1);
+ MADBR(rn(t0), r2, r1);
movr_d(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1076,12 +1081,13 @@ static void
_fmsr_d(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3)
- MSDR(r0, r2, r1);
+ MSDBR(r0, r2, r1);
else {
t0 = jit_get_reg(jit_class_fpr);
movr_d(rn(t0), r3);
- MSDR(rn(t0), r2, r1);
+ MSDBR(rn(t0), r2, r1);
movr_d(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1091,14 +1097,15 @@ static void
_fnmar_d(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3) {
- MADR(r0, r2, r1);
+ MADBR(r0, r2, r1);
negr_d(r0, r0);
}
else {
t0 = jit_get_reg(jit_class_fpr);
movr_f(rn(t0), r3);
- MADR(rn(t0), r2, r1);
+ MADBR(rn(t0), r2, r1);
negr_d(r0, rn(t0));
jit_unget_reg(t0);
}
@@ -1108,14 +1115,15 @@ static void
_fnmsr_d(jit_state_t* _jit,
jit_int32_t r0, jit_int32_t r1, jit_int32_t r2, jit_int32_t r3)
{
+ jit_int32_t t0;
if (r0 == r3) {
- MSDR(r0, r2, r1);
+ MSDBR(r0, r2, r1);
negr_d(r0, r0);
}
else {
t0 = jit_get_reg(jit_class_fpr);
movr_d(rn(t0), r3);
- MSDR(rn(t0), r2, r1);
+ MSDBR(rn(t0), r2, r1);
negr_d(r0, rn(t0));
jit_unget_reg(t0);
}
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月26日 01:41:36 +0000

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