199771bc325900eb1d3acc7fa03808894a94fdb2 |
|
30-Apr-2012 |
Olivier Galibert <galibert@pobox.com> |
glsl: Scaffolding for ARB_shader_bit_encoding. That adds support for activating the extension. It doesn't actually *do* anything yet, of course. Signed-off-by: Olivier Galibert <galibert@pobox.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
7de1331662816d31fb9bed423b1e5372284a260e |
|
18-Apr-2012 |
Eric Anholt <eric@anholt.net> |
glsl: Add support for generating builtin code from GLSL instead of IR. This takes advantage of the builtin compiler to generate IR into a string, the same way we read GLSL for function prototypes for our profiles. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
fbea94ae59817c1d9db9b2f1e257daeadf7c15a9 |
|
17-Apr-2012 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl/builtins: Support stage-agnostic built-in profiles. The built-in subsystem uses "profiles," or GLSL shaders containing prototypes for all built-ins supported within a particular language version (or extension) and shader stage. Since profiles were stage-specific, we had to cut and paste almost all the prototypes between (e.g.) 110.vert and 110.frag. Naturally, this led to sundry cut and paste bugs, where someone fixed an issue in .frag but neglected to update .vert, or vice-versa. Geometry shaders would have only made this worse. This patch introduces support for a new '.glsl' profile suffix which contains prototypes common to all shader stages. The existing '.frag' and '.vert' profiles need only contain the few stage-specific built-ins. Not only does this remove duplication, it makes built-in setup slightly faster: we don't need to re-read the common prototypes and function bodies for both the vertex and fragment shader stage. Internally, this was trivial. We already create a list of gl_shader objects to search through for built-ins: one for the core language version/stage, and additional shaders for any extensions in use. This patch simply adds another shader to the list: core/common, core/stage, and extensions. The next patch will update the profiles to remove the duplication. It's separated out purely to make review easier. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Eric Anholt <eric@anholt.net> Acked-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
fda662f4dffa658d28ea739dd236fe0350828d59 |
|
22-Mar-2012 |
Eric Anholt <eric@anholt.net> |
glsl: Don't apply optimization passes to builtins. The builtins we have are generally optimized, having been hand-written. This avoids generating bad code when an optimization pass prints debug output.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
b78a77f979b21a84aecb6fa4f19a2ed51a48c306 |
|
13-Mar-2012 |
Dave Airlie <airlied@redhat.com> |
glsl: initialise const force glsl extension warning in fake ctx valgrind complained about an uninitialised value being used in glsl_parser_extras.cpp, and this was the one it was giving out about. Just initialise the value in the fakectx. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
e06ab8c3632b748ffb59e1a82e7c966010a675e2 |
|
13-Mar-2012 |
Eric Anholt <eric@anholt.net> |
glsl: Set up generated builtin functions handling for GLSL 1.40. Otherwise, when we go to use ir_reader on the generated code, we won't have the types present. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
25c729bf9f373c6b590ef6647e560f33a954f38b |
|
12-Mar-2012 |
Eric Anholt <eric@anholt.net> |
glsl: When failing to compile some builtins, print the error. This makes the process slightly more debuggable, though it would be nice if the build just failed immediately instead. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
2903816aadb281716b6c59a5a48aeadb84a08f50 |
|
23-Oct-2011 |
Chia-I Wu <olv@lunarg.com> |
glsl: add support for GL_OES_EGL_image_external This extension introduces a new sampler type: samplerExternalOES. texture2D (and texture2DProj) can be used to do a texture look up in an external texture. Reviewed-by: Brian Paul <brianp@vmware.com> Acked-by: Jakob Bornecrantz <jakob@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
b6f32bbe12e1082e78951b6ef073bf244ba0b8b7 |
|
06-Oct-2011 |
Paul Berry <stereotype441@gmail.com> |
glsl: Add '.ir' extension to builtin IR files This patch adds the extension '.ir' to all the files in src/glsl/builtins/ir/, and changes generate_builtins.py so that it no longer globs on '*' to find the files to build. This prevents spurious files (such as EMACS' infamous *~ backup files) from breaking the build.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
0fabf8e8dc96a0eb8a9fbbac760d4faceee3af48 |
|
20-Sep-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Defer initialization of built-in functions until they're needed. Very simple shaders don't actually use GLSL built-ins. For example: - gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; - gl_FragColor = vec4(0.0); Both of the shaders used by _mesa_meta_glsl_Clear() also qualify. By waiting to initialize the built-ins until the first time we need to look for a signature, we can avoid the overhead entirely in these cases. Makes piglit run roughly 18% faster (255 vs. 312 seconds). Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
7c7a8a38e530a63717a2f374ae0574d8abf11e17 |
|
14-Jun-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl/generate_builtins.py: Remove regexp to kill pointer addresses. Commit 56ef62d9885f805bbfb2243dc860ff425d5b4d3b "glsl: Generate readable unique names at print time." changed ir_print_visitor to not generate @0x1234567 suffixes except where necessary. So there's no need to manually remove them. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
dfdb9fda826bb6c5dac2c55d9efcd1644a0dd2b9 |
|
02-Feb-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Fix use of uninitialized values in _mesa_glsl_parse_state ctor. This has probably existed since e5e34ab18eeaffa465 or so. NOTE: This is a candidate for the 7.9 and 7.10 branches.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
d3073f58c17d8675a2ecdd5dfa83e5520c78e1a8 |
|
21-Jan-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
Convert everything from the talloc API to the ralloc API.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
57ef69dd8864a745453e4e579b22aea950fdbabb |
|
14-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
generate_builtins.py: Whitespace fixes. Also removed unnecessary semicolons.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
0de6d7e99195b6e739e3a80482ad7860c14bef3b |
|
14-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
generate_builtins.py: Fix builds using Python 2.5.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
a42906f862cbdef251fbccb69787ba3710f0116a |
|
12-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
generate_builtins.py: Add missing import. Import sys for sys.exit.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
33d0c44910860e0522bd56a0f8637a69e0c4a456 |
|
07-Jan-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Autogenerate builtin_functions.cpp as part of the build process. Python is already necessary for other parts of Mesa, so there's no reason we can't just generate it. This patch updates both make and SCons to do so.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
81168351a7f493fcde55e621af046c9301aa93e9 |
|
01-Jan-2011 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Remove unused "instructions" parameter. I think was used long ago, when we actually read the builtins into the shader's instruction stream directly, rather than creating a separate shader and linking the two. It doesn't seem to serve any purpose now.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
f5692f452f7ae77d1e710041ffebb468cc5ba87b |
|
11-Nov-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Lazily import built-in function prototypes. This makes a very simple 1.30 shader go from 196k of memory to 9k. NOTE: This -may- be a candidate for the 7.9 branch, as the benefit is substantial. However, it's not a simple change, so it may be wiser to wait for 7.10.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
096d36872ff531b0295109165cb90ea63be7a1b1 |
|
15-Nov-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
generate_builtins.py: Fix inconsistent use of tabs and spaces warning.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
2cacaf6e7b9bc38efd47413b5e667b6e750698b8 |
|
21-Oct-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
generate_builtins.py: Output large strings as arrays of characters. This works around MSVC's 65535 byte limit, unfortunately at the expense of any semblance of readability and much larger file size. Hopefully I can implement a better solution later, but for now this fixes the build.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
f9995b30756140724f41daf963fa06167912be7f |
|
12-Oct-2010 |
Kristian Høgsberg <krh@bitplanet.net> |
Drop GLcontext typedef and use struct gl_context instead
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
7fc882643ce1c57fb8f60d8c5edd761eff404749 |
|
09-Sep-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl/builtins: Set the API in the fake context. Otherwise it gets used uninitialized.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
f69a6647fbd5e7cf4406fcc877ff78b507344073 |
|
09-Sep-2010 |
Ian Romanick <ian.d.romanick@intel.com> |
glsl2: Clear out profile pointers in _mesa_glsl_release_functions 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.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
961f42c9bd795204e031ea6a31a2ae04ba2e4067 |
|
08-Sep-2010 |
Ian Romanick <ian.d.romanick@intel.com> |
glsl2: Make sure _mesa_glsl_parse_state constructor gets a context Fix an major regression in dc754586. Too bad that change was obviously never tested.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
a7dc8081b6e20fd05f99608aa0349a1eb75d914b |
|
04-Sep-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl/builtins: Actually print the info log if reading a builtin failed.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
8b3d36d56378355f188dd419e35676b2e4086a73 |
|
30-Aug-2010 |
Eric Anholt <eric@anholt.net> |
glsl: Clear the static values of builtin function profiles at release. 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.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
d539c69044c735618bf85485df7733e9f0491d18 |
|
28-Aug-2010 |
Eric Anholt <eric@anholt.net> |
glsl: Protect against double compiler-destroy. DRI was doing teardown when we close the last screen, then an atexit() was added to call it as well.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
e9c7ceed27f6811ad1cae46c93ce9bc3fb3668d8 |
|
22-Aug-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl: Use a single shared namespace in the symbol table. 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.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
bfd7c9ac228c7ed8aec04c3b3aa33f40ee00b035 |
|
23-Aug-2010 |
Chia-I Wu <olv@lunarg.com> |
glsl: Include main/core.h. Make glsl include only main/core.h from core mesa.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
6355ae2b80a01b1d58824ffeae0c638d917519c0 |
|
23-Aug-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
generate_builtins.py: Generate output in sorted order.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
f7188ac9ce75638003c916c9d5d42a75365ff1c4 |
|
21-Aug-2010 |
Vinson Lee <vlee@vmware.com> |
generate_builtins.py: Remove unused import sys.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
011be6b5948e66adb468aef292a7c8e9be600a89 |
|
18-Aug-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
generate_builtins.py: Clean up generated output a bit. This should make it easier to diff the output, clean up some of the insane whitespace, and make the strings a bit smaller. We'll probably need to split up the prototype strings eventually, but for now, this gets it under the 65K mark.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|
43ff8f1a4b90554eae489cebb7e05f983dd9ad66 |
|
12-Aug-2010 |
Kenneth Graunke <kenneth@whitecape.org> |
glsl2: Rework builtin function generation. 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.
/external/mesa3d/src/glsl/builtins/tools/generate_builtins.py
|