summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_surface_builder.h
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2015-07-30 15:46:40 +0300
committerFrancisco Jerez <currojerez@riseup.net>2015-08-11 15:07:39 +0300
commitcaae52561dabb2d20f2369c547e660d078974285 (patch)
tree9949fa8c2b79edc05a368d2b03506e9d26fe0092 /src/mesa/drivers/dri/i965/brw_fs_surface_builder.h
parent7e8be000101cc6fe3846745b559f2d785430e253 (diff)
downloadexternal_mesa3d-caae52561dabb2d20f2369c547e660d078974285.zip
external_mesa3d-caae52561dabb2d20f2369c547e660d078974285.tar.gz
external_mesa3d-caae52561dabb2d20f2369c547e660d078974285.tar.bz2
i965/fs: Implement image load, store and atomic.
v2: Drop VEC4 suport. v3: Rebase. v4: Move array coordinate workaround into the surface builder. Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_surface_builder.h')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_surface_builder.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_surface_builder.h b/src/mesa/drivers/dri/i965/brw_fs_surface_builder.h
index 264314b..a3dd839 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_surface_builder.h
+++ b/src/mesa/drivers/dri/i965/brw_fs_surface_builder.h
@@ -65,5 +65,25 @@ namespace brw {
unsigned dims, unsigned rsize, unsigned op,
brw_predicate pred = BRW_PREDICATE_NONE);
}
+
+ namespace image_access {
+ fs_reg
+ emit_image_load(const fs_builder &bld,
+ const fs_reg &image, const fs_reg &addr,
+ unsigned surf_dims, unsigned arr_dims,
+ mesa_format format);
+
+ void
+ emit_image_store(const fs_builder &bld, const fs_reg &image,
+ const fs_reg &addr, const fs_reg &src,
+ unsigned surf_dims, unsigned arr_dims,
+ mesa_format format);
+ fs_reg
+ emit_image_atomic(const fs_builder &bld,
+ const fs_reg &image, const fs_reg &addr,
+ const fs_reg &src0, const fs_reg &src1,
+ unsigned surf_dims, unsigned arr_dims,
+ unsigned rsize, unsigned op);
+ }
}
#endif