summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang
AgeCommit message (Collapse)Author
2009-01-22glsl: set shader->CompileStatus in _slang_compile()Brian Paul
2009-01-22Merge commit 'origin/master' into gallium-0.2Alan Hourihane
Conflicts: windows/VC8/mesa/osmesa/osmesa.vcproj windows/VC8/progs/demos/gears.vcproj windows/VC8/progs/progs.sln
2009-01-20glsl: silence unused var warningsBrian Paul
2009-01-16Merge commit 'origin/master' into gallium-0.2Alan Hourihane
Conflicts: src/mesa/shader/slang/slang_compile.c
2009-01-16glsl: fix broken sampler assignmentsBrian Paul
2009-01-15glsl: use _mesa_sprintf()Brian Paul
2009-01-15glsl: move declaration before codeBrian Paul
2009-01-15mesa: Fix merge conflictsJakob Bornecrantz
2009-01-14glsl: fix commentBrian Paul
2009-01-14glsl: minor clean-up for rect sampler testBrian Paul
2009-01-14Merge commit 'origin/master' into gallium-0.2Alan Hourihane
Conflicts: docs/install.html docs/relnotes-7.3.html src/mesa/shader/slang/slang_codegen.c src/mesa/shader/slang/slang_compile.c src/mesa/shader/slang/slang_emit.c src/mesa/shader/slang/slang_preprocess.c src/mesa/shader/slang/slang_preprocess.h
2009-01-14glsl: propagate pragma info down into compiler from preprocessorBrian Paul
2009-01-14glsl: simplify IR storage for samplersBrian Paul
Don't overload the Size field with the texture target, to avoid confusion.
2009-01-14glsl: fix regression from sampler arrays commitAlan Hourihane
2009-01-14glsl: fix regression from sampler arrays commitAlan Hourihane
2009-01-14glsl: fix a comment typoAlan Hourihane
2009-01-14glsl: support sampler arrays.Alan Hourihane
2009-01-13glsl: fix a comment typoAlan Hourihane
2009-01-13glsl: support sampler arrays.Alan Hourihane
2009-01-13glsl: add preprocessor support for #pragmaBrian Paul
Two forms are supported: Pragmas are silently ignored at this time.
2009-01-12glsl: better fix for for-loop scope issue (commit ↵Brian Paul
6333005f7aea3e5d1d86a5c47b3fa2a1ed2f3ff0)
2009-01-10glsl: force creation of new scope for for-loop bodyBrian Paul
Fixes regression in progs/demos/convolution.c due to loop unrolling. This also allows the following to be compiled correctly: for (int i = 0; i < n; i++) { int i; ... } This fix is a bit of a hack, however. The better fix would be to change the slang_shader.syn grammar. Will revisit that...
2009-01-10glsl: replace 0/1 with GL_FALSE/GL_TRUEBrian Paul
2009-01-09glsl: make minimum struct size = 2, not 1Brian Paul
1-component structs such as "struct foo { float x; }" could get placed at any position within a register. This caused some trouble computing the field offset which assumed all struct objects were placed at R.x. It would be unusual to hit this case in normal shaders.
2009-01-09glsl: fix typo in the vec2 += operator functionBrian Paul
2009-01-09glsl: fix broken +=, -=, *=, /= operatorsBrian Paul
These functions need to return the final computed value. Now expressions such as a = (b += c) work properly. Also, no need to use __asm intrinsics in these functions. The resulting code is the same when using ordinary arithmetic operators and is more legible.
2009-01-09glsl: pass GLcontext::Extension info down into GLSL preprocessorBrian Paul
Now the #extension directives can be handled properly.
2009-01-09glsl: bump up MAX_FOR_LOOP_UNROLL_COMPLEXITYBrian Paul
2009-01-09glsl: check that the fragment shader does not write both gl_FragColor and ↵Brian Paul
gl_FragData[]
2009-01-09glsl: disable some unused functions (but don't remove just yet)Brian Paul
2009-01-09glsl: also unroll loops with variable declarations such as "for (int i = 0; ..."Brian Paul
2009-01-09glsl: remove dead codeBrian Paul
2009-01-09glsl: loop unroll adjustmentsBrian Paul
Add a "max complexity" heuristic to allow unrolling long loops with small bodies and short loops with large bodies. The loop unroll limits may need further tweaking...
2009-01-09glsl: implement loop unrolling for simple 'for' loopsBrian Paul
Loops such as this will be unrolled: for (i = 0; i < 4; ++i) { body; } where 'body' isn't too large. This also helps to fix the issue reported in bug #19190. The problem there is indexing vector types with a variable index. For example: vec4 v; v[2] = 1.0; // equivalent to v.z = 1.0 v[i] = 2.0; // variable index into vector!! Since the for-i loop can be unrolled, we can avoid the problems associated with variable indexing into a vector (at least in this case).
2009-01-09mesa: Move var declaration to top of scope.Brian Paul
(cherry picked from commit 3740a06e28f4cd09e2a3dce2da60320aa9304df1)
2009-01-08glsl: fix typo in the vec2 += operator functionBrian Paul
2009-01-08glsl: fix broken +=, -=, *=, /= operatorsBrian Paul
These functions need to return the final computed value. Now expressions such as a = (b += c) work properly. Also, no need to use __asm intrinsics in these functions. The resulting code is the same when using ordinary arithmetic operators and is more legible.
2009-01-08mesa: Add _mesa_snprintf.José Fonseca
On Windows snprintf is renamed as _snprintf.
2009-01-08mesa: Move var declaration to top of scope.José Fonseca
2009-01-07glsl: pass GLcontext::Extension info down into GLSL preprocessorBrian Paul
Now the #extension directives can be handled properly.
2009-01-07glsl: bump up MAX_FOR_LOOP_UNROLL_COMPLEXITYBrian Paul
2009-01-07glsl: check that the fragment shader does not write both gl_FragColor and ↵Brian Paul
gl_FragData[]
2009-01-07mesa: Add _mesa_snprintf.José Fonseca
On Windows snprintf is renamed as _snprintf. (cherry picked from commit f8f9a1b620d31d1a59855fd502caed325d4a324f)
2009-01-07glsl: disable some unused functions (but don't remove just yet)Brian Paul
2009-01-07glsl: also unroll loops with variable declarations such as "for (int i = 0; ..."Brian Paul
2009-01-07glsl: remove dead codeBrian Paul
2009-01-06glsl: loop unroll adjustmentsBrian Paul
Add a "max complexity" heuristic to allow unrolling long loops with small bodies and short loops with large bodies. The loop unroll limits may need further tweaking...
2009-01-06glsl: implement loop unrolling for simple 'for' loopsBrian Paul
Loops such as this will be unrolled: for (i = 0; i < 4; ++i) { body; } where 'body' isn't too large. This also helps to fix the issue reported in bug #19190. The problem there is indexing vector types with a variable index. For example: vec4 v; v[2] = 1.0; // equivalent to v.z = 1.0 v[i] = 2.0; // variable index into vector!! Since the for-i loop can be unrolled, we can avoid the problems associated with variable indexing into a vector (at least in this case).
2009-01-06mesa: Move var declaration to top of scope.Brian Paul
(cherry picked from commit 3740a06e28f4cd09e2a3dce2da60320aa9304df1)
2009-01-06Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/drivers/dri/common/dri_util.c