path: root/src/mesa/main/extensions.c
AgeCommit message (Collapse)AuthorFilesLines
2015-11-04HAX: GLES31 hackery...for running dEQP.Kenneth Graunke1-0/+1
2015-11-04mesa: expose support for GL_EXT_buffer_storageRyan Houdek1-0/+1
This extension requires ES 3.1 since it relies on glMemoryBarrier. For testing purposes I temporarily moved glMemoryBarrier to be an ES 3.0 function. This has been tested with the piglit in the ML and the Dolphin emulator. Reviewed-by: Ilia Mirkin <>
2015-11-01mesa: expose support for OES/EXT_draw_elements_base_vertex to OpenGL ESRyan Houdek1-0/+2
This has been tested with the piglits in the mailing list and on the Dolphin emulator. Reviewed-by: Ilia Mirkin <>
2015-10-30mesa: add infra for ARB_shader_clockEmil Velikov1-0/+1
Signed-off-by: Emil Velikov <> Reviewed-by: Matt Turner <>
2015-10-07Revert "mesa: enable KHR_debug for ES contexts"Emil Velikov1-1/+1
This reverts commit b69cfbdf18fa64606a76761b20bc268f4ac731e5. This isn't quite baked yet. Seems that despite building the ES piglits, none of them got executed.
2015-10-07mesa: enable KHR_debug for ES contextsEmil Velikov1-1/+1
Signed-off-by: Emil Velikov <>
2015-09-17Revert "mesa/extensions: restrict GL_OES_EGL_image to GLES"Dave Airlie1-1/+2
This reverts commit 48961fa3ba37999a6f8fd812458b735e39604a95. glamor/Xwayland use this, the spec saying something when it was written, and the fact that the comment says Mesa relies on it hasn't changed. I also don't have a copy of this patch in my mail archive, which seems wierd, did it get posted to mesa-dev? Signed-off-by: Dave Airlie <>
2015-09-15mesa/extensions: restrict GL_OES_EGL_image to GLESNanley Chery1-2/+1
Driver vendors do this as well. The extension specification lists GLES 1.1 or 2.0 as requirements. Reviewed-by: Chad Versace <> Signed-off-by: Nanley Chery <>
2015-09-15mesa/extensions: restrict luminance alpha formats to API_OPENGL_COMPATNanley Chery1-2/+2
According the GL 3.1 spec, luminance alpha formats are deprecated. Reviewed-by: Anuj Phogat <> Signed-off-by: Nanley Chery <>
2015-09-10mesa: add infra for ARB_shader_texture_image_samplesIlia Mirkin1-0/+1
Signed-off-by: Ilia Mirkin <> Reviewed-by: Ian Romanick <> Reviewed-by: Kenneth Graunke <>
2015-08-27mesa: Add extension enable for OES_texture_storage_multisample_2d_arrayTapani Pälli1-0/+1
v2: use ARB_texture_multisample bit to enable extension Signed-off-by: Tapani Pälli <> Reviewed-by: Marta Lofstedt <> Reviewed-by: Ilia Mirkin <>
2015-08-26mesa: add ASTC extensions to the extensions tableNanley Chery1-0/+2
v2: alphabetize the extensions. remove OES ASTC extension. Reviewed-by: Anuj Phogat <> Signed-off-by: Nanley Chery <>
2015-08-20main: add extension GL_ARB_shader_image_sizeMartin Peres1-0/+1
Reviewed-by: Edward O'Callaghan <> Reviewed-by: Francisco Jerez <> Signed-off-by: Martin Peres <>
2015-08-20mesa: Add ES31 API tag for the extension table.Francisco Jerez1-0/+7
I'll mark the OES_shader_image_atomic extension entry with this tag to make sure that we don't expose it on earlier GLES API versions accidentally, because according to the extension: "OpenGL ES 3.1 and GLSL ES 3.10 are required." Reviewed-by: Tapani Pälli <>
2015-08-12mesa: add NV_read_{depth,stencil,depth_stencil} extensionsRob Clark1-0/+3
These extensions allow reading depth/stencil for GLES contexts, which is useful for tools like apitrace. Signed-off-by: Rob Clark <> Reviewed-by: Marek Olšák <>
2015-07-23mesa: Add extension tracking for arb_shader_subroutine (v2)Chris Forbes1-0/+1
v2: [airlied]: merge version check update. Reviewed-by: Tapani Pälli <> Reviewed-by: Kenneth Graunke <> Signed-off-by: Chris Forbes <> Signed-off-by: Dave Airlie <>
2015-07-21mesa: enable GL_ARB_get_texture_sub_image for all driversBrian Paul1-0/+1
Reviewed-by: Ilia Mirkin <>
2015-07-14mesa: define ARB_shader_storage_buffer_object extensionSamuel Iglesias Gonsalvez1-0/+1
Signed-off-by: Samuel Iglesias Gonsalvez <> Reviewed-by: Jordan Justen <>
2015-06-20mesa: Back out an accidental change I had in a VC4 commit.Eric Anholt1-1/+0
This was a hack as part of debugging some glamor-on-GLES2 behavior that ended up being an xserver bug. I suspect we can just flip this extension on for GLES2, but the spec says it requires 3.1.
2015-06-20vc4: Fix write-only texsubimage when we had to align.Eric Anholt1-0/+1
We need to make sure that when we store the aligned box, we've got initialized contents in the border. We could potentially just load the border area, but for now let's get text rendering working in X (and fix the GL_TEXTURE_2D errors in piglit's texsubimage test and gl-2.1-pbo/test_tex_image)
2015-06-17mesa: Define infrastructure for ARB_framebuffer_no_attachmentsKevin Rogovin1-0/+1
Define the infrastructure for the extension GL_ARB_framebuffer_no_attachments: - extension table - additions to gl_framebuffer Reviewed-by: Ian Romanick <> Signed-off-by: Kevin Rogovin <>
2015-05-28mesa: Enable ARB_direct_state_access by default for core profileIan Romanick1-1/+1
And core profile only. Signed-off-by: Ian Romanick <> Reviewed-by: Fredrik Höglund <> Cc: "10.6" <>
2015-05-28Revert "mesa: Add an extension flag for ARB_direct_state_access"Ian Romanick1-1/+1
This reverts commit 30dcaaec356cc117d7227c6680620cd50ff534e7. Acked-by: Fredrik Höglund <> Cc: "10.6" <>
2015-05-14mesa: Add an extension flag for ARB_direct_state_accessFredrik Höglund1-1/+1
Signed-off-by: Fredrik Höglund <> Reviewed-by: Adam Jackson <>
2015-05-08mesa: add ARB_vertex_attrib_64bit to extensions. (v2)Dave Airlie1-0/+1
Just add the boilerplate bits. v2: add to version.c Reviewed-by: Ilia Mirkin <> Reviewed-by: Ian Romanick <> Signed-off-by: Dave Airlie <>
2015-04-30mesa: add GL_OES_EGL_syncMarek Olšák1-0/+1
This is an empty extension whose presence means that EGL sync objects can be used with ES contexts.
2015-04-23mesa: finish implementing ARB_texture_stencil8 (v5)Dave Airlie1-0/+1
Parts of this were implemented previously, so finish it off. v2: fix getteximage falling into the integer check add fixes for the FBO paths, (fbo-stencil8 test). v3: fix getteximage path harder. v4: remove swapbytes from getteximage path (Ilia) v5: brown paper bag the swapbytes removal. (Ilia) Reviewed-by: Ilia Mirkin <> Signed-off-by: Dave Airlie <>
2015-04-16mesa: enable GL_ARB_program_interface_query extensionTapani Pälli1-0/+1
(and mark it as DONE in docs/GL3.txt + 10.6.0 relnotes) Signed-off-by: Tapani Pälli <> Reviewed-by: Martin Peres <>
2015-02-21mesa: don't enable NV_fragment_program_option with swrastRoland Scheidegger1-1/+0
Since dropping some NV_fragment_program opcodes (commits 868f95f1da74cf6dd7468cba1b56664aad585ccb, a3688d686f147f4252d19b298ae26d4ac72c2e08) we can no longer parse all opcodes necessary for this extension, leading to bugs ( Hence don't announce support for it in swrast (no other driver enabled it). (Note that remnants of some NV_fp/vp extensions remain, they could be dropped but are required as hacks for getting viewperf11 catia to run.)
2015-02-19mesa: add ARB_gpu_shader_fp64 extension info (v2)Dave Airlie1-0/+1
This just adds the entries to extensions.c and mtypes.h v2: use core profile only (Ian) Signed-off-by: Dave Airlie <> Reviewed-by: Ian Romanick <> Reviewed-by: Matt Turner <> Reviewed-by: Ilia Mirkin <>
2015-02-17mesa: Add support for the ARB_pipeline_statistics_query extensionBen Widawsky1-0/+1
This was originally part of a single patch which added the extension, and implemented it for i965 classic. For information about the evolution of the patch, please see the subsequent commit. One difference here as compared to the original mega patch is this does build support for the compute shader query. Since it cannot be tested on any platform, it will always return NULL for now. Jordan has already written a patch to address this, and when that patch lands, this logic can be modified. v2: Fix typo in subject (Brian Paul) Add checks for desktop gl (Ilia) Fail for any callers for now (Ilia) Update QueryCounterBits for new tokens (Ilia) Jordan: Use _mesa_has_compute_shaders Signed-off-by: Ben Widawsky <> Reviewed-by: Ilia Mirkin <> v3: Rebased on patch which adds the proper information to unstub tessellation shaders. Reviewed-by: Kenneth Graunke <>
2015-02-17mesa: Add ARB_tessellation_shader to extension table.Fabian Bieler1-0/+1
Reviewed-by: Kenneth Graunke <>
2015-02-17mesa: implement GL_AMD_pinned_memoryMarek Olšák1-0/+1
It's not possible to query the current buffer binding, because the extension doesn't define GL_..._BUFFER__BINDING_AMD. Drivers should check the target parameter of Drivers.BufferData. If it's equal to GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD, the memory should be pinned. That's all there is to it. A piglit test is on the piglit mailing list. Reviewed-by: Ian Romanick <> Reviewed-by: Christian König <>
2015-02-02mesa: add support for GL_EXT_polygon_offset_clampIlia Mirkin1-0/+1
Nothing enables the extension yet, but the values are now available. The spec calls for it to only be exposed for GL 3.3+, which is core-only in mesa. Instead we allow any driver to enable it, including in a compat context for any GL version. Signed-off-by: Ilia Mirkin <> Reviewed-by: Glenn Kennard <>
2015-01-29Mesa: Add support for GL_OES_texture_*float* extensions.Kalyan Kondapally1-0/+4
This patch series adds support for following GLES2 Texture Float extensions: 1)GL_OES_texture_float, 2)GL_OES_texture_half_float, 3)GL_OES_texture_float_linear, 4)GL_OES_texture_half_float_linear. This patch adds basic infrastructure and needed boolean flags to advertise support for these extensions, by default the support is disabled. Next patch in the series introduces support for HALF_FLOAT_OES token. v4: take assert away and make valid_filter_for_float conditional (Tapani), fix the alphabetical order (Emil) Signed-off-by: Kevin Rogovin <> Signed-off-by: Kalyan Kondapally <> Reviewed-by: Tapani Pälli <>
2015-01-19mesa: Add ARB_shader_precision infrastructureMicah Fedke1-0/+1
Reviewed-by: Ian Romanick <> Reviewed-by: Chris Forbes <>
2015-01-14mesa/glsl/glapi: enable GL_EXT_draw_buffers extensionTapani Pälli1-0/+1
Patch enables ES2 extension that utilizes existing ES3 functionality. Changes make all the subtests to run and pass in WebGL conformance test 'webgl-draw-buffers' when running Chrome on OpenGL ES, also Piglit test 'draw_buffers_gles2' passes. v2: remove unused boolean (Ilia Mirkin) v3: proper error checking for invalid values (Chad Versace) v4: run error check explicitly for ES2 and ES3 (Kenneth Graunke) Signed-off-by: Tapani Pälli <> Reviewed-by: Matt Turner <> Reviewed-by: Chad Versace <>
2015-01-08glapi: Added ARB_direct_state_access.xml file.Laura Ekstrand1-0/+1
main: Added ARB_direct_state_access to extensions.c as dummy_false. Reviewed-by: Anuj Phogat <>
2014-10-28mesa: Add support for the GL_KHR_context_flush_control extensionNeil Roberts1-0/+1
The GL side of this extension just provides an accessor via glGetIntegerv for the value of GL_CONTEXT_RELEASE_BEHAVIOR so it is trivial to implement. There is a constant on the context for the value of the enum which is initialised to GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH. The extension is always enabled because it doesn't need any driver interaction to retrieve the value. If the value of the enum is anything but FLUSH then _mesa_make_current will now refrain from calling _mesa_flush. This should only affect drivers that explicitly change the enum to a non-default value. Reviewed-by: Ian Romanick <>
2014-10-24mesa: Implement ARB_clip_control.Mathias Fröhlich1-0/+1
Implement the mesa parts of ARB_clip_control. So far no driver enables this. v3: Restrict getting clip control state to the availability of ARB_clip_control. Move to transformation state. Handle clip control state with the GL_TRANSFORM_BIT. Move _FrontBit update into state.c. Reviewed-by: Brian Paul <> Signed-off-by: Mathias Froehlich <>
2014-09-24mesa: Drop _mesa_getenv() wrapper.Matt Turner1-1/+1
Reviewed-by: Ian Romanick <> Reviewed-by: Jose Fonseca <> Reviewed-by: Emil Velikov <>
2014-09-23mesa/main: Check allocations success in ↵Juha-Pekka Heikkila1-0/+9
_mesa_one_time_init_extension_overrides() Signed-off-by: Juha-Pekka Heikkila <> Reviewed-by: Anuj Phogat <>
2014-08-19mesa: add ARB_conditional_render_inverted flagsTobias Klausmann1-0/+1
Also add an extension bit so we can safely enable Reviewed-by: Ilia Mirkin <> Reviewed-by: Roland Scheidegger <> Reviewed-by: Chris Forbes <> Signed-off-by: Tobias Klausmann <>
2014-08-14mesa: add ARB_derivative_control extension bitIlia Mirkin1-0/+1
Signed-off-by: Ilia Mirkin <> Reviewed-by: Matt Turner <>
2014-08-14mesa: add ARB_texture_barrier supportIlia Mirkin1-0/+1
This extension is identical to NV_texture_barrier. Alias glTextureBarrier to the existing glTextureBarrierNV and use the existing NV_texture_barrier extension bit. Signed-off-by: Ilia Mirkin <> Reviewed-by: Marek Olšák <>
2014-08-14mesa: Make ARB_gpu_shader5 core-profile-onlyChris Forbes1-1/+1
Requires GLSL 1.50 or higher, which we only support in the core profile. V2: Fix broken alignment Signed-off-by: Chris Forbes <> Reviewed-by: Matt Turner <>
2014-08-12swrast: Enable GL_ARB_texture_compression_bptcNeil Roberts1-0/+1
Enables BPTC texture compression on the software rasterizer. Reviewed-by: Ian Romanick <>
2014-08-12mesa: Add the GL_ARB_texture_compression_bptc extensionNeil Roberts1-0/+1
This adds a boolean in the gl_extensions struct for GL_ARB_texture_compression_bptc as well as an entry in extension_table. Reviewed-by: Ian Romanick <>
2014-08-11mesa: make _mesa_init_extensions context-independentMarek Olšák1-4/+4
Reviewed-by: Ian Romanick <> Reviewed-by: Ilia Mirkin <>
2014-08-11mesa: Add GL API support for ARB_copy_imageJason Ekstrand1-0/+1
This adds the API entrypoint, error checking logic, and a driver hook for the ARB_copy_image extension. v2: Fix a typo in ARB_copy_image.xml and add it to the makefile v3: Put ARB_copy_image.xml in the right place alphebetically in the makefile and properly prefix the commit message v4: Fixed some line wrapping and added a check for null v5: Check for incomplete renderbuffers Signed-off-by: Jason Ekstrand <> Reviewed-by: Juha-Pekka Heikkila <> Reviewed-by: Neil Roberts <> v6: Update dispatch_sanity for the addition of CopyImageSubData