[PATCH] D52450: [Intrinsic] Add llvm.minnan and llvm.maxnan instrinsic functions

Thomas Lively via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 24 21:01:14 PDT 2018


tlively created this revision.
tlively added reviewers: aheejin, dschuff, sunfish.
Herald added subscribers: llvm-commits, kristina, dexonsmith.

These are NaN-propagating versions of llvm.minnum and
llvm.maxnum. These intrinsics lower to the existing fminnan and
fmaxnan instruction selection DAG nodes, so targets that already
support lowering from these nodes should not need to do anything.

WebAssembly in particular requires these intrinsic functions to exist
in order to make its min and max instructions generally available at
the IR level.


Repository:
  rL LLVM

https://reviews.llvm.org/D52450

Files:
  docs/LangRef.rst
  include/llvm/ADT/APFloat.h
  include/llvm/IR/Intrinsics.td
  lib/Analysis/ConstantFolding.cpp
  lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  test/Analysis/ConstantFolding/min-max.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52450.166801.patch
Type: text/x-patch
Size: 9649 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180925/d6498e26/attachment.bin>


More information about the llvm-commits mailing list