summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* glsl: use Elements() in arrays instead of sentinal valuesBrian Paul2010-07-071-20/+20
| | | | | | 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.
* r300/compiler: Implement KILP opcode.Tom Stellard2010-07-065-0/+42
| | | | Signed-off-by: Marek Olšák <[email protected]>
* mesa: Always initialize transform feedback state.Chia-I Wu2010-07-062-24/+48
| | | | | | 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.
* mesa: initial support for unnormalized integer texture formatsBrian Paul2010-07-059-133/+1140
| | | | As defined by GL_EXT_texture_integer.
* mesa: Fix OpenGL ES-only builds.Chia-I Wu2010-07-032-0/+4
| | | | | | | | 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.
* r300/compiler: Fix loop unrollingTom Stellard2010-07-031-1/+15
|
* r300/compiler: Use hardware flow control instructions for loops on r500.Tom Stellard2010-07-037-43/+152
|
* r300/compiler: Don't continue copy propagation inside loops.Tom Stellard2010-07-031-0/+5
|
* r300/compiler: Print debug info for flow control instructions.Tom Stellard2010-07-031-5/+73
|
* r300/compiler: Enable hardware IF statements for r500 cards.Tom Stellard2010-07-032-5/+6
|
* r300/compiler: In the peephole optimizer, ELSE should mark the end of aTom Stellard2010-07-031-2/+13
| | | | block.
* r300/compiler: Correctly calculate the max number of iterations for loops.Tom Stellard2010-07-031-17/+8
|
* r300/compiler: Handle loops in deadcode analysis.Tom Stellard2010-07-035-77/+112
| | | | | | | | | 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.
* osmesa: remove old renderbuffer before adding newBrian Paul2010-07-021-0/+1
| | | | | | Fixes fd.o bug 10966 when OSMesaMakeCurrent() was called twice. NOTE: This is a candidate for the 7.8 branch.
* mesa: updated instruction commentsBrian Paul2010-07-021-4/+3
|
* mesa: add geometry shader fields to gl_shader_programBrian Paul2010-07-024-53/+42
| | | | | | | 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.
* mesa: fix texenv generation when num color bufs == 0Brian Paul2010-07-021-1/+4
| | | | | | | | | | | | 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).
* mesa: add missing error checks in _mesa_program_parameteri()Brian Paul2010-07-021-8/+45
|
* main: change some GS field types, added commentsBrian Paul2010-07-021-2/+3
|
* mesa: make the number of draw buffers part of the texenv program key stateBrian Paul2010-07-022-5/+9
| | | | | | | | 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.
* mesa: Silence warning.José Fonseca2010-07-021-1/+2
|
* mesa: extension flags and version testing for GL 3.x featuresBrian Paul2010-07-013-3/+102
|
* mesa: entrypoints for GL 3.1 primitive restartBrian Paul2010-07-014-0/+110
|
* mesa: free xform feedback hash tableBrian Paul2010-07-011-0/+1
|
* st/mesa: fix commentBrian Paul2010-07-011-1/+1
|
* mesa: Use fpclassify for GL_OES_query_matrix on OpenBSD and NetBSD.Chia-I Wu2010-06-301-1/+2
| | | | | | | Patch from Brad Smith <[email protected]> The attached patch allows the GL_OES_query_matrix function to use the systems fpclassify() for OpenBSD and NetBSD.
* mesa: make the arguments in the asm statemants optionalZack Rusin2010-06-291-1/+0
| | | | geometry shaders emit/end functions don't take any arguments
* st/mesa: Add support for multiple APIs.Chia-I Wu2010-06-295-36/+82
| | | | | 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.
* st_api: Remove st_context::is_visual_supported.Chia-I Wu2010-06-291-8/+0
| | | | | | | | 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.
* mesa: initial support for ARB_geometry_shader4Zack Rusin2010-06-2846-4139/+5472
| | | | | | laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
* mesa: Remove unnecessary header.Vinson Lee2010-06-261-1/+0
|
* st/mesa: Remove unnecessary headers.Vinson Lee2010-06-261-2/+0
|
* mesa: initialize extension string when context is first boundBrian Paul2010-06-252-2/+2
| | | | | | | | ...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.
* Merge branch 'shader-file-reorg'Brian Paul2010-06-23192-2435/+2357
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * mesa: rename src/mesa/shader/ to src/mesa/program/Brian Paul2010-06-10138-461/+459
| |
| * mesa: move shader/slang/* sources to main/slang/*Brian Paul2010-06-1053-45/+45
| | | | | | | | Reduce the source tree depth a bit.
| * mesa: move nvprogram.[ch] to main/Brian Paul2010-06-107-13/+13
| |
| * mesa: move arbprogram.[ch] to main/Brian Paul2010-06-109-12/+12
| |
| * mesa: move atifragshader.[ch] to main/Brian Paul2010-06-109-12/+12
| |
| * mesa: move uniforms.c to main/Brian Paul2010-06-106-6/+6
| |
| * mesa: refactor shader api / object codeBrian Paul2010-06-1020-1872/+1793
| | | | | | | | | | Remove the unneeded ctx->Driver hooks for shader-related functions. Move state and API-related things into main/.
| * i965: remove UseProgram driver callbackBrian Paul2010-06-101-10/+0
| | | | | | | | It just duplicated the default/core Mesa behaviour.
* | mesa: fix attachment error checking for glGetFramebufferAttachmentParameteriv()Brian Paul2010-06-221-1/+44
| | | | | | | | | | | | | | 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.
* | r300/compiler: allow 1024 instructions in r5xx vertex shadersMarek Olšák2010-06-233-9/+12
| |
* | r300/compiler: allow 32 temporaries in vertex shadersMarek Olšák2010-06-232-4/+4
| |
* | r300/compiler: emulate loops in vertex shadersMarek Olšák2010-06-232-4/+11
| | | | | | | | It is not perfect, but it is the best we got.
* | mesa: fix assertion failure for GL_ALPHA FBOsMarek Olšák2010-06-231-0/+1
| |
* | st/mesa: remove bogus assertions st_CompressedTexSubImage2DRoland Scheidegger2010-06-221-2/+0
| | | | | | | | | | | | width/height may not be a multiple of blocksize (small mip levels / npot textures). This should be handled just fine. Fixes #28530.
* | swrast: fix incorrect specular highlights on backfacesTim Evans2010-06-211-1/+1
| | | | | | | | | | | | | | See bug 28577 for details. NOTE: this is a candidate for the 7.8 branch. Signed-off-by: Brian Paul <[email protected]>
* | Revert "Fix image_matches_texture_obj() MaxLevel check"Will Dyson2010-06-192-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]>