[llvm] [X86] Fold shift into GF2P8AFFINEQB instruction (PR #180019)
Abhiram Jampani via llvm-commits
llvm-commits at lists.llvm.org
Sat Feb 14 06:45:07 PST 2026
================
@@ -29291,12 +29240,44 @@ uint64_t getGFNICtrlImm(unsigned Opcode, unsigned Amt = 0) {
llvm_unreachable("Unsupported GFNI opcode");
}
-// Generate a GFNI gf2p8affine bitmask for vXi8 bitreverse/shift/rotate.
-SDValue getGFNICtrlMask(unsigned Opcode, SelectionDAG &DAG, const SDLoc &DL,
- MVT VT, unsigned Amt = 0) {
+// Extract the 64-bit matrix constant from a BUILD_VECTOR node.
+// For vectors larger than 64-bit, the 8-byte matrix is repeated.
+// Returns std::nullopt if the node is not a constant BUILD_VECTOR.
+static std::optional<uint64_t> extractGF2Matrix(SDValue MatrixOp) {
----------------
Abhiramjampani wrote:
Updated
https://github.com/llvm/llvm-project/pull/180019
More information about the llvm-commits
mailing list