[all-commits] [llvm/llvm-project] 618080: [AArch64][SVE] Mark fixed-type FP extending/trunca...
Bradley Smith via All-commits
all-commits at lists.llvm.org
Mon Nov 29 03:57:37 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 61808066325ff0828bab7f016e8798b78d2e6b49
https://github.com/llvm/llvm-project/commit/61808066325ff0828bab7f016e8798b78d2e6b49
Author: Bradley Smith <bradley.smith at arm.com>
Date: 2021-11-29 (Mon, 29 Nov 2021)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-extend-trunc.ll
Log Message:
-----------
[AArch64][SVE] Mark fixed-type FP extending/truncating loads/stores as custom
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.
Differential Revision: https://reviews.llvm.org/D114580
More information about the All-commits
mailing list