[Mesa-dev] i965 implementation of the ARB_shader_image_load_store built-ins. (v3)

Francisco Jerez currojerez at riseup.net
Tue May 5 14:48:07 PDT 2015

This resend drops the GLSL IR implementation of the image built-ins as
requested by Ken, and adds a NIR implementation.  It depends on the
series sent earlier today adding support for image intrinsics to NIR.
For a branch in a testable form see:

[PATCH 01/25] i965: Add register constructors taking a backend_reg as argument.
[PATCH 02/25] i965/fs: Introduce FS IR builder.
[PATCH 03/25] i965/vec4: Introduce VEC4 IR builder.
[PATCH 04/25] i965/fs: Obtain atomic counter locations by recursing through the visitor.
[PATCH 05/25] i965/vec4: Obtain atomic counter locations by recursing through the visitor.
[PATCH 06/25] i965: Lift the constness restriction on surface indices passed to untyped ops.
[PATCH 07/25] i965/fs: Import array utils for the surface message builder.
[PATCH 08/25] i965/fs: Import helpers to convert vectors into arrays and back.
[PATCH 09/25] i965/fs: Import surface message builder functions.
[PATCH 10/25] i965/fs: Import image access validity checks.
[PATCH 11/25] i965/fs: Import image memory offset calculation code.
[PATCH 12/25] i965/fs: Import image format metadata queries.
[PATCH 13/25] i965/fs: Import image format conversion primitives.
[PATCH 14/25] i965/fs: Implement image load, store and atomic.
[PATCH 15/25] i965/fs: Revisit GLSL IR atomic counter intrinsic translation.
[PATCH 16/25] i965/fs: Revisit NIR atomic counter intrinsic translation.
[PATCH 17/25] i965/fs: Drop unused untyped surface read and atomic emit methods.
[PATCH 18/25] i965: Teach type_size() about the size of an image uniform.
[PATCH 19/25] i965: Implement logic to set up and upload an image uniform.
[PATCH 20/25] i965/fs: Don't overwrite fs_visitor::uniforms and ::param_size during the SIMD16 run.
[PATCH 21/25] i965/fs: Execute nir_setup_uniforms, _inputs and _outputs unconditionally.
[PATCH 22/25] i965/fs: Handle image uniforms in NIR programs.
[PATCH 23/25] i965/fs: Translate image load, store and atomic NIR intrinsics.
[PATCH 24/25] i965/fs: Translate memory barrier NIR intrinsics.
[PATCH 25/25] i965: Expose ARB_shader_image_load_store.

More information about the mesa-dev mailing list