[llvm] [AArch64] Add lowering for `@llvm.experimental.vector.compress` (PR #101015)

David Green via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 29 10:28:57 PDT 2024


================
@@ -1535,6 +1535,24 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
       }
     }
 
+    // We can lower types that have <vscale x {2|4}> elements to svcompact and
+    // legal i8/i16 types via a compressing store.
+    for (auto VT :
----------------
davemgreen wrote:

This is inside a Subtarget->isSVEorStreamingSVEAvailable() block, but I don't believe the instruction is available in streaming-sve mode. You likely need to check Subtarget->isSVEAvailable(), but these target features have unfortunately turned into a bit of a mess.

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


More information about the llvm-commits mailing list