[PATCH] D87571: [DAGCombiner] Fold fmin/fmax with INF

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Sep 12 15:27:47 PDT 2020


nikic created this revision.
nikic added reviewers: spatel, RKSimon, craig.topper.
Herald added subscribers: llvm-commits, ecnelises, hiraditya.
Herald added a project: LLVM.
nikic requested review of this revision.

Similar to D87415 <https://reviews.llvm.org/D87415>, this folds the various float min/max opcodes with a constant INF or -INF operand. Some of the folds are only possible under nnan.

The `fminnum(X, INF) with nnan` and `fmaxnum(X, -INF) with nnan` cases are needed to improve the VECREDUCE_FMIN/FMAX lowerings on X86, the rest is here for the sake of completeness.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D87571

Files:
  llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  llvm/test/CodeGen/ARM/fminmax-folds.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D87571.291422.patch
Type: text/x-patch
Size: 9871 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200912/985b756b/attachment.bin>


More information about the llvm-commits mailing list