[all-commits] [llvm/llvm-project] 075c44: [AArch64][SVE] Put zeroing pseudos and patterns un...
sdesmalen-arm via All-commits
all-commits at lists.llvm.org
Thu Jul 2 06:25:40 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 075c440f7bc8f38b2e484a1f31c803f470dab7d4
https://github.com/llvm/llvm-project/commit/075c440f7bc8f38b2e484a1f31c803f470dab7d4
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2020-07-02 (Thu, 02 Jul 2020)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/test/CodeGen/AArch64/sve-intrinsics-fp-arith-merging.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-shifts-merging.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-uniform-dsp-zeroing.ll
Log Message:
-----------
[AArch64][SVE] Put zeroing pseudos and patterns under flag.
This patch puts the _ZERO pseudos and corresponding patterns
under the predicate 'UseExperimentalZeroingPseudos', so that they
can be enabled/disabled through compile flags.
This is done because the zeroing pseudos use MOVPRFX to do merging of
the inactive lanes, but it depends on the uarch whether this operation
is actually merged with the destructive operation. If not, it may be
more profitable to use a SELECT and to give the compiler the freedom to
schedule these instructions as normal, rather than keeping them bundled
together. Additionally, this feature is not yet fully implemented and
there are still known bugs (see D80410) that need to be resolved before
the 'experimental' can be dropped from the name.
Reviewers: paulwalker-arm, cameron.mcinally, efriedma
Reviewed By: paulwalker-arm
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D82780
More information about the All-commits
mailing list