Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add hash table helper functions for using pointers as hash keys | Ian Romanick | 2010-07-06 | 4 | -26/+41 |
| | |||||
* | Make hashtable.h be C++ friendly | Ian Romanick | 2010-07-06 | 1 | -0/+7 |
| | |||||
* | ir_to_mesa: Use the compiler-assigned locations for builtin attrs/varyings. | Eric Anholt | 2010-07-06 | 1 | -74/+9 |
| | | | | | | The previous table didn't distinguish gl_Color for the VS and FS, so we would use the FS's attribute index for the VS and read undefined. This partially fixes glsl-routing to match its behavior on master. | ||||
* | Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-07-02 | 1 | -101/+18 |
| | |||||
* | glcpp: Add #error support. | Kenneth Graunke | 2010-07-02 | 1 | -0/+8 |
| | |||||
* | glsl2: Fix for dead strings being stored in the symbol table. | Kenneth Graunke | 2010-07-02 | 1 | -2/+2 |
| | |||||
* | ir_to_mesa: Fix uninitalized value. | Kenneth Graunke | 2010-07-02 | 1 | -1/+1 |
| | |||||
* | glsl2/builtins: Use vector ops in the 130 version of "sign." | Kenneth Graunke | 2010-07-02 | 1 | -15/+3 |
| | |||||
* | glsl2/builtins: Use vector ops in "smoothstep." | Kenneth Graunke | 2010-07-02 | 1 | -86/+15 |
| | |||||
* | ir_to_mesa: Fix up implementation of ir_unop_exp. | Eric Anholt | 2010-07-02 | 1 | -1/+2 |
| | | | | | | | | OPCODE_EXP is not to ir_unop_exp what OPCODE_EX2 is to ir_unop_exp2. It's the weird VP approximation helper opcode. Just implement it with OPCODE_POW instead. Fixes glsl-fs-exp. | ||||
* | i965: Add support for the DP2 opcode, which we use for dot(vec2, vec2). | Eric Anholt | 2010-07-02 | 4 | -0/+38 |
| | | | | | | | The original glsl compiler would generate a.x * b.x + a.y * b.y, which we would do mul+mul+add for instead of this mul+mac. Fixes glsl-fs-dot-vec2. | ||||
* | ir_to_mesa: Add support for scalar * mat, vec * mat. | Eric Anholt | 2010-07-02 | 1 | -0/+36 |
| | | | | This is not tested by piglit currently. | ||||
* | ir_to_mesa: Add support for shadow comparison to texture instructions. | Eric Anholt | 2010-07-02 | 1 | -2/+15 |
| | | | | piglit lacks tests for this currently. | ||||
* | ir_to_mesa: Move projection handling out of ir_tex so txb and txl get it. | Eric Anholt | 2010-07-02 | 1 | -27/+53 |
| | | | | | | Fixes: glsl-fs-texture2dproj-bias glsl-fs-texture2dproj-bias-2 | ||||
* | glsl2: Print the linking info log in the stand-alone compiler | Ian Romanick | 2010-07-02 | 1 | -0/+3 |
| | |||||
* | ir_to_mesa: Add support for projected non-shadow/bias/lod texturing. | Eric Anholt | 2010-07-02 | 1 | -3/+18 |
| | | | | | | Fixes: glsl-fs-texture2dproj glsl-fs-texture2dproj-2 | ||||
* | ir_to_mesa: Fix sparse swizzling of src regs when a writemask is present. | Eric Anholt | 2010-07-02 | 1 | -0/+26 |
| | | | | Fixes glsl-fs-texture2d-masked. | ||||
* | ir_to_mesa: Don't forget to run the Mesa IR optimization passes. | Eric Anholt | 2010-07-02 | 1 | -0/+5 |
| | | | | | | With how we generate assignments, the trivial copy propagation in it is really important, and some drivers will really want the register allocation, too. | ||||
* | glsl2: Add a pass to break ir_binop_div to _mul and _rcp. | Eric Anholt | 2010-07-02 | 4 | -3/+81 |
| | | | | This results in constant folding of a constant divisor. | ||||
* | glsl2: Conditionally allow optional extensions to be enabled | Ian Romanick | 2010-07-01 | 4 | -0/+11 |
| | | | | | The only optional extension currently supported by the compiler is GL_EXT_texture_array. | ||||
* | glsl2: Append _TOK to some parser tokens | Ian Romanick | 2010-07-01 | 2 | -7/+7 |
| | | | | | This prevents conflicts with defines elsewhere in Mesa and allows including mtypes.h in the compiler. | ||||
* | glsl2: Conditionally define preprocessor tokens for optional extensions | Ian Romanick | 2010-07-01 | 7 | -12/+25 |
| | | | | | The only optional extension currently supported by the compiler is GL_EXT_texture_array. | ||||
* | glsl2: Define preprocessor tokens for extensions | Ian Romanick | 2010-07-01 | 1 | -1/+17 |
| | | | | | | Currently only GL_ARB_draw_buffers and GL_ARB_texture_rectangle are defined because those extensions are always enabled. This make tex_rect-03.frag pass. | ||||
* | glsl2: Support AST-to-IR translation of invariant keyword | Ian Romanick | 2010-07-01 | 1 | -14/+70 |
| | |||||
* | glsl2: Initialize ast_declarator_list::invariant in constructor | Ian Romanick | 2010-07-01 | 1 | -0/+1 |
| | |||||
* | glsl2: Don't bounds check unsize array redeclarations | Ian Romanick | 2010-07-01 | 1 | -1/+1 |
| | | | | This along with several previous commits fix test CorrectUnsizedArray.frag. | ||||
* | glsl2: Add gl_MaxTextureCoords | Ian Romanick | 2010-07-01 | 5 | -22/+24 |
| | |||||
* | glsl2: Default delcaration of gl_TexCoord is unsized | Ian Romanick | 2010-07-01 | 2 | -11/+34 |
| | |||||
* | glsl2: Change order of semaintic checks on variable declarations | Ian Romanick | 2010-07-01 | 1 | -61/+61 |
| | | | | This will make it easier to support more (valid) kinds of redeclarations. | ||||
* | ir_to_mesa: Fill in remaining ops, remove default case for expression types. | Eric Anholt | 2010-07-01 | 1 | -7/+4 |
| | | | | | We should now have support for all the expression types we need for GLSL 1.20. | ||||
* | ir_to_mesa: Add support for ir_unop_rcp. | Eric Anholt | 2010-07-01 | 1 | -0/+3 |
| | | | | This isn't used at the moment, but will be soon. | ||||
* | glsl2: Update README for what I've been thinking about with expr types work. | Eric Anholt | 2010-07-01 | 1 | -1/+38 |
| | |||||
* | glsl2: Add a pass to convert mod(a, b) to b * fract(a/b). | Eric Anholt | 2010-07-01 | 8 | -7/+120 |
| | | | | This is used by the Mesa IR backend to implement mod, fixing glsl-fs-mod. | ||||
* | glsl2: Remove dead member from dead code visitor. | Eric Anholt | 2010-07-01 | 1 | -1/+0 |
| | |||||
* | glsl2: Add ir_unop_fract as an expression type. | Eric Anholt | 2010-07-01 | 6 | -8/+33 |
| | | | | | Most backends will prefer seeing this to seeing (a - floor(a)), so represent it explicitly. | ||||
* | ir_to_mesa: Add support for discard instructions. | Eric Anholt | 2010-06-30 | 1 | -2/+3 |
| | | | | Fixes glsl-fs-discard-01. | ||||
* | glsl2: Don't break sign() down by vector components. | Eric Anholt | 2010-06-30 | 2 | -32/+6 |
| | |||||
* | ir_to_mesa: Add support for ir_unop_sign. | Eric Anholt | 2010-06-30 | 1 | -0/+3 |
| | | | | Fixes glsl-fs-sign, glsl-vs-sign. | ||||
* | i965: Add support for OPCODE_SSG. | Eric Anholt | 2010-06-30 | 5 | -0/+54 |
| | | | | | The old compiler didn't use SSG, and instead emitted SGT/SGT/SUB. We can do a little better for SSG than we do for the SGT series. | ||||
* | ir_to_mesa: Add missing no-op type conversions. | Eric Anholt | 2010-06-30 | 1 | -0/+2 |
| | | | | Fixes glsl-fs-step. | ||||
* | glsl2: Fix reversed value of step(). | Eric Anholt | 2010-06-30 | 2 | -38/+38 |
| | | | | It's 0.0 if x < edge, not 1.0. Partial fix for glsl-fs-step. | ||||
* | ir_to_mesa: Note which of our expr ops are unsupported 1.30 features. | Eric Anholt | 2010-06-30 | 1 | -0/+11 |
| | |||||
* | glsl2: Fix up the implementation of fract() for vector types. | Eric Anholt | 2010-06-30 | 2 | -30/+6 |
| | | | | There's no need to split each vector component out, just do vector ops. | ||||
* | ir_to_mesa: Initialize the (we never use it) abs field of Mesa src regs. | Eric Anholt | 2010-06-30 | 1 | -0/+1 |
| | |||||
* | ir_to_mesa: Send the negate field on to Mesa IR. | Eric Anholt | 2010-06-30 | 1 | -0/+2 |
| | | | | Fixes glsl-fs-neg. | ||||
* | ir_to_mesa: When generating a swizzle, respect the reg's current swizzle. | Eric Anholt | 2010-06-30 | 1 | -5/+5 |
| | | | | Fixes depth-tex-modes-glsl. | ||||
* | glsl2: Implement AST->HIR support for the "discard" instruction. | Kenneth Graunke | 2010-06-30 | 1 | -1/+1 |
| | |||||
* | glsl2: Define new ir_discard instruction. | Kenneth Graunke | 2010-06-30 | 11 | -0/+115 |
| | |||||
* | ir_to_mesa: Support gl_FragDepth. | Eric Anholt | 2010-06-30 | 1 | -1/+1 |
| | | | | Fixes glsl-bug-22603. | ||||
* | glsl2: Allow a fragment shader to not write a color. | Eric Anholt | 2010-06-30 | 1 | -6/+0 |
| | | | | | | I can't find any text justifying this check, and it caused a reasonable-looking shader in glsl-bug-22603 (which writes only gl_FragDepth) to fail. |