[Mesa-dev] [PATCH] i965: Emit proper NOPs.
Ian Romanick
idr at freedesktop.org
Mon Dec 5 20:27:41 UTC 2016
On 12/05/2016 12:24 PM, Matt Turner wrote:
> The PRMs for HSW and newer say that other than the opcode and DebugCtrl
> bits of the instruction word, the rest must be zero.
>
> By zeroing the instruction word manually, we avoid using any of the
> state inherited through brw_codegen.
>
> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=96959
^zilla
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
> ---
> src/mesa/drivers/dri/i965/brw_eu_emit.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c
> index cfb3fa0..ca04221 100644
> --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c
> +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c
> @@ -1282,10 +1282,8 @@ brw_F16TO32(struct brw_codegen *p, struct brw_reg dst, struct brw_reg src)
> void brw_NOP(struct brw_codegen *p)
> {
> brw_inst *insn = next_insn(p, BRW_OPCODE_NOP);
> - brw_inst_set_exec_size(p->devinfo, insn, BRW_EXECUTE_1);
> - brw_set_dest(p, insn, retype(brw_vec1_grf(0,0), BRW_REGISTER_TYPE_UD));
> - brw_set_src0(p, insn, retype(brw_vec1_grf(0,0), BRW_REGISTER_TYPE_UD));
> - brw_set_src1(p, insn, brw_imm_ud(0x0));
> + memset(insn, 0, sizeof(*insn));
> + brw_inst_set_opcode(p->devinfo, insn, BRW_OPCODE_NOP);
> }
>
>
>
More information about the mesa-dev
mailing list