Marek Tackles EXT_gpu_shader4 Support In Gallium3D For Old Games/Apps
Written by Michael Larabel in Mesa on 8 August 2018 at 05:19 AM EDT. 10 Comments
While the EXT_gpu_shader4 extension was written for the OpenGL 2.0 days a decade ago when the GeForce 8 series was NVIDIA's flagship products, AMD's Marek Olšák is now adding support for this extension to the Gallium3D drivers.

GL_EXT_gpu_shader4 is an extension NVIDIA developed back in the GL2 era for adding a number of features to GLSL back at a time when OpenGL wasn't advancing as rapidly. EXT_gpu_shader4 added new texture lookup functions, signed/unsigned integer support, new built-in functions, and more. But OpenGL 3.0 ended up incorporating the EXT_gpu_shader4 additions into the core specification.

So while RadeonSI supports OpenGL 4.5 (almost OpenGL 4.6), given that there isn't many high priority tasks left for the driver, Marek has taken to EXT_gpu_shader4 enablement for old GL2 era programs. With the patches Marek dropped today adding EXT_gpu_shader4 and EXT_texture_buffer_object to RadeonSI Gallium3D, old applications/games that previously required the force_glsl_version=130 override to work with RadeonSI is no longer required. This should also fix some old applications using the older texture functions, etc.

The 11 patches can be found on Mesa-dev and will presumably land for Mesa 18.3. These patches also get EXT_gpu_shader4 working on the R600 Gallium3D driver as well as Nouveau NV50 and NVC0 due to Marek's improvements being made to the common code.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week