summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader
Commit message (Collapse)AuthorAgeFilesLines
* glsl: call _mesa_postprocess_program(), disabledBrian Paul2009-06-171-0/+8
|
* mesa: silence warningBrian Paul2009-06-171-0/+2
|
* mesa: added _mesa_postprocess_program() to aid shader debuggingBrian Paul2009-06-172-0/+60
|
* glsl: fix warnings, update comments, s/TRUE/GL_TRUE/Brian Paul2009-06-101-3/+4
|
* glsl: Handle continuation characters in preprocessor.Michal Krol2009-06-101-2/+63
|
* Merge branch 'mesa_7_5_branch'Jakob Bornecrantz2009-06-091-1/+4
|\ | | | | | | | | | | | | | | | | Conflicts: Makefile src/mesa/main/version.h src/mesa/shader/slang/slang_preprocess.c src/mesa/state_tracker/st_cb_bufferobjects.c
| * glsl: Expand nested preprocessor macros.Brian Paul2009-06-091-1/+14
| | | | | | | | (cherry picked from master, commit ef8caec29ae73bb2bbeb48f0578d839ef29348cd)
| * glsl: Fix preprocessor define argument parsing for dead sections.Brian Paul2009-06-081-4/+4
| | | | | | | | (cherry picked from master, commit 19a54d9f1055c366fd77026dd67007a8d5921f58)
| * mesa: better error message for invalid texture unit indexBrian Paul2009-06-081-1/+4
| |
| * mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-081-2/+117
| | | | | | | | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* | glsl: Fix symbol replacement handling in preprocessor.Michal Krol2009-06-101-13/+15
| |
* | glsl: Expand nested preprocessor macros.Michal Krol2009-06-091-1/+14
| |
* | glsl: Fix preprocessor define argument parsing for dead sections.Michal Krol2009-06-081-4/+4
| |
* | glsl: preprocessor debug code (disabled)Brian Paul2009-06-081-0/+5
| |
* | mesa: added NaN checking code (disabled)Brian Paul2009-06-031-0/+14
| |
* | mesa: check/prevent NaN for EX2/LG2Brian Paul2009-06-031-6/+15
| |
* | mesa: added some assertionsBrian Paul2009-05-221-0/+8
| |
* | mesa: remove MAX_VERTEX_PROGRAM_ATTRIBSBrian Paul2009-05-222-8/+8
| | | | | | | | | | Use MAX_VERTEX_GENERIC_ATTRIBS instead. No need for two #defines for the same quantity.
* | mesa: rename MAX_VERTEX_ATTRIBS to MAX_VERTEX_GENERIC_ATTRIBSBrian Paul2009-05-221-4/+4
| | | | | | | | | | Be clearer that this is the number of generic vertex program/shader attributes, not counting the legacy attributes (pos, normal, color, etc).
* | mesa: minor code simplification in _mesa_GetVertexAttrib*NV()Brian Paul2009-05-211-10/+19
| |
* | mesa: comment for _mesa_GetVertexAttribfvARB()Brian Paul2009-05-211-0/+4
| |
* | mesa: minor code simplification in _mesa_GetVertexAttribfvARB()Brian Paul2009-05-211-6/+9
| |
* | mesa: better handling/printing of driver-specific opcodes, register filesBrian Paul2009-05-112-4/+14
| | | | | | | | | | Drivers such as i965 define extra instruction opcodes and register files. Improve the program printing code to handle those opcodes/files better.
* | glsl: check number of varying variables against the limitBrian Paul2009-05-081-4/+9
| | | | | | | | Link fails if too many varying vars.
* | glsl: set vertex/fragment program Ids to aid with debuggingBrian Paul2009-05-081-0/+4
| |
* | mesa: more shader debug code (disabled)Brian Paul2009-05-081-0/+4
| |
* | mesa: be smarter about allocating vert/frag program constantsBrian Paul2009-05-061-25/+76
| | | | | | | | | | | | | | Try to re-use constants/literals more often to make best use of the constant buffer space. See bug 21354.
* | mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-051-2/+117
| | | | | | | | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* | mesa: also print program params/constants when dumping shaders to diskBrian Paul2009-05-041-0/+4
| |
* | mesa: remove some unfinished/devel codeBrian Paul2009-05-041-92/+0
| |
* | Merge branch 'const-buffer-changes'Brian Paul2009-05-015-32/+155
|\ \ | |/ |/| | | | | | | | | | | Conflicts: src/mesa/drivers/dri/i965/brw_curbe.c src/mesa/drivers/dri/i965/brw_vs_emit.c src/mesa/drivers/dri/i965/brw_wm_glsl.c
| * mesa: added _mesa_check_soa_dependencies() functionBrian Paul2009-04-292-0/+53
| | | | | | | | | | This function will check an instruction to see if there's data dependencies between the dst and src registers if executed in an SOA manner.
| * mesa: refactor code and make _mesa_find_temp_intervals() publicBrian Paul2009-04-242-22/+144
| |
| * mesa: signal _NEW_PROGRAM_CONSTANTS instead of _NEW_PROGRAMBrian Paul2009-04-243-10/+11
| | | | | | | | | | Use _NEW_PROGRAM_CONSTANTS when changing constant/uniform buffer values. Binding a new program/shader sets both _NEW_PROGRAM and _NEW_PROGRAM_CONSTANTS.
* | mesa: added _mesa_check_soa_dependencies() functionBrian Paul2009-04-292-0/+53
| | | | | | | | | | This function will check an instruction to see if there's data dependencies between the dst and src registers if executed in an SOA manner.
* | Avoid a segfault in shader compilationRobert Ellison2009-04-271-0/+6
| | | | | | | | | | | | | | | | | | | | If a shader reaches an out-of-memory condition while adding a new function (reallocating the function list), a segfault will occur during cleanup (because the num_functions field is non-zero, but the functions pointer is NULL). This fixes that segfault by zeroing out the num_functions field if reallocation fails.
* | mesa: Fix buffer overflow when parsing generic vertex attributes.Brian Paul2009-04-221-3/+9
|/
* mesa: new _NEW_PROGRAM_CONSTANTS flagBrian Paul2009-04-213-9/+7
| | | | | | | | | | | | | | | This state flag will be used to indicate that vertex/fragment program constants have changed. _NEW_PROGRAM will be used to indicate changes to the vertex/fragment shader itself, or misc related state. _NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's tracking GL state has changed. For example, if the projection matrix is in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS to be set. This will let to remove the need for dynamic state atoms in some drivers. For now, we still set _NEW_PROGRAM in all the places we used to. We'll no longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated.
* mesa: print internal.current[i] attribBrian Paul2009-04-211-2/+7
|
* mesa: print parameter list dirty state flag maskBrian Paul2009-04-211-0/+1
|
* mesa: add switch case for GL_VERTEX_STATE_PROGRAM_NV in _mesa_new_program()Brian Paul2009-04-181-0/+1
| | | | Fixes bug seen in progs/tests/vptest1.c
* mesa: build a float[4] value in _mesa_add_sampler() to avoid random valuesBrian Paul2009-04-171-3/+4
|
* mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul2009-04-148-82/+52
| | | | | | There's really no need for two negation fields. This came from the GL_NV_fragment_program extension. The new, unified Negate bitfield applies after the absolute value step.
* mesa: remove unused matrixType param from ctx->Driver.UniformMatrix() functionsBrian Paul2009-04-141-1/+1
|
* mesa: move #define for GL_PROGRAM_BINARY_LENGTH_OESBrian Paul2009-04-141-5/+0
|
* mesa: remove NV vertex/fragment program print/debug codeBrian Paul2009-04-144-407/+4
| | | | The code in prog_print.c can be used instead.
* mesa: minor datatype changes in optimization codeBrian Paul2009-04-081-6/+7
|
* glsl: enable the new linear scan register allocator codeBrian Paul2009-04-071-3/+3
| | | | | Seems to b working well enough to enable all the time. Optimizations can be disabled with "export MESA_GLSL=nopt" if needed.
* glsl: don't optimize program if MESA_GLSL=noptBrian Paul2009-04-071-1/+2
|
* mesa: in mesa_add_named_constant(), avoid adding duplicate constantsBrian Paul2009-04-031-7/+12
|