Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | glsl/builtins: Switch comparison functions to just return an expression. | Kenneth Graunke | 2010-09-18 | 1 | -180/+36 |
| | |||||
* | glsl/builtins: Fix equal and notEqual builtins. | Kenneth Graunke | 2010-09-18 | 1 | -24/+24 |
| | | | | | Commit 309cd4115b7cba669a0bf858e7809cb6dae90ddf incorrectly converted these to all_equal and any_nequal, which is the wrong operation. | ||||
* | glsl2: Port equal() and notEqual() to ir_unop_all_equal and ir_unop_any_nequal | Ian Romanick | 2010-09-13 | 1 | -120/+24 |
| | |||||
* | glsl2: Implement noise[1234] built-in functions using ir_unop_noise | Ian Romanick | 2010-09-09 | 1 | -52/+229 |
| | |||||
* | glsl/builtins: normalize of a negative scalar should be -1.0. | Kenneth Graunke | 2010-09-09 | 1 | -1/+1 |
| | |||||
* | glsl/builtins: Set the API in the fake context. | Kenneth Graunke | 2010-09-08 | 1 | -0/+1 |
| | | | | Otherwise it gets used uninitialized. | ||||
* | glsl2: Clear out profile pointers in _mesa_glsl_release_functions | Ian Romanick | 2010-09-08 | 1 | -0/+1 |
| | | | | | | Otherwise builtin_profiles contains dangling pointers the next time _mesa_read_profile is called. I suspect this may fix bugzilla #29847, but I was never able to reproduce it. | ||||
* | glsl: Fix for scalar float built-in definitions. | Kenneth Graunke | 2010-09-08 | 1 | -2/+2 |
| | | | | These need abs, and we need more tests. | ||||
* | glsl: regenerate builtins | Eric Anholt | 2010-09-08 | 1 | -1/+1 |
| | |||||
* | glsl: Refresh automatically generated file builtin_function.cpp. | Kenneth Graunke | 2010-09-08 | 1 | -11/+9 |
| | |||||
* | glsl2: Make sure _mesa_glsl_parse_state constructor gets a context | Ian Romanick | 2010-09-08 | 1 | -1/+2 |
| | | | | | Fix an major regression in dc754586. Too bad that change was obviously never tested. | ||||
* | glsl: Add built-in function profiles for GLSL ES 1.00. | Kenneth Graunke | 2010-09-07 | 1 | -11/+2353 |
| | |||||
* | glsl: Regenerate autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-09-04 | 1 | -402/+390 |
| | |||||
* | glsl: Add forgotten implementations of equal/notEqual on bvecs. | Kenneth Graunke | 2010-09-01 | 1 | -0/+60 |
| | |||||
* | glsl2: fix bug in atan(y, x) function | Brian Paul | 2010-08-31 | 1 | -6/+6 |
| | | | | When x==0, the result was wrong. Fixes piglit glsl-fs-atan-1.shader_test | ||||
* | glsl: Clear the static values of builtin function profiles at release. | Eric Anholt | 2010-08-30 | 1 | -133/+67 |
| | | | | | | | When releasing the builtin functions, we were just freeing the memory, not telling the builtin function loader that we had freed its memory. I wish I had done ARB_ES2_compatibility so we had regression testing of this path. Fixes segfault on changing video options in nexuiz. | ||||
* | glsl: Regenerate for double destroy fix. | Eric Anholt | 2010-08-27 | 1 | -0/+1 |
| | |||||
* | glsl: Use a single shared namespace in the symbol table. | Kenneth Graunke | 2010-08-26 | 1 | -0/+1 |
| | | | | | | | | | | | | As of 1.20, variable names, function names, and structure type names all share a single namespace, and should conflict with one another in the same scope, or hide each other in nested scopes. However, in 1.10, variables and functions can share the same name in the same scope. Structure types, however, conflict with/hide both. Fixes piglit tests redeclaration-06.vert, redeclaration-11.vert, redeclaration-19.vert, and struct-05.vert. | ||||
* | glsl: Include main/core.h. | Chia-I Wu | 2010-08-24 | 1 | -1/+1 |
| | | | | Make glsl include only main/core.h from core mesa. | ||||
* | glsl: Rebuild builtins for any() change. | Eric Anholt | 2010-08-23 | 1 | -3/+3 |
| | |||||
* | glsl: Regenerate builtins with the new sorting. | Eric Anholt | 2010-08-23 | 1 | -5089/+5089 |
| | |||||
* | glsl: Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-08-18 | 1 | -14184/+6719 |
| | |||||
* | glsl2: Regenerate builtin_function.cpp. | Kenneth Graunke | 2010-08-17 | 1 | -4334/+4334 |
| | |||||
* | glsl2: Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-08-16 | 1 | -1952/+11534 |
| | |||||
* | glsl2: Rework builtin function generation. | Kenneth Graunke | 2010-08-13 | 1 | -3342/+13219 |
| | | | | | | | | | | | | | | | | Each language version/extension and target now has a "profile" containing all of the available builtin function prototypes. These are written in GLSL, and come directly out of the GLSL spec (except for expanding genType). A new builtins/ir/ folder contains the hand-written IR for each builtin, regardless of what version includes it. Only those definitions that have prototypes in the profile will be included. The autogenerated IR for texture builtins is no longer written to disk, so there's no longer any confusion as to what's hand-written or generated. All scripts are now in python instead of perl. | ||||
* | glsl2: Use Elements from main/compiler.h instead of open-coding | Ian Romanick | 2010-08-12 | 1 | -4/+1 |
| | |||||
* | glsl2: Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-08-09 | 1 | -2/+2 |
| | |||||
* | glsl2: Fix expression type in builtin tan(). | Eric Anholt | 2010-08-02 | 1 | -3/+3 |
| | | | | Fixes glsl-fs-tan-1. | ||||
* | glsl2: Fix the implementation of atan(y, x). | Eric Anholt | 2010-07-30 | 1 | -83/+83 |
| | | | | | | | | | | | | | | | | So many problems here. One is that we can't do the quadrant handling for all the channels at the same time, so we call the float(y, x) version multiple times. I'd also left out the x == 0 handling. Also, the quadrant handling was broken for y == 0, so there was a funny discontinuity on the +x side if you plugged in obvious values to test. I generated the atan(float y, float x) code from a short segment of GLSL and pasted it in by hand. It would be nice to automate that somehow. Fixes: glsl-fs-atan-1 glsl-fs-atan-2 | ||||
* | glsl2: Fix outerProduct builtin. | Kenneth Graunke | 2010-07-28 | 1 | -49/+49 |
| | | | | The type signatures were completely backwards. | ||||
* | glsl2: Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-07-22 | 1 | -25/+47 |
| | |||||
* | glsl2: Fix the type of (1.0 - arg2) for mix(gen, gen, float). | Eric Anholt | 2010-07-22 | 1 | -3/+3 |
| | | | | | | | Previously, we'd constant-fold up a value of vec4(1.0 - arg2, 0, 0, 0). Fixes: glsl1-mix(vec4) function | ||||
* | linker: Link built-in functions instead of including them in every shader | Ian Romanick | 2010-07-21 | 1 | -52/+166 |
| | | | | | | | | This is an invasive set of changes. Each user shader tracks a set of other shaders that contain built-in functions. During compilation, function prototypes are imported from these shaders. During linking, the shaders are linked with these built-in-function shaders just like with any other shader. | ||||
* | glsl2: Fix asin() implementation. | Eric Anholt | 2010-07-20 | 1 | -61/+69 |
| | | | | | | | | | | I'd flipped around the order of two operations in paren-balancing adventures, and left out the multiply by sign(x) required for negative x. Fixes: glsl1-acos(vec4) function glsl1-asin(vec4) function glsl1-atan(vec4) function | ||||
* | glsl2: notEqual() produces a boolean value, not the base type of the args. | Eric Anholt | 2010-07-20 | 1 | -18/+18 |
| | | | | | | Fixes: glsl1-vector relational (bvec2 ==,!=) glsl1-vector relational (vec4 !=) | ||||
* | glsl2: Use Elements macro | Ian Romanick | 2010-07-19 | 1 | -9/+13 |
| | |||||
* | glsl2: Fix the expression type for atan's pi * sign(y). | Eric Anholt | 2010-07-19 | 1 | -4/+4 |
| | | | | Fixes CorrectFunction.vert. | ||||
* | glsl2: Make cross() be an expression operation. | Eric Anholt | 2010-07-18 | 1 | -11/+1 |
| | | | | | | ARB_fp, ARB_vp, Mesa IR, and the 965 vertex shader all have instructions for cross. Shaves 12 Mesa instructions off of a 66-instruction shader I have. | ||||
* | Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-07-14 | 1 | -189/+27 |
| | |||||
* | glsl: Fix the setup of refract()'s output for vec3/vec4 and k < 0.0. | Eric Anholt | 2010-07-07 | 1 | -2/+2 |
| | | | | caught by valgrind. | ||||
* | Refresh autogenerated file builtin_function.cpp. | Kenneth Graunke | 2010-07-02 | 1 | -101/+18 |
| | |||||
* | glsl2: Add ir_unop_fract as an expression type. | Eric Anholt | 2010-07-01 | 1 | -4/+4 |
| | | | | | Most backends will prefer seeing this to seeing (a - floor(a)), so represent it explicitly. | ||||
* | glsl2: Don't break sign() down by vector components. | Eric Anholt | 2010-06-30 | 1 | -16/+3 |
| | |||||
* | glsl2: Fix reversed value of step(). | Eric Anholt | 2010-06-30 | 1 | -19/+19 |
| | | | | It's 0.0 if x < edge, not 1.0. Partial fix for glsl-fs-step. | ||||
* | glsl2: Fix up the implementation of fract() for vector types. | Eric Anholt | 2010-06-30 | 1 | -15/+3 |
| | | | | There's no need to split each vector component out, just do vector ops. | ||||
* | glsl2: Move the compiler to the subdirectory it will live in in Mesa. | Eric Anholt | 2010-06-24 | 1 | -0/+5080 |