Skip to content

CL: Fix IsNormal support and add IsFinite

Jesse Natalie requested to merge jenatali/mesa:fisfinite into msclc-d3d12

Not sure why I didn't hit this when adding isnormal support, but there's a few flaws:

  • The assert in emit_unary_intin` was too aggressive, and keying off the dest type for overloads was wrong, it should be the source for all unary ops.
  • The special float queries don't go to dx.op.unary or dx.op.unaryBits, they go to dx.op.isSpecialFloat (unary which returns a bool, rather than overload type or i32).

After that, hook up a nir intrinsic to vtn and to DXIL for isfinite as well. Both are needed by the bruteforce test.

Edited by Jesse Natalie

Merge request reports