The GitHub Actions job "Lint" on tvm.git/fix/cuda-min-max-nan has failed.
Run started by GitHub user LngelKyo (triggered by LngelKyo).

Head commit for run:
cbe6a062df6c3c37b0499853553c386c1606e0f7 / LngelKyo <[email protected]>
[Fix][CUDA] Constant-operand fast paths for NaN-preserving min/max

Match #20054's four constant-operand cases (host side, min_max_utils.h):
- lhs is a constant NaN (FloatImm or Broadcast of FloatImm): printed
  directly as the surviving operand;
- lhs is a constant non-NaN: ordered compare, b's NaN makes the compare
  false and b is kept;
- rhs is a constant NaN: ((a != a) ? a : b) keeps a on any outcome;
- rhs is a constant non-NaN: reversed non-strict compare (< -> >=,
  > -> <=) so a's NaN makes the compare false and a survives; ties take
  b.

The constant side is not SSA-bound (no side effects); the non-constant
side is bound once inside its own scope, matching the chained-statement
fix. Helper AsFloatImm (FloatImm or Broadcast of FloatImm) lives in the
anonymous namespace of codegen_cuda.cc, noted as sharing semantics with
#20054's min_max_utils.h so the two can be merged later.

Tests mirror #20054's test_min_max_float_imm_operand: data
[nan, -0.0, 0.0, -1.0, 1.0, inf, -inf, 2.0], parameterized op (2) x
const_side (2) x const in {0.0, NaN} (2) x form {scalar, vec4} (2) =
32 cases, bitwise against np.where(cmp | isnan(lhs), lhs, rhs).

Report URL: https://github.com/apache/tvm/actions/runs/35669401104

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to