diff options
-rw-r--r-- | src/mesa/shader/slang/slang_codegen.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c index ee82a107e0c..fe6b615c5d6 100644 --- a/src/mesa/shader/slang/slang_codegen.c +++ b/src/mesa/shader/slang/slang_codegen.c @@ -144,14 +144,17 @@ _slang_sizeof_type_specifier(const slang_type_specifier *spec) case SLANG_SPEC_MAT4: return 4 * 4; case SLANG_SPEC_MAT23: + return 2 * 4; /* special case */ case SLANG_SPEC_MAT32: - return 2 * 3; + return 3 * 4; /* special case: 3 registers (columns), not two */ case SLANG_SPEC_MAT24: - case SLANG_SPEC_MAT42: return 2 * 4; + case SLANG_SPEC_MAT42: + return 4 * 4; /* special case: 4 registers (columns), not two */ case SLANG_SPEC_MAT34: - case SLANG_SPEC_MAT43: return 3 * 4; + case SLANG_SPEC_MAT43: + return 4 * 4; /* special case: 4 registers (columns), not two */ case SLANG_SPEC_SAMPLER1D: case SLANG_SPEC_SAMPLER2D: case SLANG_SPEC_SAMPLER3D: |