summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2009-10-28Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/shader/lex.yy.c src/mesa/shader/program_lexer.l
2009-10-28mesa: remove unneeded #includesBrian Paul
2009-10-28mesa: include imports.h to silence warningBrian Paul
2009-10-27glsl: avoid redundant state changes in _mesa_use_program()Brian Paul
2009-10-27ARB prog parser: Fix epic memory leak in lexer / parser interfaceIan Romanick
Anything that matched IDENTIFIER was strdup'ed and returned to the parser. However, almost every case of IDENTIFIER in the parser just dropped the returned string on the floor. Every swizzle string, every option string, every use of a variable, etc. leaked memory. Create a temporary buffer in the parser state (string_dumpster and dumpster_size). Return strings from the lexer to the parser in the buffer. Grow the buffer as needed. When the parser needs to keep a string (i.e., delcaring a new variable), let it make a copy then. The only leak that valgrind now detects is /occasionally/ the copy of the program string in gl_program::String is leaked. I'm not seeing how. :(
2009-10-27ARB prog parser: Don't leak program stringIan Romanick
The program string is kept in the program object. On the second call into glProgramStringARB the previous kept string would be leaked.
2009-10-27ARB prog parser: Don't leak symbol table header structuresIan Romanick
2009-10-27glsl: fix memory leakBrian Paul
A slightly modified version of a patch from Vinson Lee.
2009-10-27glsl: fix memory leakBrian Paul
A slightly modified version of a patch from Vinson Lee.
2009-10-23mesa: refactor, new print_shader_info()Brian Paul
2009-10-23Merge remote branch 'origin/mesa_7_6_branch'Eric Anholt
Conflicts: src/mesa/drivers/dri/intel/intel_fbo.c src/mesa/drivers/dri/intel/intel_mipmap_tree.c src/mesa/drivers/dri/intel/intel_mipmap_tree.h src/mesa/drivers/dri/intel/intel_tex_copy.c src/mesa/drivers/dri/intel/intel_tex_image.c
2009-10-22ARB prog parser: Fix parameter array size comparisonIan Romanick
Array indexes are invalid when >= the maximum, but array sizes are only in valid when > the maximum. This prevented programs from declaring a single maximum size array. See the piglit vp-max-array test.
2009-10-19Merge branch 'mesa_7_6_branch' of ↵Alex Deucher
git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa regenerated lex.yy.c
2009-10-16mesa: added MESA_GLSL=useprog debug flagBrian Paul
This logs glUseProgram() calls to stderr.
2009-10-15mesa: regenerated lex.yy.c w/ _mesa_strtod()Brian Paul
2009-10-15mesa: Use _mesa_strtod in the lexer for assembly shadersNeil Roberts
See bug 24531.
2009-10-13mesa: minor tweak to printf stringBrian Paul
2009-10-13mesa: don't print pointer in _mesa_fprint_parameter_list()Brian Paul
2009-10-12mesa: print program Id when printingBrian Paul
2009-10-07Merge branch 'mesa_7_6_branch'Nicolai Hähnle
2009-10-07shader_api: Fix bounds checking of glUniform and glUniformMatrixNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2009-10-07prog_parameter: Document the fact that Size may be > 4Nicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-05Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/gallium/auxiliary/util/u_cpu_detect.c
2009-10-03prog_parameter: Document the fact that Size may be > 4Nicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-01mesa: fix mem leaksBrian Paul
2009-10-01glsl: fix mem leakBrian Paul
2009-10-01Merge branch 'mesa_7_6_branch'Brian Paul
2009-10-01mesa: Return -FLT_MAX instead of 0 for LG2(0).Vinson Lee
lim x->0 log(x) = -inf so -FLT_MAX is a better approximation than 0 for LG2(0).
2009-09-29glsl: regenerated fileBrian Paul
2009-09-29glsl: rewrite sqrt(x) intrinsic to handle x=0Brian Paul
Since sqrt() is basically implemented in terms of RSQ/RCP we'll do a divide by zero if x=0 and wind up with unpredictable results. Now use CMP instruction to test for x<=0 and return zero in that case.
2009-09-29glsl: add support for CMP instructionBrian Paul
2009-09-29mesa: added nopfrag/nopvert options for MESA_GLSLBrian Paul
These options can be used to force vertex/fragment shaders to be no-op shaders (actually, simple pass-through shaders). For debug/test purposes.
2009-09-29mesa: added _mesa_nop_vertex/fragment_program()Brian Paul
For debug/test purposes.
2009-09-25Merge branch 'asm-shader-rework-2'Ian Romanick
Conflicts: src/mesa/shader/program_parse.tab.c
2009-09-25Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/drivers/dri/intel/intel_clear.c
2009-09-25mesa: move declaration before codeVinson Lee
2009-09-24mesa: remove: unused gl_vertex_program::TnlData fieldBrian Paul
2009-09-24NV fp lexer: Add UP4B and UP4UB instructions that were previously missingIan Romanick
2009-09-24Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/vbo/vbo_exec_array.c
2009-09-24i965: Emit zero initialization for NV VP temporaries as required.Eric Anholt
This is similar to what r300 does inside the driver, but I've added it as a generic option since it seems most hardware will want it. Fixes piglit nv-init-zero-reg.vpfp and nv-init-zero-addr.vpfp.
2009-09-24mesa: Initialize NV_vertex_program fields for the parameter lists and such.Eric Anholt
This helps let drivers treat NV_vp like ARB_vp.
2009-09-24mesa: added commentBrian Paul
2009-09-24Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/mesa/drivers/dri/r600/r700_assembler.c src/mesa/drivers/dri/r600/r700_chip.c src/mesa/drivers/dri/r600/r700_render.c src/mesa/drivers/dri/r600/r700_vertprog.c src/mesa/drivers/dri/r600/r700_vertprog.h src/mesa/drivers/dri/radeon/radeon_span.c
2009-09-24Merge branch 'mesa_7_5_branch' into mesa_7_6_branchBrian Paul
2009-09-24glsl: init var to silence warningBrian Paul
2009-09-24glsl: fix missing initializers warningBrian Paul
2009-09-23mesa: don't bias LOD in shader interpreter; do it in swrastBrian Paul
2009-09-21Merge branch 'mesa_7_6_branch'Nicolai Hähnle
2009-09-21r300: Fix handling of NV_vertex_program parametersNicolai Hähnle
The handling is a bit inefficient, unfortunately, but I don't want to make any intrusive changes for Mesa 7.6. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-09-15Merge branch 'mesa_7_6_branch'Brian Paul