Blame valgrind-3.17.0-s390_insn_as_string.patch
|
Mark Wielaard |
92d526 |
commit 45873298ff2d17accc65654d64758360616aade5
|
|
Mark Wielaard |
92d526 |
Author: Andreas Arnez <arnez@linux.ibm.com>
|
|
Mark Wielaard |
92d526 |
Date: Tue Mar 30 18:10:43 2021 +0200
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
s390x: Add missing UNOP insns to s390_insn_as_string
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
Some unary operator insns are not handled by s390_insn_as_string(). If
|
|
Mark Wielaard |
92d526 |
they are encountered while the appropriate trace flag is set, a vpanic
|
|
Mark Wielaard |
92d526 |
occurs. Fix this: add handling for the missing insns.
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
diff --git a/VEX/priv/host_s390_defs.c b/VEX/priv/host_s390_defs.c
|
|
Mark Wielaard |
92d526 |
index 8762975b2..6e0734ae0 100644
|
|
Mark Wielaard |
92d526 |
--- a/VEX/priv/host_s390_defs.c
|
|
Mark Wielaard |
92d526 |
+++ b/VEX/priv/host_s390_defs.c
|
|
Mark Wielaard |
92d526 |
@@ -7860,12 +7860,24 @@ s390_insn_as_string(const s390_insn *insn)
|
|
Mark Wielaard |
92d526 |
op = "v-vunpacku";
|
|
Mark Wielaard |
92d526 |
break;
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
- case S390_VEC_FLOAT_NEG:
|
|
Mark Wielaard |
92d526 |
- op = "v-vfloatneg";
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_ABS:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vabs";
|
|
Mark Wielaard |
92d526 |
break;
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
- case S390_VEC_FLOAT_SQRT:
|
|
Mark Wielaard |
92d526 |
- op = "v-vfloatsqrt";
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_COUNT_LEADING_ZEROES:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vclz";
|
|
Mark Wielaard |
92d526 |
+ break;
|
|
Mark Wielaard |
92d526 |
+
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_COUNT_TRAILING_ZEROES:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vctz";
|
|
Mark Wielaard |
92d526 |
+ break;
|
|
Mark Wielaard |
92d526 |
+
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_COUNT_ONES:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vpopct";
|
|
Mark Wielaard |
92d526 |
+ break;
|
|
Mark Wielaard |
92d526 |
+
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_FLOAT_NEG:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vfloatneg";
|
|
Mark Wielaard |
92d526 |
break;
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
case S390_VEC_FLOAT_ABS:
|
|
Mark Wielaard |
92d526 |
@@ -7876,6 +7888,10 @@ s390_insn_as_string(const s390_insn *insn)
|
|
Mark Wielaard |
92d526 |
op = "v-vfloatnabs";
|
|
Mark Wielaard |
92d526 |
break;
|
|
Mark Wielaard |
92d526 |
|
|
Mark Wielaard |
92d526 |
+ case S390_VEC_FLOAT_SQRT:
|
|
Mark Wielaard |
92d526 |
+ op = "v-vfloatsqrt";
|
|
Mark Wielaard |
92d526 |
+ break;
|
|
Mark Wielaard |
92d526 |
+
|
|
Mark Wielaard |
92d526 |
default:
|
|
Mark Wielaard |
92d526 |
goto fail;
|
|
Mark Wielaard |
92d526 |
}
|