================
@@ -266,6 +266,16 @@ class CIR_VectorTypeOf<list<Type> types, string summary = 
"">
             "vector of " # CIR_TypeSummaries<types>.value,
             summary)>;
 
+class CIR_VectorOf<Type T> : CIR_ConfinedType<
+  CIR_AnyVectorType,
+  [CIR_ElementTypePred<T.predicate>],
+  "CIR vector of " # T.summary>;
+
+// Type constraint accepting a either a type T or a vector of type T
+// Mimicking LLVMIR's LLVM_ScalarOrVectorOf
+class CIR_ScalarOrVectorOf<Type T> :
+    AnyTypeOf<[T, CIR_VectorOf<T>]>;
----------------
xlauko wrote:

```suggestion
class CIR_ScalarOrVectorOf<Type T> : AnyTypeOf<[T, CIR_VectorOf<T>]>;
```

https://github.com/llvm/llvm-project/pull/170427
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to