[PATCH] D114580: [AArch64][SVE] Mark fixed-type FP extending/truncating loads/stores as custom

Bradley Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 25 04:12:49 PST 2021


bsmith created this revision.
bsmith added reviewers: paulwalker-arm, peterwaller-arm, sdesmalen.
Herald added subscribers: ecnelises, psnobl, hiraditya, kristof.beyls, tschuett.
Herald added a reviewer: efriedma.
bsmith requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This allows the generic DAG combine to fold fp_extend/fp_trunc into
loads/stores which we can then lower into a integer extending
load/truncating store plus an FP_EXTEND/FP_ROUND.

The nuance here is that fixed-type FP_EXTEND/FP_ROUND require unpacked
types hence lowering them introduces an unpack/zip. By allowing these
nodes to be combined with loads/store we make it much easier to have
this unpack/zip combined into the load/store by our custom lowering.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D114580

Files:
  llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  llvm/test/CodeGen/AArch64/sve-fixed-length-fp-extend-trunc.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D114580.389733.patch
Type: text/x-patch
Size: 16649 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211125/170e913d/attachment.bin>


More information about the llvm-commits mailing list