summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader/arbprogparse.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Prefix main includes with dir to avoid conflicts.José Fonseca2008-07-241-3/+3
| | | | | Some of the headers in src/mesa/main have pretty common names which easily conflict with third-party code, e.g. config.h
* mesa: fix state.clip[n].plane parsing bug (bug 16611)Brian Paul2008-07-091-3/+6
| | | | cherry-picked from master
* glsl: implement variable array indexesZack Rusin2008-06-121-1/+1
|
* consolidate some parsing functions that were pretty much identical for ↵Brian2008-03-271-152/+71
| | | | | | vertex/fragment programs cherry-picked from master
* mesa: misc sync-up with masterBrian2008-03-271-3/+3
|
* raise GL_INVALID_OPERATION if glProgramString compilation failsBrian2008-03-271-1/+1
| | | | cherry-picked from master
* make sure state token values are fully initializedBrian2008-03-271-1/+1
| | | | cherry-picked from master
* added program_error2() function for better error reportingBrian2008-03-271-47/+60
| | | | cherry-picked from master
* Fix state.texgen parsing error (bug 12313).Brian2008-03-271-5/+12
| | | | | | Replace *(*inst++) with *(*inst)++ in a few places. Cherry-picked from master.
* mesa: append fog instructions after parsing if a fog option is setBrian Paul2008-03-251-0/+11
| | | | Drivers don't have to worry about it then.
* mesa: when negating scalar src args, use NEGATE_XYZW, not NEGATE_XBrian Paul2008-03-251-6/+6
| | | | This makes things easier on the back-end when generating GPU code.
* only set InputsRead bit if input is really usedMarkus Amsler2008-03-171-3/+5
|
* mesa: set SamplersUsed bitmask when parsing ARB fragment programsBrian2008-03-121-1/+4
|
* mesa: set input read only on successJerome Glisse2008-02-271-2/+3
|
* s/varible/variable/Brian2008-01-181-6/+6
|
* set param type to PROGRAM_CONSTANT when parsing immediatesBrian2008-01-181-0/+2
|
* Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian2007-07-041-4/+4
| | | | of -I flags.
* Add support for GL_ARB_fragment_program_shadow.Ian Romanick2007-06-071-7/+33
|
* Updates for array texture shadow targets.Ian Romanick2007-06-051-5/+9
|
* Initial implementation of MESA_texture_arrayIan Romanick2007-05-161-2/+20
| | | | | Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
* Merge branch 'origin' into glsl-compiler-1Brian2007-03-091-0/+1
|\ | | | | | | | | | | Conflicts: src/mesa/main/context.c
| * Propogate UsesKill information.Keith Whitwell2007-03-041-0/+1
| |
* | fix fog breakageBrian2007-02-231-4/+2
| |
* | replace GLint with gl_state_indexBrian2007-02-231-7/+11
| |
* | updated debug codeBrian2007-02-221-210/+18
| |
* | Undo some STATE_POINT/FOG changes. Max length of state token array is now 5.Brian2007-02-221-4/+2
| |
* | Merge branch 'origin' into glsl-compiler-1Brian2007-02-221-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/main/state.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/programopt.c src/mesa/shader/slang/slang_execute.c src/mesa/sources src/mesa/swrast/s_arbshader.c src/mesa/swrast/s_context.c src/mesa/swrast/s_span.c src/mesa/swrast/s_zoom.c src/mesa/tnl/t_context.c src/mesa/tnl/t_save_api.c src/mesa/tnl/t_vb_arbprogram.c src/mesa/tnl/t_vp_build.c src/mesa/tnl/t_vtx_eval.c
| * optimize generated vertex programs a bitRoland Scheidegger2007-02-091-1/+1
| | | | | | | | | | | | | | | | Use new internal state to avoid per-vertex normalization of static spot direction vector. Use internal state for simpler per-vertex fog computations (MAD instead of SUB/MUL for linear fog, EX2 instead of POW for EXP/EXP2 fog). Simplify point size calc (2 MADs instead of MOV, MUL, MUL, DP3), and while there fix it up (RSQ instead of RCP). All untested...
| * Replace __extension__ with LONGSTRING.Brian2006-12-141-1/+1
| |
* | more minor changes to STATE_ indexingBrian2007-02-211-3/+9
| |
* | adjustments to STATE_ token layout/format so token[1] is always the array indexBrian2007-02-211-19/+28
| |
* | silence uninitialized var warningBrian2007-02-011-2/+2
| |
* | clean up a bunch of program parameter stuffBrian2007-01-091-3/+3
| |
* | Moved NumTexInstructions, NumTexIndirections, etc. into gl_program sinceBrian2007-01-091-6/+6
| | | | | | | | they can now apply to vertex programs.
* | move TexturesUsed[] into gl_program since vertex programs/shaders can use ↵Brian2007-01-041-1/+1
| | | | | | | | textures nowadays
* | Updated includes.Brian2006-12-141-1/+3
|/
* Add a size parameter to _mesa_add_unnamed_constant() andBrian Paul2006-11-151-1/+1
| | | | | _mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4). Always 4 for now...
* #define LONGSTRING __extension__ in imports.h and use it to silence gccBrian Paul2006-11-151-9/+6
| | | | warnings about long string literals.
* Change _mesa_init_instruction() to initialize an array of instructions.Brian Paul2006-10-291-3/+3
|
* Program instructions are initialized before parsing so no need to setBrian Paul2006-10-291-7/+1
| | | | | | Abs, NegateAbs, CondMask and CondSwizzle fields to defaults here. CondMask was getting mis-set. Removing the incorrect assignment improves fragment program speed by 15%.
* for VERTEX_ATTRIB_WEIGHT, use break, not returnBrian Paul2006-09-061-1/+2
|
* Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced inBrian Paul2006-09-051-0/+10
| | | | | vertex program, even though it's not really supported. Results will be undefined, but Warcraft doesn't actually use the attribute.
* fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/Brian Paul2006-09-051-1/+1
|
* Consolidate common case of _mesa_set_program_error() followed by _mesa_error()Brian Paul2006-09-051-248/+172
| | | | | | in new program_error() function. Add const qualifiers in many places. Reorder some debug code to prevent referencing free'd memory.
* Check that we don't try to reference more than one target of a texture unit.texmem_0_2_20060912Brian Paul2006-08-301-1/+17
| | | | | For example, referencing both "texture[0], 2D" and "texture[0], CUBE" in one program is an error.
* fix initialization of native resource usage of vertex/fragment programsRoland Scheidegger2006-08-301-0/+10
|
* use _mesa_alloc_instructions()Brian Paul2006-08-251-2/+1
|
* update MAX_INSTRUCTIONS limitBrian Paul2006-08-241-1/+4
|
* use _mesa_realloc_instructions()Brian Paul2006-08-241-6/+6
|
* Some structure renaming. Prefix vertex/fragment-related structs withBrian Paul2006-07-201-3/+3
| | | | "gl_" to match other structs.