summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-01-22mesa/es3: Apply stricter multisample blit rules for ES3.Ian Romanick1-13/+48
Fixes gles3conform framebuffer_blit_error_blitframebuffer_multisampled_read_buffer_different_origins. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2013-01-22mesa/es3: Disallow FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE query of ↵Ian Romanick1-0/+16
DEPTH_STENCIL_ATTACHMENT This error was added in the 3.0.1 update to the OpenGL ES 3.0 spec. Fixes the updated gles3conform packed_depth_stencil_parameters test. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2013-01-22mesa: Don't allow blits to / from the same buffer in OpenGL ES 3.0Ian Romanick1-0/+31
Fixes gles3conform test CoverageES30. It temporarily regresses some framebuffer_blit tests, but the failing subcases have been determined to be invalid for OpenGL ES 3.0. v2: Fix typo in depth (and stencil) RB checking. Noticed by Ken. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Remove exec thunks from the dlist.c module.Eric Anholt1-870/+0
These were introduced in 2000 during a rework of the TNL module (commit cab974cf6c2dbfbf5dd5d291e1aae0f8eeb34290), though I'm having a hard time finding an instance there of one of these Exec functions being changed at runtime. Regardless, as far as I can tell now, these functions don't get changed, by grepping for calls to SET_* to change the dispatch table (we do change functions in GLvertexformat at runtime, but those don't overlap with this set of functions). Remove them and just let them be initialized to the same functions as are in the Exec table. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Initially populate the display list with the exec list.Eric Anholt11-284/+8
This cuts out a ton of code to make functions not set to a save_ variant match. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Delay display list save dispatch setup until Exec is set up.Eric Anholt3-11/+8
This will let us copy from the Exec dispatch to deal with our commands that don't get compiled into display lists. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Make the drivers call a non-code-generated dispatch table setup.Eric Anholt14-12/+21
I want to drive the Save dispatch table setup from this same function. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Remove the size argument from _mesa_alloc_dispatch_table().Eric Anholt3-8/+5
All callers are in Mesa core and all use _gloffset_COUNT, so just rely on the already baked-in use of _gloffset_COUNT in the function. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Remove two of the now unused ASSERT_OUTSIDE_BEGIN_END macros.Eric Anholt1-25/+0
Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Drop manual checks for outside begin/end.Eric Anholt53-356/+92
We now have a separate dispatch table for begin/end that prevent these functions from being entered during that time. The ASSERT_OUTSIDE_BEGIN_END_WITH_RETVALs are left because I don't want to change any return values or introduce new error-only stubs at this point. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Install a minimal dispatch table during glBegin()/glEnd().Eric Anholt4-19/+133
This is a step toward getting rid of ASSERT_OUTSIDE_BEGIN_END() in Mesa. v2: Finish create_beginend_table() comment, move loopback API init into it, and add a const flag. (suggestions by Brian) Reviewed-by: Brian Paul <brianp@vmware.com> (v1) Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (v1)
2013-01-21mesa: Remove the dead PrepareExecBegin() driver hook.Eric Anholt3-12/+0
This was used in i965 for a while, but no more. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Use an early return to unindent most of vbo_exec_Begin/End().Eric Anholt1-55/+54
Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Improve a glTexEnv error message by looking up the enum.Eric Anholt1-1/+2
Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21mesa: Fix regression in dlist save primitive tracking.Eric Anholt1-8/+1
My change 7ca4f07b5b77ccac0a9b60dc5ac9082906b5947e caused errors to not be thrown when they should, because the new if statement for ExecuteFlag made the CurrentSavePrimitive not get set. And on further review, we shouldn't be validating our primitive in GL_COMPILE mode, since the command shouldn't be executed yet. Partially fixes piglit gl-1.0-beginend-coverage. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-21vl: round next_msc to integer frame, and kill skew_mscMaarten Lankhorst1-5/+2
This reduces jitter slightly in a cleaner way, without desynchronizing mplayer2 as badly when falling behind. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> Reviewed-by: Christian König <christian.koenig@amd.com>
2013-01-21scons: Fix dependencies of generated headers.José Fonseca9-70/+34
It appears that scons implicit dependency scanners fail to chain dependencies of generated headers when these are outside the build tree. This patch ensures generated source files are _always_ put in the build tree. I'm not 100% this will fix all depency issues, but from my experiments it does seem to fix this. NOTE: For this to be effective it is necessary to clean the source tree from generated header/source files. Reviewed-by: Brian Paul <brianp@vmware.com>
2013-01-21intel: Don't expose XRGB8888 visuals any moreIan Romanick1-2/+1
There really isn't any point. There is no resource savings, and we have to do gymnastics in the driver to make it work. There are also bad interactions with multisampling and OpenGL ES 3.0. In ES3, a multisample-to-singlesample blit must have identical source and destination format. This means a multisample RGBA8 to singlesample RGB8 (window) blit will generate an error. Also in ES3, RGB8 is not a renderable format. This means that the application CANNOT make an RGB8 multisample renderbuffer. As a result, if an application gets an RGB8 window and wants to do multisample FBO rendering, it will probably break. "Fixes" gles3conform framebuffer_blit_functionality_multisampled_to_singlesampled_blit test on RGB8 visuals. v2: Fix 'formats' array size. Suggested by Ken. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Acked-by: Eric Anholt <eric@anholt.net>
2013-01-21i965: Enable floating-point textures alwaysIan Romanick2-20/+5
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Acked-by: Eric Anholt <eric@anholt.net>
2013-01-21r300g: add a workaround for the AA colorbuffer addressing bug on R500Marek Olšák2-7/+42
2013-01-21r300g: allow resolutions up to 1280x1024 with AA optimizations on 1-pipe cardsMarek Olšák2-3/+6
because single-pipe cards have bigger CMASK RAM
2013-01-21r300g: enable AA optimizations for the RGBA16F formatMarek Olšák3-1/+11
2013-01-21radeonsi: More assorted depth/stencil changes ported from r600g.Marek Olšák7-136/+251
[ Squashed port of the following r600g commits: - Michel Dänzer ] commit 428e37c2da420f7dc14a2ea265f2387270f9bee1 Author: Marek Olšák <maraeo@gmail.com> Date: Tue Oct 2 22:02:54 2012 +0200 r600g: add in-place DB decompression and texturing with DB tiling The decompression is done in-place and only the compressed tiles are decompressed. Note: R6xx-R7xx can do that only with Z16 and Z32F. The texture unit is programmed to use non-displayable tiling and depth ordering of samples, so that it can fetch the texture in the native DB format. The latest version of the libdrm surface allocator is required for stencil texturing to work. The old one didn't create the mipmap tree correctly. We need a separate mipmap tree for stencil, because the stencil mipmap offsets are not really depth offsets/4. There are still some known bugs, but this should save some memory and it also improves performance a little bit in Lightsmark (especially with low resolutions; tested with Radeon HD 5000). The DB->CB copy is still used for transfers. commit e2f623f1d6da9bc987582ff68d0471061ae44030 Author: Marek Olšák <maraeo@gmail.com> Date: Sat Jul 28 13:55:59 2012 +0200 r600g: don't decompress depth or stencil if there isn't any commit 43e226b6efb77db2247741cc2057d9625a2cfa05 Author: Marek Olšák <maraeo@gmail.com> Date: Wed Jul 18 00:32:50 2012 +0200 r600g: optimize uploading depth textures Make it only copy the portion of a depth texture being uploaded and not the whole 2D layer. There is also a little code cleanup. commit b242adbe5cfa165b252064a1ea36f802d8251ef1 Author: Marek Olšák <maraeo@gmail.com> Date: Wed Jul 18 00:17:46 2012 +0200 r600g: remove needless wrapper r600_texture_depth_flush commit 611dd529425281d73f1f0ad2000362d4a5525a25 Author: Marek Olšák <maraeo@gmail.com> Date: Wed Jul 18 00:05:14 2012 +0200 r600g: init_flushed_depth_texture should be able to report errors commit 80755ff56317446a8c89e611edc1fdf320d6779b Author: Marek Olšák <maraeo@gmail.com> Date: Sat Jul 14 17:06:27 2012 +0200 r600g: properly track which textures are depth This fixes the issue with have_depth_texture never being set to false. commit fe1fd675565231b49d3ac53d0b4bec39d8bc6781 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Jul 8 03:10:37 2012 +0200 r600g: don't flush depth textures set as colorbuffers The only case a depth buffer can be set as a color buffer is when flushing. That wasn't always the case, but now this code isn't required anymore. commit 5a17d8318ec2c20bf86275044dc8f715105a88e7 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Jul 8 02:14:18 2012 +0200 r600g: flush depth textures bound to vertex shaders This was missing/broken. There are also minor code cleanups. commit dee58f94af833906863b0ff2955b20f3ab407e63 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Jul 8 01:54:24 2012 +0200 r600g: do fine-grained depth texture flushing - maintain a mask of which mipmap levels are dirty (instead of one big flag) - only flush what was requested at a given point and not the whole resource (most often only one level and one layer has to be flushed) Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-21radeonsi: improve flushed depth texture handlingVadim Girlin5-81/+100
Use r600_resource_texture::flished_depth_texture for GPU access, and allocate it in the VRAM. For transfers we'll allocate texture in the GTT and store it in the r600_transfer::staging. Improves performance when flushed depth texture is frequently used by the GPU, e.g. in Lightsmark [ Ported from r600g commit 37708479608af877986b76302a9c92611d1e23d0 ] Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-21radeonsi: Assorted depth/stencil changes ported from r600g.Marek Olšák5-56/+48
[ Squashed port of the following r600g commits: - Michel Dänzer ] commit c1e8c845ea9c6f843cc5bba5974668c007799bbc Author: Marek Olšák <maraeo@gmail.com> Date: Sat Jul 7 19:10:00 2012 +0200 r600g: inline r600_hw_copy_region commit 4891c5dc64ccd8cf2bf8a8550ae23e1a61806a7d Author: Marek Olšák <maraeo@gmail.com> Date: Mon Jun 25 22:53:21 2012 +0200 r600g: inline r600_blit_push_depth and use resource_copy_region We are going to have a separate resource for depth texturing and transfers and this is just a transfer thing. commit da98bb6fc105e1a2f688a1713ca9e50f0ac8fbed Author: Marek Olšák <maraeo@gmail.com> Date: Mon Jun 25 12:45:32 2012 +0200 r600g: split flushed depth texture creation and flushing Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-21radeonsi: Enable 1D tiling for non-depth resources as well.Michel Dänzer1-2/+1
No piglit regressions anymore thanks to fixes in libdrm_radeon and here. Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-21radeonsi: Fix 1D tiling mode index for non-scanout resources.Michel Dänzer1-1/+4
Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-20build: Remove dead SHARED_GLAPI variableMatt Turner2-5/+0
The static Makefiles used it. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com>
2013-01-20glsl/build: Build glsl_test only on make checkMatt Turner1-1/+2
Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com>
2013-01-20glsl/build: Remove dead LIBRARY_* variablesMatt Turner2-4/+0
Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com>
2013-01-20xmlpool/build: generate options.h via BUILT_SOURCESMatt Turner1-1/+1
Fixes missing options.h when doing 'make check' in dri/common before 'make' has been run. Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com>
2013-01-20fbobject: add additional fbo completeness checks for GLESJordan Justen1-1/+45
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20framebuffer: update allowed implementation format/typeJordan Justen1-3/+23
Allow additional format/type combinations based on the color render buffer to fix failures with gles3-gtf. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20readpix: allow implementation format/typeJordan Justen1-1/+6
For GLES2/3 allow reading of pixels with format/type based on: * GL_IMPLEMENTATION_COLOR_READ_FORMAT * GL_IMPLEMENTATION_COLOR_READ_TYPE Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20extensions: enable EXT_color_buffer_float for ES3Jordan Justen3-9/+20
[mattst88] v2: Enable only for ES3 per spec. [mattst88] v3: Use _mesa_is_gles3 since EXT_color_buffer_float is ES3-only. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20extensions: Add ES3-only extension supportMatt Turner1-5/+15
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-01-20readpix: check FBO completeness before trying to access the read-bufferJordan Justen1-9/+9
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20readpix: add error checking for GLES3Jordan Justen1-0/+56
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20copyteximage: update error checking for GLES3Jordan Justen1-1/+36
Changes based on GTF/gles3 conformance test suite. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20copyteximage: check that sRGB usage is valid for GLES3 / GLJordan Justen1-0/+39
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2013-01-20intel: Enable GL_OES_depth_texture_cube_mapIan Romanick1-0/+1
For now I'm just enabling this on the same subset of hardware that has OpenGL 3.0 enabled. This same functionality is part of OpenGL 3.0, and there is no matching desktop extension. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-01-20mesa/es3: Allow unsized depth and depth-stencil formats in ES3Ian Romanick1-2/+5
They're part of GL_OES_depth_texture_cube_map, and we'll always enable that extension in ES3 contexts. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-01-20mesa/es2: Allow depth component cube maps in ES2 if the extension is enabledIan Romanick1-1/+2
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-01-20mesa: Add extension bit tracking for GL_OES_depth_texture_cube_mapIan Romanick2-0/+2
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-01-20gallium: Remove ppc asm backendAdam Jackson7-3077/+0
The vs part hasn't been wired up since tgsi_sse2 was disabled in: commit 4eb3225b38ce12cb34ab3d90804c9683bd7b4ed3 Author: José Fonseca <jose.r.fonseca@gmail.com> Date: Tue Nov 8 00:10:47 2011 +0000 Remove tgsi_sse2. And it would certainly not work correctly in its current state: draw/draw_vs_ppc.c: In function ‘draw_create_vs_ppc’: draw/draw_vs_ppc.c:190:24: warning: assignment from incompatible pointer type [enabled by default] As with the sse2 backend, this should be done in llvm anyway. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2013-01-19build: require python module libxml2Andreas Boll2-0/+50
configure should warn if libxml2 is not found. libxml2 is needed by glapi/gen. Fixes error during build in src/mapi/glapi/gen: ImportError: No module named libxml2 NOTE: This is a candidate for the 9.0 branch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=31598 Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2013-01-19r600g/llvm: Fixes addressspace of basevectors for clipvertexVincent Lejeune1-1/+2
2013-01-19nv50/ir: add definitions of Target and CodeEmitter dtorsChristoph Bumiller1-2/+2
I really did build test, my compiler just doesn't seem to care.
2013-01-19nouveau: fix undefined behaviour when testing sample_countChristoph Bumiller3-0/+6
NOTE: This is a candidate for the 9.0 branch.
2013-01-19nv50/ir: fix a couple of warningsChristoph Bumiller3-6/+11