From 25f50193c0c2e439111ac5770c5c6eff15967764 Mon Sep 17 00:00:00 2001 From: Damyan Pepper Date: Wed, 25 Mar 2026 18:07:43 -0700 Subject: [PATCH 1/2] Add LinalgMatrixLayout to DxilConstants.h --- include/dxc/DXIL/DxilConstants.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/dxc/DXIL/DxilConstants.h b/include/dxc/DXIL/DxilConstants.h index a2c4e8b9f2..86fd6d825a 100644 --- a/include/dxc/DXIL/DxilConstants.h +++ b/include/dxc/DXIL/DxilConstants.h @@ -204,6 +204,13 @@ enum class MatrixScope : uint32_t { ThreadGroup = 2, }; +enum class LinalgMatrixLayout : uint32_t { + RowMajor = 0, + ColumnMajor = 1, + MulOptimal = 2, + OuterProductOptimal = 3, +}; + // Must match D3D_INTERPOLATION_MODE enum class InterpolationMode : uint8_t { Undefined = 0, From 3547cb0564049bb6d2555666886f12cec33fd1f2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 26 Mar 2026 01:14:12 +0000 Subject: [PATCH 2/2] Remove unused static CheckLinalgInterpretation from DxilValidation.cpp Co-authored-by: damyanp <8118402+damyanp@users.noreply.github.com> Agent-Logs-Url: https://github.com/damyanp/DirectXShaderCompiler/sessions/642f795d-d640-402b-87aa-006061deda85 --- lib/DxilValidation/DxilValidation.cpp | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/lib/DxilValidation/DxilValidation.cpp b/lib/DxilValidation/DxilValidation.cpp index ab3ef39d2b..ab9dd697d9 100644 --- a/lib/DxilValidation/DxilValidation.cpp +++ b/lib/DxilValidation/DxilValidation.cpp @@ -974,28 +974,6 @@ static void ValidateImmOperandForMathDxilOp(CallInst *CI, DXIL::OpCode Opcode, } } -static bool CheckLinalgInterpretation(uint32_t Input, bool InRegister) { - using CT = DXIL::ComponentType; - switch (static_cast(Input)) { - case CT::I16: - case CT::U16: - case CT::I32: - case CT::U32: - case CT::F16: - case CT::F32: - case CT::U8: - case CT::I8: - case CT::F8_E4M3: - case CT::F8_E5M2: - return true; - case CT::PackedS8x32: - case CT::PackedU8x32: - return InRegister; - default: - return false; - } -} - // Validate the type-defined mask compared to the store value mask which // indicates which parts were defined returns true if caller should continue // validation