nir_block_image_store_agx(
&b, nir_imm_int(&b, rt), nir_imm_intN_t(&b, offset_B, 16),
+ nir_imm_intN_t(&b, 0, 16),
.format = agx_tilebuffer_physical_format(&key->tib, rt),
- .image_dim = dim);
+ .image_dim = dim, .image_array = false);
}
struct agx_shader_key compiler_key = {
# The image dimension is used to distinguish multisampled images from
# non-multisampled images. It must be 2D or MS.
#
-# src[] = { image index, logical offset within shared memory }
-intrinsic("block_image_store_agx", [1, 1], bit_sizes=[32, 16],
- indices=[FORMAT, IMAGE_DIM], flags=[CAN_REORDER])
+# src[] = { image index, logical offset within shared memory, layer }
+intrinsic("block_image_store_agx", [1, 1, 1], bit_sizes=[32, 16, 16],
+ indices=[FORMAT, IMAGE_DIM, IMAGE_ARRAY], flags=[CAN_REORDER])
# Formatted load/store. The format is the pipe_format in memory (see
# agx_internal_formats.h for the supported list). This accesses: