mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-14 23:50:35 +01:00
i965: use macros to get/set prog_instruction::Aux field
This makes things a bit easier to remember/understand.
This commit is contained in:
parent
a0959bcee5
commit
a8d233e509
4 changed files with 14 additions and 8 deletions
|
|
@ -271,6 +271,12 @@ struct brw_wm_compile {
|
|||
};
|
||||
|
||||
|
||||
/** Bits for prog_instruction::Aux field */
|
||||
#define INST_AUX_EOT 0x1
|
||||
#define INST_AUX_TARGET(T) (T << 1)
|
||||
#define INST_AUX_GET_TARGET(AUX) ((AUX) >> 1)
|
||||
|
||||
|
||||
GLuint brw_wm_nr_args( GLuint opcode );
|
||||
GLuint brw_wm_is_scalar_result( GLuint opcode );
|
||||
|
||||
|
|
|
|||
|
|
@ -973,15 +973,15 @@ static void emit_fb_write( struct brw_wm_compile *c )
|
|||
outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_DATA0 + i);
|
||||
last_inst = inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0),
|
||||
0, outcolor, payload_r0_depth, outdepth);
|
||||
inst->Aux = (i<<1);
|
||||
inst->Aux = INST_AUX_TARGET(i);
|
||||
if (c->fp_fragcolor_emitted) {
|
||||
outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_COLOR);
|
||||
last_inst = inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0),
|
||||
0, outcolor, payload_r0_depth, outdepth);
|
||||
inst->Aux = (i<<1);
|
||||
inst->Aux = INST_AUX_TARGET(i);
|
||||
}
|
||||
}
|
||||
last_inst->Aux |= 1; //eot
|
||||
last_inst->Aux |= INST_AUX_EOT;
|
||||
}
|
||||
else {
|
||||
/* if gl_FragData[0] is written, use it, else use gl_FragColor */
|
||||
|
|
@ -992,7 +992,7 @@ static void emit_fb_write( struct brw_wm_compile *c )
|
|||
|
||||
inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(),0),
|
||||
0, outcolor, payload_r0_depth, outdepth);
|
||||
inst->Aux = 1|(0<<1);
|
||||
inst->Aux = INST_AUX_EOT | INST_AUX_TARGET(0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -841,8 +841,8 @@ static void emit_fb_write(struct brw_wm_compile *c,
|
|||
nr += 2;
|
||||
}
|
||||
|
||||
target = inst->Aux >> 1;
|
||||
eot = inst->Aux & 1;
|
||||
target = INST_AUX_GET_TARGET(inst->Aux);
|
||||
eot = inst->Aux & INST_AUX_EOT;
|
||||
fire_fb_write(c, 0, nr, target, eot);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -322,8 +322,8 @@ translate_insn(struct brw_wm_compile *c,
|
|||
out->tex_unit = inst->TexSrcUnit;
|
||||
out->tex_idx = inst->TexSrcTarget;
|
||||
out->tex_shadow = inst->TexShadow;
|
||||
out->eot = inst->Aux & 1;
|
||||
out->target = inst->Aux >> 1;
|
||||
out->eot = inst->Aux & INST_AUX_EOT;
|
||||
out->target = INST_AUX_GET_TARGET(inst->Aux);
|
||||
|
||||
/* Args:
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue