[Mesa-dev] [PATCH] i965: Avoid dependency hints on math opcodes
Matt Turner
mattst88 at gmail.com
Tue Apr 15 10:30:34 PDT 2014
On Wed, Feb 12, 2014 at 4:24 PM, <mike at lunarg.com> wrote:
> From: Mike Stroyan <mike at LunarG.com>
>
> Putting NoDDClr and NoDDChk dependency control on instruction
> sequences that include math opcodes can cause corruption of channels.
> Treat math opcodes like send opcodes and suppress dependency hinting.
>
> Signed-off-by: Mike Stroyan <mike at LunarG.com>
> Tested-by: Tony Bertapelli <anthony.p.bertapelli at intel.com>
> ---
> src/mesa/drivers/dri/i965/brw_vec4.cpp | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp
> index dd23ed4..1c42ca8 100644
> --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp
> @@ -717,6 +717,14 @@ vec4_visitor::opt_set_dependency_control()
> continue;
> }
>
> + /* Dependency control does not work well over math instructions.
> + */
> + if (inst->is_math()) {
> + memset(last_grf_write, 0, sizeof(last_grf_write));
> + memset(last_mrf_write, 0, sizeof(last_mrf_write));
> + continue;
> + }
> +
> /* Now, see if we can do dependency control for this instruction
> * against a previous one writing to its destination.
> */
> --
> 1.8.3.2
Reviewed-by: Matt Turner <mattst88 at gmail.com>
and pushed to master.
More information about the mesa-dev
mailing list