[llvm] [VPlan] Add initial anlysis to infer scalar type of VPValues. (PR #69013)

via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 26 17:12:47 PDT 2023


================
@@ -738,7 +739,19 @@ void VPWidenRecipe::execute(VPTransformState &State) {
                       << Instruction::getOpcodeName(Opcode));
     llvm_unreachable("Unhandled instruction!");
   } // end of switch.
+
+#if !defined(NDEBUG)
+  // Verify that VPlan type inference results agree with the type of the
+  // generated values.
+  VPTypeAnalysis A(State.Builder.GetInsertBlock()->getContext());
+  for (unsigned Part = 0; Part < State.UF; ++Part) {
+    assert(VectorType::get(A.inferScalarType(getVPSingleValue()), State.VF) ==
+               State.get(this, Part)->getType() &&
+           "infered type and type from generated instructions do not match");
----------------
ayalz wrote:

```suggestion
           "inferred type and type from generated instructions do not match");
```

https://github.com/llvm/llvm-project/pull/69013


More information about the llvm-commits mailing list