summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
Commit message (Collapse)AuthorAgeFilesLines
* mesa: minor clean-ups in shaderapi.cBrian Paul2015-07-231-7/+10
| | | | 80-column wrapping. Move break statements. Indentation fixes.
* mesa: fix _mesa_error() compiler warnings in shaderapi.cBrian Paul2015-07-231-33/+33
| | | | | | | | | | | | | | Fix many instances of: main/shaderapi.c: In function '_mesa_GetSubroutineUniformLocation': main/shaderapi.c:2176:7: warning: format not a string literal and no format arguments [-Wformat-security] _mesa_error(ctx, GL_INVALID_OPERATION, api_name); ^ Ideally, many of these error messages should be improved to indicate which argument is incorrect as we do in other parts of Mesa. Reviewed-by: Kai Wasserbäch <[email protected]> Tested-by: Kai Wasserbäch <[email protected]>
* mesa: do more thorough target checking in compressed_subtexture_target_check()Brian Paul2015-07-231-26/+40
| | | | | | | When we're error-checking the target, we also need to check if the corresponding extension is supported. Reviewed-by: Roland Scheidegger <[email protected]>
* mesa: another target fix in compressed_subtexture_target_check()Brian Paul2015-07-231-1/+8
| | | | | | | | | | | | | The previous fix added GL_TEXTURE_CUBE_MAP_ARRAY but we also need to support GL_TEXTURE_CUBE_MAP (via DSA). So in the end, GL_TEXTURE_3D is the only (legal) target for glCompressedTex*SubImage3D() which needs additional compression format checking. GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAY and GL_TEXTURE_CUBE_MAP are basically 2D images which support all compressed formats. Reviewed-by: Roland Scheidegger <[email protected]>
* mesa: simplify format check in compressed_subtexture_target_check()Brian Paul2015-07-231-14/+10
| | | | | | Lose the invalidformat local variable. Reviewed-by: Roland Scheidegger <[email protected]>
* mesa: initialize variables to silence compiler warningsBrian Paul2015-07-232-3/+3
| | | | Reviewed-by: Anuj Phogat <[email protected]>
* mesa: rearrange texture error checking orderIlia Mirkin2015-07-231-13/+13
| | | | | | | | | | | | | This moves the width/height/depth == 0 check to the front and avoids doing any other checking when that is the case. Also moves the dimensions check after the format/type checks so that we don't bail out with success on a width/height/depth == 0 request when the format/type don't match. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91425 Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: adjust error message when there's a missing teximageIlia Mirkin2015-07-231-2/+1
| | | | | | | The current message makes it seem like the zoffset is invalid. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix error in target validation of glCompressedTex(ture)SubImage3D() callsEduardo Lima Mitev2015-07-231-1/+2
| | | | | | | | | | | | | | Basically, two different target error checks are chained consecutively, and the second one is executed regardless the result of the first one. This produces an incorrect error if the first check fails but is overrided by the second. This patch conditions the execution of the second check to a successful pass of the first one. Fixes 1 dEQP test: * dEQP-GLES3.functional.negative_api.texture.compressedtexsubimage3d Reviewed-by: Laura Ekstrand <[email protected]>
* mesa: fill out the ARB_shader_subroutine APIsDave Airlie2015-07-232-3/+451
| | | | | | | | | | This fleshes out the APIs, using the program resource APIs where they should match. It also sets the default values to valid subroutines. Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* program_resource: add subroutine support (v3.1)Dave Airlie2015-07-232-22/+179
| | | | | | | | | | | | | | This fleshes out the ARB_program_query support for the APIs that ARB_shader_subroutine introduces, leaving some TODOs for later addition. v2: reworked for lots of the ARB_program_interface_query entry points and tests v3: use common function to test for subroutine support v3.1: add tess, fix missing breaks Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa/mtypes: add gl_subroutine_function and uniform storage to shader (v2)Dave Airlie2015-07-231-0/+28
| | | | | | | | This adds the necessary storage for subroutine info to gl_shader. v2: add comments, rename one member Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa: add function to check if shader subroutines are enabled.Dave Airlie2015-07-231-0/+9
| | | | | | | | This checks if core profile and shader subroutine extension is enabled. Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa: add inline conversion functions for ARB_shader_subroutine (v2)Dave Airlie2015-07-231-0/+101
| | | | | | | | | | | This handles converting the shader stages to the internal prefix along with the program resource interfaces. v2: add tess support Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Chris Forbes <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* dispatch_sanity: add shader subroutine to fix make checkDave Airlie2015-07-231-8/+10
| | | | | | | | Add the shader subroutine to the core only API list, and fixup dispatch_sanity to suit. Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa: Add glGet support for ARB_shader_subroutine implementation limitsChris Forbes2015-07-234-0/+20
| | | | | | | Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chris Forbes <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa: Add extension tracking for arb_shader_subroutine (v2)Chris Forbes2015-07-233-1/+3
| | | | | | | | | v2: [airlied]: merge version check update. Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chris Forbes <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* mesa: Add stubs for ARB_shader_subroutine entrypointsChris Forbes2015-07-232-0/+95
| | | | | | | Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Chris Forbes <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* dispatch_sanity.cpp: remove commented out tess entriesDave Airlie2015-07-231-2/+0
| | | | | | | These entries were put in the GL4.0 section, so removed the commented out ones. Signed-off-by: Dave Airlie <[email protected]>
* mesa: implement GL_IS_PER_PATCHMarek Olšák2015-07-231-2/+8
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: use separate varying slots for patch varyingsMarek Olšák2015-07-231-1/+5
| | | | | | | The idea is to allow 32 normal varyings and 32 patch varyings, a total of 64. Previously, only a total of 32 was allowed. Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: analyze TES usage of gl_ClipDistanceChris Forbes2015-07-232-0/+8
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: lower gl_TessLevel* from float[n] to vecn.Fabian Bieler2015-07-231-0/+1
| | | | | | | | | | Similar to gl_ClipDistance -> gl_ClipDistanceMESA v2: - renamed is_mesa_var to lowered_builtin_array_variable - moved LowerTessLevel into gl_constants - cosmetic changes in lower_tess_level.cpp Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: add tessellation shader defines and built-in variables.Fabian Bieler2015-07-231-0/+6
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: don't allow drawing with tess ctrl shader and without tess eval shaderMarek Olšák2015-07-231-0/+19
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: handle tessellation shaders in use_shader_programMarek Olšák2015-07-231-4/+2
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add program interface queries for tessellation shadersMarek Olšák2015-07-232-8/+21
| | | | | | Based on a patch by Chris Forbes <[email protected]>. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add misc tessellation shader stuffFabian Bieler2015-07-234-5/+80
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add tessellation shader getters (v3)Fabian Bieler2015-07-233-0/+135
| | | | | | | | Tessellation dependencies added by Marek. v2: require tessellation in addition to atomics/images for some glGet queries Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: allow setting of patch parameters.Marek Olšák2015-07-232-2/+47
| | | | | Based on a patch from Fabian Bieler <[email protected]>. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: require VS if TCS or TES is present in pipelineChris Forbes2015-07-231-1/+3
| | | | | Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: allow tess stages in glUseProgramStagesChris Forbes2015-07-231-4/+9
| | | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: support tess stages in glGetProgramPipelineivFabian Bieler2015-07-231-4/+11
| | | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: take tessellation into account when validating GS input primitive modeMarek Olšák2015-07-231-2/+20
| | | | | | I've reported the bug in the Khronos bugzilla. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: allow drawing of patch primitivesChris Forbes2015-07-231-0/+45
| | | | | | Cosmetic changes and fixes by Marek. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add _mesa_has_tessellationMarek Olšák2015-07-232-1/+12
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add tessellation shader state and limitsChris Forbes2015-07-234-0/+29
| | | | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add tessellation shader enumsFabian Bieler2015-07-232-0/+6
| | | | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add tessellation shader structsFabian Bieler2015-07-231-0/+105
| | | | | | Marek: remove unused members, cleanup Reviewed-by: Kenneth Graunke <[email protected]>
* mapi: add ARB_tessellation_shaderFabian Bieler2015-07-234-1/+29
| | | | | | | Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: fix typo s/glGetTextImage/glGetTexImage/Brian Paul2015-07-221-1/+1
| | | | Trivial.
* mesa: fix misleading commentTimothy Arceri2015-07-221-2/+0
| | | | Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>
* mesa: fix active sampler conflict validationTimothy Arceri2015-07-221-7/+13
| | | | | | | | | The type stored in gl_uniform_storage is the type of a single array element not the array type so size was always 1. V2: Dont validate sampler units pointing to 0 Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>
* mesa: move check for no-op glShadeModel call earlierBrian Paul2015-07-211-3/+3
| | | | | Reviewed-by: Anuj Phogat <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: move check for no-op glAlphaFunc call earlierBrian Paul2015-07-211-3/+3
| | | | | Reviewed-by: Anuj Phogat <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: move check for no-op glFrontFace call earlierBrian Paul2015-07-211-3/+3
| | | | | | | If the new mode matches the current mode, there can be no error. Reviewed-by: Anuj Phogat <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: s/GLint/GLsizei/ for consistencyBrian Paul2015-07-211-1/+1
| | | | Reviewed-by: Ilia Mirkin <[email protected]>
* mesa: enable GL_ARB_get_texture_sub_image for all driversBrian Paul2015-07-211-0/+1
| | | | Reviewed-by: Ilia Mirkin <[email protected]>
* mesa: add API dispatch for GL_ARB_get_texture_sub_imageBrian Paul2015-07-211-0/+5
| | | | | | | | | | | This adds the new glGetTextureSubImage() and glGetCompressedTextureSubImage() functions. Also update the dispatch sanity test program. v2: remove stray brace, move xi:include line in gl_API.xml, fix extension number typo, s/program/texture/ in xml file. Reviewed-by: Ilia Mirkin <[email protected]>
* mesa: add new _mesa_Get[Compressed]TextureSubImage() functionsBrian Paul2015-07-212-1/+76
| | | | | | Simple implementations in terms of get_[compressed_]texture_image(). Reviewed-by: Ilia Mirkin <[email protected]>