[llvm] [AArch64] Add @llvm.experimental.vector.match (PR #101974)

Paul Walker via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 30 11:16:57 PDT 2024


================
@@ -1771,6 +1771,11 @@ class TargetTransformInfo {
   /// This should also apply to lowering for vector funnel shifts (rotates).
   bool isVectorShiftByScalarCheap(Type *Ty) const;
 
+  /// \returns True if the target has hardware support for vector match
+  /// operations between vectors of type `VT` and search vectors of `SearchSize`
+  /// elements, and false otherwise.
+  bool hasVectorMatch(VectorType *VT, unsigned SearchSize) const;
----------------
paulwalker-arm wrote:

Is this really a TTI method?

The generic lowering means it's available to all targets and so the decision to use it would be cost based rather than a specific TTI question like this.  I'm not sure of the future intent but based on the current usage I'd suggest moving it into TargetLowering.

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


More information about the llvm-commits mailing list