aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/CommandLine.cpp
diff options
context:
space:
mode:
authorDavid Green <david.green@arm.com>2022-06-07 18:57:59 +0100
committerDavid Green <david.green@arm.com>2022-06-07 18:57:59 +0100
commitbccbf5276e6ee23a427b48d80ad42ff31575c1e7 (patch)
tree8e49369e16a4e479ed6a1318cbfcd717246c5aa9 /llvm/lib/Support/CommandLine.cpp
parentc7fa4e8a8bc41e52cc49a27e0495d67d730fa167 (diff)
downloadllvm-bccbf5276e6ee23a427b48d80ad42ff31575c1e7.zip
llvm-bccbf5276e6ee23a427b48d80ad42ff31575c1e7.tar.gz
llvm-bccbf5276e6ee23a427b48d80ad42ff31575c1e7.tar.bz2
[AArch64] Remove isDef32
isDef32 would attempt to make a guess at which SelectionDag nodes were 32bit sources, and use the nature of 32bit AArch64 instructions implicitly zeroing the upper register half to not emit zext that were expected to already be zero. This was a bit fragile though, needing to guess at the correct opcodes that do not become 32bit defs later in ISel. This patch removed isDef32, relying on the AArch64MIPeephole optimizer to remove redundant SUBREG_TO_REG nodes. A part of SelectArithExtendedRegister was left with the same logic as a heuristic to prevent some regressions from it picking less optimal sequences. The AArch64MIPeepholeOpt pass also needs to be taught that a COPY from a FPR will become a FMOVSWr, which it lowers immediately to make sure that remains true through register allocation. Fixes #55833 Differential Revision: https://reviews.llvm.org/D127154
Diffstat (limited to 'llvm/lib/Support/CommandLine.cpp')
0 files changed, 0 insertions, 0 deletions