mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 02:00:12 +01:00
nv50/ir/nir: always round towards zero for f2i/f2u
Conversions to integers must be rounded towards zero, hence, actually do this for all integers including 8/16 bit sources. Reviewed-by: Karol Herbst <kherbst@redhat.com> Signed-off-by: Danilo Krummrich <dakr@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18109>
This commit is contained in:
parent
109d56f612
commit
6a9825bc1b
1 changed files with 3 additions and 2 deletions
|
|
@ -2672,10 +2672,11 @@ Converter::visit(nir_alu_instr *insn)
|
|||
case nir_op_u2u64: {
|
||||
DEFAULT_CHECKS;
|
||||
LValues &newDefs = convert(&insn->dest);
|
||||
DataType stype = sTypes[0];
|
||||
Instruction *i = mkOp1(getOperation(op), dType, newDefs[0], getSrc(&insn->src[0]));
|
||||
if (op == nir_op_f2i32 || op == nir_op_f2i64 || op == nir_op_f2u32 || op == nir_op_f2u64)
|
||||
if (::isFloatType(stype) && isIntType(dType))
|
||||
i->rnd = ROUND_Z;
|
||||
i->sType = sTypes[0];
|
||||
i->sType = stype;
|
||||
break;
|
||||
}
|
||||
// compare instructions
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue