summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* Move _mesa_dl* functions into dlopen.h and inline themMatt Turner2012-08-244-122/+75
| | | | | | No point in having an extra function call for inlinable functions. Reviewed-by: Tapani Pälli <[email protected]>
* mesa/dlopen: use HAVE_DLOPEN instead of _GNU_SOURCETapani Pälli2012-08-241-4/+4
| | | | | | | | | | | | | Patches changes mesa to use 'HAVE_DLOPEN' defined by configure and Android.mk instead of _GNU_SOURCE for detecting dlopen capability. This makes dlopen to work also on Android where _GNU_SOURCE is not defined. [mattst88] v2: HAVE_DLOPEN is sufficient for including dlfcn.h, remove mingw/blrts checks around dlfcn.h inclusion. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Matt Turner <[email protected]> Signed-off-by: Tapani Pälli <[email protected]>
* build: Only add links to .so files if we're building themMatt Turner2012-08-242-0/+4
| | | | | | Xlib-GLX and OSMesa support static building. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=53962
* build: Add libOSMesa.so.$(VERSION) link to libdirMatt Turner2012-08-241-0/+1
|
* build: Replace OSMESA_VERSION with generic VERSION_NUMBERMatt Turner2012-08-241-1/+1
| | | | Can be used by other modules.
* build: Only build libmesa.la when neededMatt Turner2012-08-241-4/+8
| | | | Namely, for Xlib-GLX, OSMesa, or test programs.
* build: Remove duplicate DRI automake conditionalsMatt Turner2012-08-241-1/+1
|
* i965: don't clear resolve map when doing fast depth clears.Paul Berry2012-08-241-4/+2
| | | | | | | | | | | | | | | | | | Previously, when performing a fast depth clear, we would also clear the miptree's resolve map. This destroyed important information, since the resolve map contains information about needed resolves for all levels and layers of the miptree, whereas a depth clear only applies to a single level/layer combination at a time. As a result, resolves would sometimes fail to occur, leading to incorrect rendering. Fixes rendering artifacts with shadow maps in Unigine Heaven and Unigine Sanctuary. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50270 Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* i965/HiZ: remove assertion from intel_resolve_map_set().Paul Berry2012-08-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | There are three possible resolve map states for each (level, layer) of a depth miptree: "needs HiZ resolve", "needs depth resolve", and "needs neither". When HiZ was first implemented on i965, any attempt to directly transition between "needs HiZ resolve" and "needs depth resolve" without passing through the "needs neither" state would have been a bug indicating that a necessary resolve hadn't been performed. Accordingly, intel_resolve_map_set() contained an assertion to verify that no such direct transition happened. However, now that we support fast depth clears, there is a valid transition from the "needs HiZ resolve" to the "needs depth resolve" state. When doing a fast depth clear, the old state of the buffer is irrelevant, since we are completely replacing it with the clear value, so it is not necessary to do any resolves before clearing--we can transition, if necessary, directly from the "needs HiZ resolve" state to the "needs depth resolve" state. To avoid spurious assertions in this valid case, this patch just removes the assertion. Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* mesa/es: Validate glCreateShader targets in Mesa code rather than the ES wrapperIan Romanick2012-08-242-6/+1
| | | | | | | v2: Add proper core-profile filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa/es: Validate glGetProgramiv pnames in Mesa code rather than the ES wrapperIan Romanick2012-08-242-23/+31
| | | | | | | v2: Add proper core-profile and GLES3 filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Filter glGetProgramiv pnames based on available extensionsIan Romanick2012-08-241-30/+37
| | | | | | | | | | | | | | | | | | | | | Previously you could always glGetProgramiv one of the transform feedback or geometry shader enums even if the extension wasn't supported. In addtion, this reverts part of bda6ad27. I think the hunks involving GL_PROGRAM_BINARY_LENGTH_OES were spurious. Mesa has no support for any other part of GL_OES_get_program_binary. v2: Remove redundant return in get_programiv based on review feedback from Matt Turner. v3: Correctly handle UBO related enums. v4: Emit the bad enum in the _mesa_error call based on review feedback from Brian Paul. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* swrast: implement cubical depth texture samplingBrian Paul2012-08-241-41/+74
| | | | | | Fixes a few more failures in the piglit copyteximage test. Reviewed-by: Ian Romanick <[email protected]>
* main: fix ES compile breakageBrian Paul2012-08-241-1/+1
|
* mesa/swrast: fix GL_TEXTURE_2D_ARRAY texture fetches for dxt formatsBrian Paul2012-08-244-72/+76
| | | | | | | As with the previous commit. This fixes the last crash in the piglit copyteximage test but there's still some failures.
* mesa/swrast: fix GL_TEXTURE_2D_ARRAY texture fetches for latc/rgtc formatsBrian Paul2012-08-244-88/+108
| | | | | | | Fix-up the texel fetch functions so that they handle 3D coords (as used for array textures) and remove the "f_2d" part from their names. Helps fix swrast crashes in piglit's copyteximage test. More to come.
* mesa: code movement in teximage.cBrian Paul2012-08-241-204/+198
| | | | To get rid of a forward declaration.
* mesa: consolidate glTexImage and glCompressedTexImage codeBrian Paul2012-08-241-203/+138
| | | | | | There was a lot of similar or duplicated code before. To minimize this patch's size, use a forward declaration for compressed_texture_error_check(). Move the function in the next patch.
* mesa: make glTexImage, glCompressedTexImage proxy code more alikeBrian Paul2012-08-241-35/+42
| | | | Next up, we can combine the teximage() and compressed_teximage() functions.
* mesa: rename texpal.[ch] to texcompress_cpal.[ch]Brian Paul2012-08-245-11/+26
| | | | To be consistent with other files related to texture compression.
* mesa: s/GLuint/gl_format/ in _mesa_compressed_format_to_glenum()Brian Paul2012-08-242-2/+2
| | | | No real change here, just use the right type.
* mesa: new _mesa_num_tex_faces() helperBrian Paul2012-08-2410-16/+31
| | | | | Not a real big help now, but will be useful for the GL_ARB_texture_cube_map_array extension in the future.
* mesa: make _mesa_get_proxy_tex_image() staticBrian Paul2012-08-242-9/+8
| | | | It's not used by any other file.
* mesa: don't clear proxy image fields when regular GL error is generatedBrian Paul2012-08-241-11/+33
| | | | | | | | If a proxy texture call generates a regular GL error, we should not clear the proxy image's width/height/depth/format fields. Use a new PROXY_ERROR token to distinguish proxy errors from regular GL errors. Reviewed-by: Anuj Phogat <[email protected]>
* mesa: fix glTexImage proxy texture error generationBrian Paul2012-08-241-52/+43
| | | | | | | | | | | | When calling glTexImage() with a proxy target most error conditions should generate a GL error. We were erroneously doing the proxy-error behaviour (where we zeroed-out the image's width/height/depth/format fields) in too many places. There's another issue with proxy textures, but that'll be fixed in the next patch. Reviewed-by: Anuj Phogat <[email protected]>
* build: don't leave git_sha1.h.tmp after build/installVadim Girlin2012-08-241-0/+2
| | | | | | | | Fixes "`main/git_sha1.h.tmp': Permission denied" build error. See https://bugs.freedesktop.org/show_bug.cgi?id=52064 Signed-off-by: Vadim Girlin <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/msaa: Add sample-alpha-to-coverage support for multiple render targetsAnuj Phogat2012-08-234-2/+43
| | | | | | | | | | | | | | | | | | | | | | Render Target Write message should include source zero alpha value when sample-alpha-to-coverage is enabled for an FBO with multiple render targets. Source zero alpha value is used as fragment coverage for all the render targets. This patch makes piglit tests draw-buffers-alpha-to-coverage and alpha-to-coverage-no-draw-buffer-zero to pass on Sandybridge. No regressions are observed with piglit all.tests. V2: Revert all the changes made in emit_color_write() function to include src0 alpha for targets > 0. Now handling this case in a if block. V3: Correctly calculate the instruction length for buffer zero. Properly handle the case of dual_src_blend when alpha-to-coverage is enabled. Signed-off-by: Anuj Phogat <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* mesa/es: Validate glCompressedTexSubImage internalFormat in Mesa code rather ↵Ian Romanick2012-08-232-5/+10
| | | | | | | | than the ES wrapper Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glCompressedTexImage internalFormat in Mesa code rather ↵Ian Romanick2012-08-232-26/+16
| | | | | | | | | | than the ES wrapper v2: Add proper core-profile filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glCopyTexImage internalFormat in Mesa code rather than the ↵Ian Romanick2012-08-232-8/+18
| | | | | | | | | | ES wrapper v2: Add GLES3 filtering. I'm not 100% sure this is correct. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glTexSubImage format and type in Mesa code rather than the ↵Ian Romanick2012-08-232-133/+17
| | | | | | | | | | ES wrapper v2: Add proper GLES3 filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glTexImage format, type, and internalFormat in Mesa code ↵Ian Romanick2012-08-233-203/+98
| | | | | | | | | | | | | rather than the ES wrapper v2: Add proper GLES3 filtering. v3: Collapse ALPHA, LUMINANCE, and LUMINANCE_ALPHA cases per review comment from Ken. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glTexImage border in Mesa code rather than the ES wrapperIan Romanick2012-08-232-10/+4
| | | | | | | | | | | Also validate glCopyTexImage border. This fixes a bug in the APIspec. Previously glTexImage3DOES could be passed a non-zero border without error. NOTE: This is a candidate for stable release branches. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa: Generate an error when glCopyTexImage border is invalidIan Romanick2012-08-231-0/+2
| | | | | | | | NOTE: This is a candidate for stable release branches. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Add support for GL_APPLE_texture_max_levelIan Romanick2012-08-231-0/+1
| | | | | | | | This is desktop OpenGL functionality that has always existed. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glGetTexParameter pnames in Mesa code rather than the ES ↵Ian Romanick2012-08-232-29/+84
| | | | | | | | | | | | | | | wrapper This also adds a missing extension (and API) check around GL_TEXTURE_CROP_RECT_OES. v2: Add proper core-profile and GLES3 filtering. GL_TEXTURE_MAX_LEVEL is (incorrectly) accepted in ES contexts. A future patch will add GL_APPLE_texture_max_level, and meta really needs this. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glTexParameter pnames in Mesa code rather than the ES wrapperIan Romanick2012-08-233-75/+54
| | | | | | | | | | | | | This also adds a missing extension (and API) check around GL_TEXTURE_CROP_RECT_OES. v2: Add proper core-profile, GLES1, and GLES3 filtering. GL_TEXTURE_MAX_LEVEL is (incorrectly) accepted in ES contexts. A future patch will add GL_APPLE_texture_max_level, and meta really needs this. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Remove redundant glBindTexture target validationIan Romanick2012-08-231-8/+0
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa: Filter glBindTexture targets based on supported features.Ian Romanick2012-08-231-9/+21
| | | | | | | | | | | | Fixed the piglit test arb_texture_buffer_object-negative-unsupported. NOTE: This is a candidate for stable release branches. v2: Add proper core-profile and GLES3 filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate tex image targets in Mesa code rather than the ES wrapperIan Romanick2012-08-232-130/+29
| | | | | | | | | | | | | | This should take care of all the TexImage, TexSubImage, CopyTexImage, CompressedTexImage3DOES, and CopyTexSubImage type paths. v2: Add proper core-profile and GLES3 filtering. v3: Squash the CompressedTexImage3DOES patch per review comment from Ken. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate EGLImageTargetTexture2DOES target in Mesa code rather than ↵Ian Romanick2012-08-232-10/+15
| | | | | | | | the ES wrapper Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate glTexParameter targets in Mesa code rather than the ES wrapperIan Romanick2012-08-233-34/+15
| | | | | | | | | | Ditto for glGetTexParameter targets. v2: Add proper core-profile and GLES3 filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa/es: Validate GL_TEXTURE_WRAP param in Mesa code rather than the ES wrapperIan Romanick2012-08-233-26/+12
| | | | | | | | v2: Add proper core-profile filtering. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* mesa: Refactor validate_texture_wrap_mode to use a switch-statementIan Romanick2012-08-231-35/+42
| | | | | | | | This makes the next couple changes a little easier. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jordan Justen <[email protected]>
* meta: Don't modify GL_GENERATE_MIPMAP state when it doesn't existIan Romanick2012-08-231-2/+6
| | | | | | | | | | | | | | | | | | This is a bit of a hack. _mesa_meta_GenerateMipmap shouldn't even be used in contexts where GL_GENERATE_MIPMAP doesn't exist (i.e., core profile and ES2) because it uses fixed-function, and fixed-function doesn't exist there either! A GLSL-based _mesa_meta_GenerateMipmap should be available soon. When that is available, this patch will be irrelevant and should be reverted. v2: Change (ctx->API != API_OPENGLES2 && ctx->API != API_OPENGL_CORE) to (ctx->API == API_OPENGL || ctx->API == API_OPENGLES) based on review comment from Brian Paul. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* st/mesa: accept and handle configuration options from st/driVadim Girlin2012-08-234-5/+14
| | | | | | Currently there is a single option - force_glsl_extensions_warn. Signed-off-by: Vadim Girlin <[email protected]>
* build: Only build libmesagallium.la if building GalliumMatt Turner2012-08-221-2/+7
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* build/x11: Force usage of C++ linkerMatt Turner2012-08-221-0/+3
| | | | | Tested-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* build/x11: Don't link against shared-glapiMatt Turner2012-08-221-4/+0
| | | | | Tested-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix generic compressed texture formats' handling in ↵Anuj Phogat2012-08-211-30/+2
| | | | | | | | | | | | | | | | | | | | glTexImage/glCopyTexImage The generic texture formats should be accepted by the <internalformat> parameter of TexImage1D, TexImage2D, TexImage3D, CopyTexImage1D, and CopyTexImage2D functions. When the application specifies a generic format, the driver is free to pick an uncompressed format. This patch reverts the changes due to following commit: commit a36581ccc06693231011c3fe136207e73191b1ce mesa: do more teximage error checking for generic compressed formats This patch fixes compressed texture format failures in intel oglconform pxconv-gettex test case: https://bugs.freedesktop.org/show_bug.cgi?id=47220 Signed-off-by: Anuj Phogat <[email protected]> Reviewed-by: Brian Paul <[email protected]>