[all-commits] [llvm/llvm-project] 953a98: [AArch64][SVE] Fold target specific ext/trunc node...
Bradley Smith via All-commits
all-commits at lists.llvm.org
Mon Jul 25 08:24:27 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 953a98ef8dbf66f7177e473f7ca2b6aff1a186c0
https://github.com/llvm/llvm-project/commit/953a98ef8dbf66f7177e473f7ca2b6aff1a186c0
Author: Bradley Smith <bradley.smith at arm.com>
Date: 2022-07-25 (Mon, 25 Jul 2022)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/insert-subvector-res-legalization.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-to-int.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-int-div.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
A llvm/test/CodeGen/AArch64/sve-uunpklo-load-uzp1-store-combine.ll
Log Message:
-----------
[AArch64][SVE] Fold target specific ext/trunc nodes into loads/stores
Due to the way fixed length SVE lowering works, we sometimes introduce
ext/trunc nodes very late, these nodes then immediately get converted
into target specific nodes (UUNPKLO/UZP1) before they get a chance to be
folded into a load/store.
This patch introduces target specific dag combines for these nodes so that
we can still create extending loads/truncating stores out of them.
Differential Revision: https://reviews.llvm.org/D128065
More information about the All-commits
mailing list