mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 12:30:09 +01:00
i965: Fix fp-lit-src-equals-dst.
We were stomping over the source for the body of the LIT instruction when doing the MOV of 1.0 to the uninteresting channels. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
parent
be039d296d
commit
e3ea5bc08e
1 changed files with 11 additions and 11 deletions
|
|
@ -611,7 +611,17 @@ static void precalc_lit( struct brw_wm_compile *c,
|
|||
{
|
||||
struct prog_src_register src0 = inst->SrcReg[0];
|
||||
struct prog_dst_register dst = inst->DstReg;
|
||||
|
||||
|
||||
if (dst.WriteMask & WRITEMASK_YZ) {
|
||||
emit_op(c,
|
||||
OPCODE_LIT,
|
||||
dst_mask(dst, WRITEMASK_YZ),
|
||||
inst->SaturateMode,
|
||||
src0,
|
||||
src_undef(),
|
||||
src_undef());
|
||||
}
|
||||
|
||||
if (dst.WriteMask & WRITEMASK_XW) {
|
||||
struct prog_instruction *swz;
|
||||
|
||||
|
|
@ -627,16 +637,6 @@ static void precalc_lit( struct brw_wm_compile *c,
|
|||
/* Avoid letting the negation flag of src0 affect our 1 constant. */
|
||||
swz->SrcReg[0].Negate = NEGATE_NONE;
|
||||
}
|
||||
|
||||
if (dst.WriteMask & WRITEMASK_YZ) {
|
||||
emit_op(c,
|
||||
OPCODE_LIT,
|
||||
dst_mask(dst, WRITEMASK_YZ),
|
||||
inst->SaturateMode,
|
||||
src0,
|
||||
src_undef(),
|
||||
src_undef());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue