[all-commits] [llvm/llvm-project] 6c9066: Recommit "[AArch64] Fix incorrect `isLegalAddressi...
Momchil Velikov via All-commits
all-commits at lists.llvm.org
Fri Apr 21 08:21:26 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6c9066fe2ecc3fa04d857db864ee9a4d08b30740
https://github.com/llvm/llvm-project/commit/6c9066fe2ecc3fa04d857db864ee9a4d08b30740
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2023-04-21 (Fri, 21 Apr 2023)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-pre-inc-offset-check.ll
A llvm/unittests/Target/AArch64/AddressingModes.cpp
M llvm/unittests/Target/AArch64/CMakeLists.txt
Log Message:
-----------
Recommit "[AArch64] Fix incorrect `isLegalAddressingMode`"
This patch recommits 0827e2fa3fd15b49fd2d0fc676753f11abb60cab after
reverting it in ed7ada259f665a742561b88e9e6c078e9ea85224. Added
workround for `Targetlowering::AddrMode` no longer being an aggregate
in C++20.
`AArch64TargetLowering::isLegalAddressingMode` has a number of
defects, including accepting an addressing mode, which consists of
only an immediate operand, or not checking the offset range for an
addressing mode in the form `1*ScaledReg + Offs`.
This patch fixes the above issues.
Reviewed By: dmgreen
Differential Revision: https://reviews.llvm.org/D143895
Change-Id: I41a520c13ce21da503ca45019979bfceb8b648fa
More information about the All-commits
mailing list