| Issue |
173270
|
| Summary |
[X86] X86TTIImpl::instCombineIntrinsic - attempt to use llvm::computeKnownFPClass to generalise SSE/AVX fp MAX/MIN intrinsic
|
| Labels |
good first issue,
backend:X86,
llvm:instcombine
|
| Assignees |
|
| Reporter |
RKSimon
|
If we are certain that the inputs to MAXPD/S/H and MINPD/S/H are Neg/Pos Normal (not SubNormal) or PosZero (not NegZero!) values then we can safely generalize them to the generic MAXNUM/MINNUM intrinsics.
Most likely this is if each input originated as constants in a select, or maybe a conversion from an integer, but computeKnownFPClass should handle much of this for us - but we still need to have adequate test coverage.
Some of this is tricky due to https://discourse.llvm.org/t/rfc-a-consistent-set-of-semantics-for-the-floating-point-minimum-and-maximum-operations - hence for now we should not accept any NAN/INF/SUBNORMAL inputs, even though X86ISelLowering can usually handle them in combineFMinNumFMaxNum.
CC @phoebewang
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs