summaryrefslogtreecommitdiff
path: root/src/mesa
AgeCommit message (Collapse)Author
2010-07-08glsl: fix 'if ((x=foo()) > 1.0)' bugBrian Paul
Fixes fd.o bug 27216. May also be the root cause of fd.o bug 28950. We weren't propogating the storage info for the x=foo() expression up through the IR tree to the inequality expression. NOTE: This is a candidate for the Mesa 7.8 branch.
2010-07-08st/mesa: additional assertions in st_translate_mesa_program()Brian Paul
2010-07-08slang: fix typosZack Rusin
2010-07-08slang: add some comments related to geometry shadersZack Rusin
2010-07-08gs: inject const int gl_VerticesIn at link timeZack Rusin
2010-07-07mesa: initial support for new GL 3.0 texture formatsBrian Paul
2010-07-07st/mesa: fix sampler max_lod computationBrian Paul
This change makes gallium behave like other GL implementations and fixes a conformance failure.
2010-07-07r600: workaround 3 comp GL_SHORT vertex attribute format on r700Andre Maasikas
guess it's a hw errata?
2010-07-07glsl: use Elements() in arrays instead of sentinal valuesBrian Paul
The _slang_*_output_name() functions had one too many loop iterations because of the sentinal end-of-list values in the vertOutput array. Just use Elements() everywhere.
2010-07-06r300/compiler: Implement KILP opcode.Tom Stellard
Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-07-06mesa: Always initialize transform feedback state.Chia-I Wu
Assert ctx->Driver.NewTransformFeedback if the feature is enabled; Use the default callbacks otherwise. The rest of core mesa expects the state to be initialized.
2010-07-05mesa: initial support for unnormalized integer texture formatsBrian Paul
As defined by GL_EXT_texture_integer.
2010-07-03mesa: Fix OpenGL ES-only builds.Chia-I Wu
Check FEATURE_GL in _mesa_init_shader_dispatch and _mesa_init_shader_uniform_dispatch. OpenGL ES can not and does not use _mesa_init_<...>_dispatch. This is supposed to be temporary. Ideally, a more flexible way for initializing dispatch tables should be developed.
2010-07-03r300/compiler: Fix loop unrollingTom Stellard
2010-07-03r300/compiler: Use hardware flow control instructions for loops on r500.Tom Stellard
2010-07-03r300/compiler: Don't continue copy propagation inside loops.Tom Stellard
2010-07-03r300/compiler: Print debug info for flow control instructions.Tom Stellard
2010-07-03r300/compiler: Enable hardware IF statements for r500 cards.Tom Stellard
2010-07-03r300/compiler: In the peephole optimizer, ELSE should mark the end of aTom Stellard
block.
2010-07-03r300/compiler: Correctly calculate the max number of iterations for loops.Tom Stellard
2010-07-03r300/compiler: Handle loops in deadcode analysis.Tom Stellard
This also allows us to split the loop emulation into two phases. A tranformation phase which either unrolls loops or prepares them to be emulated, and the emulation phase which unrolls remaining loops until the instruction limit is reached. The second phase is completed after the deadcode analysis in order to get a more accurate count of the number of instructions in the body of loops.
2010-07-02osmesa: remove old renderbuffer before adding newBrian Paul
Fixes fd.o bug 10966 when OSMesaMakeCurrent() was called twice. NOTE: This is a candidate for the 7.8 branch.
2010-07-02mesa: updated instruction commentsBrian Paul
2010-07-02mesa: add geometry shader fields to gl_shader_programBrian Paul
These 3 fields are per shader-program. Copy them into the geometry program at link time for convenient access later. Also, add some missing glGetProgramiv() queries.
2010-07-02mesa: fix texenv generation when num color bufs == 0Brian Paul
Before, if there were no color buffers enabled (with glDrawBuffers(GL_NONE)) when the texenv program was generated, we'd emit writes to OUTPUT[1] but the OutputsWritten mask was 0. This inconsistency caused an assertion to fail later in the Mesa->TGSI translation. Fixes fd.o bug 28169 NOTE: this is a candidate for the 7.8 branch (and depends on commit b6b9b17d27c570cc99ae339e595cf2f63ca5e8d7).
2010-07-02mesa: add missing error checks in _mesa_program_parameteri()Brian Paul
2010-07-02main: change some GS field types, added commentsBrian Paul
2010-07-02mesa: make the number of draw buffers part of the texenv program key stateBrian Paul
All the state that effects the program should be in the key. This didn't help with bug 28169 but is a good fix anyway. NOTE: this is a low-priority candidate for the 7.8 branch. In practice, this issue might never be hit.
2010-07-02mesa: Silence warning.José Fonseca
2010-07-01mesa: extension flags and version testing for GL 3.x featuresBrian Paul
2010-07-01mesa: entrypoints for GL 3.1 primitive restartBrian Paul
2010-07-01mesa: free xform feedback hash tableBrian Paul
2010-07-01st/mesa: fix commentBrian Paul
2010-06-30mesa: Use fpclassify for GL_OES_query_matrix on OpenBSD and NetBSD.Chia-I Wu
Patch from Brad Smith <brad@comstyle.com> The attached patch allows the GL_OES_query_matrix function to use the systems fpclassify() for OpenBSD and NetBSD.
2010-06-29mesa: make the arguments in the asm statemants optionalZack Rusin
geometry shaders emit/end functions don't take any arguments
2010-06-29st/mesa: Add support for multiple APIs.Chia-I Wu
Add st_gl_api_create_es1 and st_gl_api_create_es2 to create OpeGL ES 1.1 and OpenGL ES 2.0 contexts respectively.
2010-06-29st_api: Remove st_context::is_visual_supported.Chia-I Wu
The callback is used by st/vega to check if a visual specifies the depth/stencil format. It forces st/vega to be loaded by st/egl to perform the check. As noted in EGL spec, the depth/stencil format of a visual should not affect OpenVG. It should be better to ignore the field and always allocate the depth/stencil texture.
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-06-26mesa: Remove unnecessary header.Vinson Lee
2010-06-26st/mesa: Remove unnecessary headers.Vinson Lee
2010-06-25mesa: initialize extension string when context is first boundBrian Paul
...instead of waiting until glGetString(GL_EXTENSIONS) is called. This fixes a problem where the MESA_EXTENSION_OVERRIDE env var is ignored if the app never calls glGetString(GL_EXTENSIONS). NOTE: this is a candidate patch for the 7.8 branch.
2010-06-23Merge branch 'shader-file-reorg'Brian Paul
1. Move all GL entrypoint functions and files into src/mesa/main/ This includes the ARB vp/vp, NV vp/fp, ATI fragshader and GLSL bits that were in src/mesa/shader/ 2. Move src/mesa/shader/slang/ to src/mesa/slang/ to reduce the tree depth 3. Rename src/mesa/shader/ to src/mesa/program/ since all the remaining files are concerned with GPU programs. 4. Misc code refactoring. In particular, I got rid of most of the GLSL-related ctx->Driver hook functions. None of the drivers used them. Conflicts: src/mesa/drivers/dri/i965/brw_context.c
2010-06-22mesa: fix attachment error checking for glGetFramebufferAttachmentParameteriv()Brian Paul
This is a follow-on to commit 80dfec3e53fd5b5c8c31fb16376c9910258c91b0. The valid attachments for glGetFramebufferAttachmentParameteriv() depends on whether we're querying the default FBO or a user-created FBO.
2010-06-23r300/compiler: allow 1024 instructions in r5xx vertex shadersMarek Olšák
2010-06-23r300/compiler: allow 32 temporaries in vertex shadersMarek Olšák
2010-06-23r300/compiler: emulate loops in vertex shadersMarek Olšák
It is not perfect, but it is the best we got.
2010-06-23mesa: fix assertion failure for GL_ALPHA FBOsMarek Olšák
2010-06-22st/mesa: remove bogus assertions st_CompressedTexSubImage2DRoland Scheidegger
width/height may not be a multiple of blocksize (small mip levels / npot textures). This should be handled just fine. Fixes #28530.
2010-06-21swrast: fix incorrect specular highlights on backfacesTim Evans
See bug 28577 for details. NOTE: this is a candidate for the 7.8 branch. Signed-off-by: Brian Paul <brianp@vmware.com>
2010-06-19Revert "Fix image_matches_texture_obj() MaxLevel check"Will Dyson
This reverts commit a9ee95651131e27d5acf3d10909b5b7e5c8d3e92. It was based on a failure to understand how ther driver allocates memory, and causes a regression with Celestia. Set MaxLevel to dstLevel before allocating new mipmap level. The radeon driver will fail to allocate space for a new level that is outside of BaseLevel..MaxLevel. Set MaxLevel before allocating. Signed-off-by: Maciej Cencora <m.cencora@gmail.com>