summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2009-12-12Remove grammar module -- no dependencies left.Michal Krol
2009-12-12slang: Delete a file that is now autogenerated.Michal Krol
This file has been modified in master and removed in feature branch. This gave a merge conflict I couldn't resolve by removing and git adding it to index.
2009-12-12Merge branch 'master' into glsl-pp-rework-2Michal Krol
Conflicts: progs/perf/drawoverhead.c progs/perf/teximage.c progs/perf/vbo.c progs/perf/vertexrate.c src/mesa/shader/slang/library/slang_common_builtin_gc.h
2009-12-11Merge branch 'mesa_7_7_branch'Brian Paul
Conflicts: src/gallium/state_trackers/xorg/xorg_xv.c src/mesa/drivers/dri/intel/intel_span.c
2009-12-11Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul
2009-12-11mesa: remove unnecessary loop in _mesa_remove_output_reads()Brian Paul
2009-12-11Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul
2009-12-11mesa: check dst reg in _mesa_find_free_register()Brian Paul
If a register was only being used as a destination (as will happen when generated condition-codes) we missed its use. So we'd errantly return a register index that was really in-use, not free. Fixes bug 25579.
2009-12-10mesa: Initialize variable in MatchInstruction.Vinson Lee
2009-12-10mesa: Assign _mesa_lookup_parameter_index return value to GLint.Vinson Lee
2009-12-10glsl: Increase size of array in_slang_lookup_constant from 4 to 16.Vinson Lee
For some cases, _mesa_GetIntegerv reads up to params[15].
2009-12-10glsl: Fix array out-of-bounds access by _slang_lookup_constant.Vinson Lee
2009-12-10scons: Get GLSL code building correctly when cross compiling.José Fonseca
This is quite messy. GLSL code has to be built twice: one for the host OS, another for the target OS.
2009-12-10slang: Predefine ES symbols for FEATURE_es2_glsl.Michal Krol
2009-12-10slang: Explicitly enable ARB_draw_buffers and ARB_texture_rectangle.Michal Krol
They are no longer built into the glsl preprocessor.
2009-12-10Build mesa glsl with make.michal
Still don't know how to add glsl to mesa dependencies.
2009-12-09glsl: Remove unused member x from struct slang_operation.Vinson Lee
2009-12-07mesa: fix shader prog_execute strict aliasing violationsRoland Scheidegger
use unions instead of pointer casts.
2009-11-25slang/library: Don't need the *_gc.h files, they are autogenerated now.Michal Krol
2009-11-25scons: Autogenerate GLSL builtin library *_gc.h from *.gc files.Michal Krol
2009-11-24slang: Fix allocation size.Michal Krol
We don't need 16K+ to store a single pointer.
2009-11-23Merge commit 'origin/mesa_7_7_branch'Maciej Cencora
2009-11-23slang: Fix order of parameters to sl_pp_tokenise().Michal Krol
2009-11-23slang: Check return value from emit_instruction().Michal Krol
2009-11-23slang: Be more robust with memory in concat_shaders().Michal Krol
2009-11-21slang: No need to purify source text for tokeniser.Michal Krol
2009-11-19mesa: Remove gratuitous padding in prog_dst_register.Eric Anholt
The padding was there to indicate the amount of space left from the number of expected bytes in the struct minus allocated bits. But uint bitfields get packed so that they don't cross uint boundaries, and we ended up allocating an extra dword to hold the pad field!
2009-11-20mesa: Fix NULL deref in optimizer when NumInstructions == 0.Eric Anholt
Bug #24984.
2009-11-17Merge branch 'outputswritten64'Ian Romanick
Add a GLbitfield64 type and several macros to operate on 64-bit fields. The OutputsWritten field of gl_program is changed to use that type. This results in a fair amount of fallout in drivers that use programs. No changes are strictly necessary at this point as all bits used are below the 32-bit boundary. Fairly soon several bits will be added for clip distances written by a vertex shader. This will cause several bits used for varyings to be pushed above the 32-bit boundary. This will affect any drivers that support GLSL. At this point, only the i965 driver has been modified to support this eventuality. I did this as a "squash" merge. There were several places through the outputswritten64 branch where things were broken. I foresee this causing difficulties later for bisecting. The history is still available in the branch. Conflicts: src/mesa/drivers/dri/i965/brw_wm.h
2009-11-17mesa: fix assorted compiler warningsBrian Paul
2009-11-13mesa: Improve the eliminate-move-use to work across multiple instructions.Eric Anholt
This shaves more instructions off of the VS of my GL demo, but no performance difference this time at n=6. This also fixes a regression that was in this path, which is now piglit's glsl-vs-mov-after-deref.
2009-11-13slang: Report syntax parser errors.Michal Krol
2009-11-13slang: Regenerate .gc files.Michal Krol
2009-11-13slang: Get rid of the old syntax file and utilities.Michal Krol
2009-11-13slang: Plug in the new syntax parser.Michal Krol
2009-11-10Merge remote branch 'origin/mesa_7_6_branch'Eric Anholt
2009-11-10slang: Fix return value check.Michal Krol
2009-11-10slang: Check OOM conditions for alloc_node_storage().Michal Krol
2009-11-10slang: Check return value from new_instruction().Michal Krol
2009-11-10slang: Fix signed/unsigned int handling in _slang_free_temp().Michal Krol
2009-11-10slang: Handle OOM condition in new_instruction().Michal Krol
2009-11-10slang: Update for glsl/pp interface changes.Michal Krol
2009-11-07prog parse: Handle GL_VERTEX_PROGRAM_ARB in glLoadProgramNVIan Romanick
2009-11-07prog parse: Handle GL_VERTEX_PROGRAM_NV in glProgramStringARBIan Romanick
Handle both NV vertex programs and NV vertex state programs passed to glProgramStringARB.
2009-11-07prog parse: Handle GL_FRAGMENT_PROGRAM_ARB in glLoadProgramNVIan Romanick
2009-11-07prog parse: Handle GL_FRAGMENT_PROGRAM_NV in glProgramStringARBIan Romanick
2009-11-07mesa: move code after declbrian
Fixes bug 24967.
2009-11-06mesa: Reduce the source channels considered in optimization passes.Eric Anholt
Depending on the writemask or the opcode, we can often trim the source channels considered used for dead code elimination. This saves actual instructions on 965 in the non-GLSL path for glean glsl1, and cleans up the writemasks of programs even further.
2009-11-06mesa: Fix remove_instructions to successfully remove when removeFlags[0].Eric Anholt
This fixes the dead code elimination to work on the particular code mentioned in the previous commit.
2009-11-06mesa: Add an optimization path to remove use of pointless MOVs.Eric Anholt
GLSL code such as: vec4 result = {0, 1, 0, 0}; gl_FragColor = result; emits code like: 0: MOV TEMP[0], CONST[0]; 1: MOV OUTPUT[1], TEMP[0]; and this replaces it with: 0: MOV TEMP[0], CONST[0]; 1: MOV OUTPUT[1], CONST[0]; Even when the dead code eliminator fails to clean up a now-useless MOV instruction (since it doesn't do live/dead ranges), this should at reduce dependencies.