[Mesa-dev] [PATCH 7/9] i965/fs: Port untyped atomic message support to Broadwell.

Eric Anholt eric at anholt.net
Wed Apr 30 13:35:46 PDT 2014


Kenneth Graunke <kenneth at whitecape.org> writes:

> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77221
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>

> diff --git a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
> index dae4026..fffde0c 100644
> --- a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
> +++ b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp
> @@ -821,6 +821,38 @@ gen8_fs_generator::generate_unpack_half_2x16_split(fs_inst *inst,
>  }
>  
>  void
> +gen8_fs_generator::generate_untyped_atomic(fs_inst *ir,
> +                                           struct brw_reg dst,
> +                                           struct brw_reg atomic_op,
> +                                           struct brw_reg surf_index)
> +{
> +   assert(atomic_op.file == BRW_IMMEDIATE_VALUE &&
> +          atomic_op.type == BRW_REGISTER_TYPE_UD &&
> +          surf_index.file == BRW_IMMEDIATE_VALUE &&
> +          surf_index.type == BRW_REGISTER_TYPE_UD);
> +   assert((atomic_op.dw1.ud & ~0xf) == 0);
> +
> +   unsigned msg_control =
> +      atomic_op.dw1.ud | /* Atomic Operation Type: BRW_AOP_* */
> +      ((dispatch_width == 16 ? 0 : 1) << 4) | /* Slot Group: SIMD8 or SIMD16 */

again, unlike typed atomics, I see this field being called "simd mode"

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140430/ce9b3c9f/attachment.sig>


More information about the mesa-dev mailing list