mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
r600g: fix RSQ of negative value on Cayman
NOTE: This is a candidate for the stable branches.
This commit is contained in:
parent
836325bf7e
commit
fd5c538464
1 changed files with 5 additions and 0 deletions
|
|
@ -1888,6 +1888,11 @@ static int cayman_emit_float_instr(struct r600_shader_ctx *ctx)
|
|||
alu.inst = ctx->inst_info->r600_opcode;
|
||||
for (j = 0; j < inst->Instruction.NumSrcRegs; j++) {
|
||||
r600_bytecode_src(&alu.src[j], &ctx->src[j], 0);
|
||||
|
||||
/* RSQ should take the absolute value of src */
|
||||
if (ctx->inst_info->tgsi_opcode == TGSI_OPCODE_RSQ) {
|
||||
r600_bytecode_src_set_abs(&alu.src[j]);
|
||||
}
|
||||
}
|
||||
tgsi_dst(ctx, &inst->Dst[0], i, &alu.dst);
|
||||
alu.dst.write = (inst->Dst[0].Register.WriteMask >> i) & 1;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue