]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Revert 644d68e9501dd5679194dd5c8e0d3ce24764a1d8
authorFlorian Krohm <flo2030@eich-krohm.de>
Thu, 16 Oct 2025 14:23:01 +0000 (14:23 +0000)
committerFlorian Krohm <flo2030@eich-krohm.de>
Thu, 16 Oct 2025 14:23:01 +0000 (14:23 +0000)
That change broke none/tests/ppc64/test_isa_3_1_VRT. Not good.
Add a comment as to why a vector type is needed.

VEX/priv/ir_defs.c

index afb14fcc5db975242f24b3bcfbd25ad3a3984764..1889c97187faea2150ec8449bbbb4f1931a21a9c 100644 (file)
@@ -3724,10 +3724,13 @@ void typeOfPrimop ( IROp op,
       case Iop_PwExtUSMulQAdd8x16:
          BINARY(Ity_V128,Ity_V128, Ity_V128);
 
-      case Iop_DivU128:  case Iop_DivS128:
+      /* Note: Semantically, operands and result of these IROps are 128-bit
+         integers (c.f. libvex_ir.h). The Ity_V128 type is used here to
+         indicate that those values require a vector register to be stored. */
+      case Iop_DivU128: case Iop_DivS128:
       case Iop_DivU128E: case Iop_DivS128E:
       case Iop_ModU128:  case Iop_ModS128:
-         BINARY(Ity_I128,Ity_I128, Ity_I128);
+         BINARY(Ity_V128,Ity_V128, Ity_V128);
 
       case Iop_2xMultU64Add128CarryOut:
       case Iop_Perm8x16x2: