[PATCH] D61390: [CodeGen] Add lround/llround builtins

Adhemerval Zanella via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 1 11:20:58 PDT 2019


zatrazz created this revision.
zatrazz added reviewers: efriedma, rengolin, javed.absar, huntergr, SjoerdMeijer, t.p.northover, echristo, evandro.
zatrazz added a project: LLVM.
Herald added subscribers: hiraditya, kristof.beyls.

This patch add the ISD::LROUND and ISD::LLROUND along with new
intrinsics.  The changes are straightforward as for other
floating-point rounding functions, with just some adjustments
required to handle the return value being an interger.

The idea is to optimize lround/llround generation for AArch64
in a subsequent patch.  Current semantic is just route it to libm
symbol.


Repository:
  rL LLVM

https://reviews.llvm.org/D61390

Files:
  llvm/docs/LangRef.rst
  llvm/include/llvm/CodeGen/ISDOpcodes.h
  llvm/include/llvm/IR/Intrinsics.td
  llvm/include/llvm/IR/RuntimeLibcalls.def
  llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
  llvm/lib/CodeGen/TargetLoweringBase.cpp
  llvm/test/CodeGen/AArch64/llround-conv.ll
  llvm/test/CodeGen/AArch64/lround-conv.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61390.197598.patch
Type: text/x-patch
Size: 13755 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190501/0d3e7697/attachment.bin>


More information about the llvm-commits mailing list