summaryrefslogtreecommitdiff
path: root/src/mesa/shader/prog_execute.c
AgeCommit message (Collapse)Author
2009-06-03mesa: added NaN checking code (disabled)Brian Paul
2009-06-03mesa: check/prevent NaN for EX2/LG2Brian Paul
2009-04-14mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul
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.
2009-04-03mesa: for OPCODE_LIT, use _mesa_pow() instead of exp() and log()Brian Paul
Also, s/pow/_mesa_pow/
2009-04-01mesa: use correct tex unit lod bias for TXB instructionBrian Paul
2009-03-07mesa: remove GL_MESA_program_debug extensionBrian Paul
This was never fully fleshed out and hasn't been used.
2008-12-19GLSL: The LOG2 macro doesn't have enough precisionIan Romanick
It looks like the LOG2 macro only has 8 or 9 bits of precission, but the ARB_vertex_program spec says "accurate to at least 10 bits".
2008-12-15mesa: rename slang_library_noise.[ch] to prog_noise.[ch] and rename functionsBrian Paul
The noise functions were not glsl-specific. Also, ran indent on the code to clean it up.
2008-12-12mesa: use IFLOOR(x) instead of (int) FLOORF(x)Brian Paul
2008-11-11mesa: allow relative indexing into all register files and indirect dst ↵Brian Paul
register indexing
2008-11-07mesa: forgot sqrt in NRM3/4 instructionsBrian Paul
2008-11-07mesa: added DP2, DP2A instructionsBrian Paul
2008-11-07mesa: added AND/OR/NOT/XOR instructionsBrian Paul
2008-11-07mesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.Brian Paul
We may emit these instructions from GLSL instead of DP3/RCP/MUL. Also, implement SSG (set sign) instruction in the interpreter.
2008-11-06mesa: rename OPCODE_INT -> OPCODE_TRUNCBrian Paul
Trunc is a more accurate description; there's no type conversion involved.
2008-09-23mesa: Apply MSVC portability fixes from Alan Hourihane.José Fonseca
2008-09-18mesa: prefix a bunch of #include lines with "main/".Brian Paul
This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
2008-07-29mesa: Silence compiler warnings on Windows.Brian Paul
2008-06-12glsl: allow uniformsZack Rusin
2008-05-16whitespace/formattingBrian Paul
2008-05-14Updated GLSL uniform/sampler handling from gallium-0.1 branchBrian Paul
Previously, the shader linker combined the uniforms used by the vertex and fragment shaders into a combined set of uniforms. This made the implementation of glUniform*() simple, but was rather inefficient otherwise. Now each shader gets its own set of uniforms (no more modelview matrix showing up in the fragment shader uniforms, for example). cherry-picked by hand from gallium-0.1 branch
2008-04-22Fix error stringAlan Hourihane
2008-04-11fix failed assertion (parameter can be a PROGRAM_CONSTANT)Brian Paul
2007-11-23Consolidate texture fetch code and use partial derivatives when possible.Brian
2007-07-04Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian
of -I flags.
2007-05-02Resuscitate some of the DDX,DDY code.Brian
Only works for program input registers at this time. Good enough for the common case of texcoords, though.
2007-04-21another bit of debug codeBrian
2007-03-28Get rid of BRK0, BRK1, CONT0, CONT1 instructions.Brian
2007-03-28print condcodes if DEBUG_PROGBrian
2007-03-27fix another pc off-by oneBrian
2007-03-27fix off by one error in OPCODE_RETBrian
2007-03-23Add the ability to generate programs that doesn't use condition codes.Brian
ctx->Shader.EmitCondCodes determines if we use condition codes. If not, IF statement uses first operand's X component as the condition. Added OPCODE_BRK0, OPCODE_BRK1, OPCODE_CONT0, OPCODE_CONT1 to handle the common cases of conditional break/continue.
2007-03-07more DEBUG_PROGBrian
2007-03-06more DEBUG_PROG codeBrian
2007-02-25update commentsBrian
2007-02-25fix bounds checking in get_register_pointer()Brian
2007-02-25Add EnvParams field to gl_program_machine, avoid passing ctx to a bunch of ↵Brian
functions.
2007-02-25simplify _mesa_get_program_register()Brian
2007-02-25minor clean-ups in _mesa_execute_program()Brian
2007-02-25remove 'maxInst' parameter from _mesa_execute_program()Brian
2007-02-25remove unused 'element' parameter from _mesa_execute_program()Brian
2007-02-24Outputs[] array wasn't large enough, define MAX_PROGRAM_OUTPUTS, new assertions.Brian
2007-02-24remove commentBrian
2007-02-24Fix assertion in get_register_pointer(), fix EXP case.Brian
Note that GL_ARB_v_p and GL_NV_v_p define the z component of the EXP instruction differently. We follow the ARB extension.
2007-02-23added ARL, EXP, LOG, relative indexingBrian
2007-02-23reindentBrian
2007-02-23don't pass program ptr to fetch_vector[14]()Brian
2007-02-22New, unified interpretor/executor for vertex and fragment programs.Brian
This replaces the code formerly in nvvertexec.c and s_fragprog.c. Currently, DDX, DDY don't work.