[all-commits] [llvm/llvm-project] 996602: [AArch64][GlobalISel] When generating SUBS for com...
AE via All-commits
all-commits at lists.llvm.org
Sat May 23 23:29:22 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 99660217e930c131407766f68024f76acc375597
https://github.com/llvm/llvm-project/commit/99660217e930c131407766f68024f76acc375597
Author: Amara Emerson <aemerson at apple.com>
Date: 2020-05-23 (Sat, 23 May 2020)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/opt-fold-compare.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-arith-immed-compare.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-cmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/tbnz-slt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/tbz-sgt.mir
Log Message:
-----------
[AArch64][GlobalISel] When generating SUBS for compares, don't write to wzr/xzr.
Although writing to wzr/xzr is correct since we don't care about the result
of the sub, only the flags, doing so causes tail merge blocks to fail.
Writing to an unused virtual register instead allows the optimization to fire,
improving performance significantly on 256.bzip2.
Differential Revision: https://reviews.llvm.org/D80460
More information about the All-commits
mailing list