summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/library/slang_core_gc.h
AgeCommit message (Collapse)Author
2008-07-29mesa: regenerated filesBrian Paul
2008-07-15mesa: regenerated fileBrian Paul
2008-07-03mesa: regenerated fileBrian Paul
2008-07-02mesa: regenerated filesBrian Paul
2008-04-03rewrite some of the mat*mat, mat*vec intrinsicsBrian
Also, remove obsolete matrix codegen code.
2007-07-03added vec2(vec4) constructor, bug 11404Brian
2007-03-28Handle logical NOT and XOR without library functions. Results in much ↵Brian
tighter code.
2007-03-13get rid of float_multiply, float_add, float_divideBrian
2007-03-08added missing bvec2/3/4 constructorsBrian
2007-03-08Update lessThan(), lessThanEqual() functions, improve some matrix constructors.Brian
2007-03-08Rework matrix-related code.Brian
GLSL matrices are stored in column-major order while GL_ARB_vertex/fragment_program use row-major. So, need to use STATE_MATRIX_TRANSPOSE for built-in matrices. Unfortunately, this means that the expression M * V isn't very efficient since we need to extract the rows out of M. And that's the typical expression for vertex transformation: gl_ModelViewProjectionMatrix * gl_Position. Solve this inefficiency by looking for M*V expressions and replacing them with V*Transpose(M). Also, add support for GLSL 1.20's MatrixTranspose, Inverse and InverseTranspose matrices.
2007-03-07regeneratedBrian
2007-03-06more integer arithmetic updatesBrian
2007-03-06fix some int arithmetic problemsBrian
2007-01-28implement mix() with LRP instructionBrian
2007-01-20Reimplement && and || to do short-circuit evaluation.Brian
Improved shader error handling.
2007-01-20rewrite more __postIncr functionsBrian
2007-01-18rewrite a bunch of assignment operators (like +=)Brian
2007-01-17rewrite additional matrix-related functions to reduce register needsBrian
2007-01-17rewrite mat4 * mat4 operator to use fewer tempsBrian
2007-01-17rewrite matrix constructorsBrian
2007-01-17Rewrite a bunch of constructors. It's now important that the firstBrian
constructor for any given type be the one that takes the most parameters as this is the constructor that'll be used when there's no perfect match to the caller's arguments. See the _slang_adapt_call() function for details.
2007-01-16commentsBrian
2007-01-16implement logical or, xor, notBrian
2007-01-16some additional vector constructorsBrian
2007-01-15Reimplement the post-increment/decrement functions.Brian
Instead of defining functions with an extra dummy parameter to distinguish from the pre-incr/decr functions, just use new function names: __postIncr and __postDecr.
2007-01-15Implement the ++var and --var operators, improve some constructors.Brian
2007-01-13added another vec4 constructor, updated += operatorBrian
2007-01-11new vec3 constructor, replace float_add w/ vec4_addBrian
2006-12-21checkpoint: pre/post incr/decr operatorsBrian
2006-12-21checkpoint: rewrite vec/mat productsBrian
2006-12-21checkpoint: matrix/float, unary negation rewriteBrian
2006-12-21checkpoint: ivec/int and mat/mat operationsBrian
2006-12-21checkpoint: more basic math rewrittingBrian
2006-12-20checkpoint: re-org assignment operator functionsBrian
2006-12-20checkpoint: more basic math operator re-orgBrian
2006-12-20Checkpoing: re-organization of basic arithmetic functions.Brian
2006-12-20Uniform matrix support.Brian
Implement _mesa_uniform_matrix() Support for program parameters/uniforms with more than 4 elements. Store 4x4 matrices in column-major order in registers. Update mat mul built-in functions accordingly.
2006-12-19rewrite +=, -= etc for floatsBrian
2006-12-18commentsBrian
2006-12-15start rewriting the matrix/vector functionsBrian
2006-12-15redo mat4 addition, mat4 constructor from vec4sBrian
2006-12-13Checkpoint of work for new GLSL compiler back-end. Lots of assorted changes.Brian
2006-08-02Add vec4 extension.Michal Krol
2006-05-16Rename print() to printMESA().Michal Krol
2006-04-18Remove carriage-return chars *ONLY*.Michal Krol
2006-03-21GLSL fixes:Michal Krol
- generate error on NULL pointers in glShaderSourceARB; - reinstall program object, if current, in glLinkProgramARB; - vertex and fragment shaders are optional in program object; - floor asm was wrongly computed for x86 back-end; - allow for (void) idiom in function prototypes; - all fixed-state uniforms are updated; - local variable initializers are working; - implement texture* and shadow* functions for vertex processor; - generate error if too many arguments in general constructor; - trim unused data in general constructor; - struct r-value field select was badly relocated; Changes: - add derived state gl_fog_attrib::_Scale; - add derived state gl_light::_CosCutoffNeg;
2006-02-21More GLSL code:Michal Krol
- uniforms (only GetLocation, Uniform1f and Uniform4fv for now for demos); - fix bugs and optimize array size handling; - 2D texture sampling (needs Enable(TEXTURE_2D) to work); - decrease built-in library assembly size by 30%.
2006-02-13Delete most of the comments.Michal Krol
Minor tweaks with the functions. Add experimental print functions.
2006-01-16remove slang_*_gc.h files;Michal Krol
rename slang_*_gc_bin.h files to slang_*_gc.h ones; store built-in library code in a precompiled form only;