mesa: Branch 'master' - 2 commits
Brian Paul
brianp at kemper.freedesktop.org
Wed Apr 11 03:58:25 UTC 2007
src/mesa/shader/slang/slang_codegen.c | 9 ++++++---
src/mesa/shader/slang/slang_compile.c | 12 ++++++++++--
2 files changed, 16 insertions(+), 5 deletions(-)
New commits:
diff-tree ba876be0c0711f089c0cde9739f349b137430770 (from 319ce38fa4984d4cfe8575126bb0d7aa10ef27a1)
Author: Brian <brian at yutani.localnet.net>
Date: Tue Apr 10 21:51:27 2007 -0600
fix/work-around allocation bugs for non-square matrices
diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c
index ee82a10..fe6b615 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
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:
diff-tree 319ce38fa4984d4cfe8575126bb0d7aa10ef27a1 (from 64700be4e11ff735f0530812f6f319628e4b33c5)
Author: Brian <brian at yutani.localnet.net>
Date: Tue Apr 10 21:50:53 2007 -0600
update SLANG version test
diff --git a/src/mesa/shader/slang/slang_compile.c b/src/mesa/shader/slang/slang_compile.c
index 3539d71..d3f6986 100644
--- a/src/mesa/shader/slang/slang_compile.c
+++ b/src/mesa/shader/slang/slang_compile.c
@@ -1904,14 +1904,22 @@ compile_with_grammar(grammar id, const c
byte *prod;
GLuint size, start, version;
slang_string preprocessed;
+ int maxVersion;
+
+#if FEATURE_ARB_shading_language_120
+ maxVersion = 120;
+#else
+ maxVersion = 110;
+#endif
/* First retrieve the version number. */
if (!_slang_preprocess_version(source, &version, &start, infolog))
return GL_FALSE;
- if (version > 110) {
+ if (version > maxVersion) {
slang_info_log_error(infolog,
- "language version specified is not supported.");
+ "language version %.2f is not supported.",
+ version * 0.01);
return GL_FALSE;
}
More information about the mesa-commit
mailing list