[PATCH] D115620: [AArch64] Lowering and legalization of strict FP16

John Brawn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 13 03:26:28 PST 2021


john.brawn created this revision.
john.brawn added reviewers: t.p.northover, kpn, dmgreen, bsmith.
Herald added subscribers: hiraditya, kristof.beyls.
john.brawn requested review of this revision.
Herald added a project: LLVM.

For strict FP16 to work correctly needs some changes in lowering and legalization:

- SelectionDAGLegalize::PromoteNode was missing handling for some strict fp opcodes.
- Some of the custom lowering of strict fp operations needed to be adjusted to work with FP16.
- Custom lowering needed to be added for round-to-int operations.

With this, and the previous patch for the rest of the strict fp isel, we can set IsStrictFPEnabled = true.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D115620

Files:
  llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  llvm/test/CodeGen/AArch64/fp-intrinsics-fp16.ll
  llvm/test/CodeGen/AArch64/fp-intrinsics.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D115620.393826.patch
Type: text/x-patch
Size: 55617 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211213/9182f9f3/attachment-0001.bin>


More information about the llvm-commits mailing list