[all-commits] [llvm/llvm-project] 1c32b6: [AArch64][ARM] Move ARM-specific InstCombine trans...
valadaptive via All-commits
all-commits at lists.llvm.org
Tue Dec 2 03:17:33 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 1c32b6f51ccaaf9c65be11d7dca9e5a476cddb5a
https://github.com/llvm/llvm-project/commit/1c32b6f51ccaaf9c65be11d7dca9e5a476cddb5a
Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
Date: 2025-12-02 (Tue, 02 Dec 2025)
Changed paths:
A llvm/include/llvm/Transforms/Utils/ARMCommonInstCombineIntrinsic.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
A llvm/lib/Transforms/Utils/ARMCommonInstCombineIntrinsic.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
M llvm/test/Transforms/InstCombine/AArch64/aes-intrinsics.ll
M llvm/test/Transforms/InstCombine/ARM/2012-04-23-Neon-Intrinsics.ll
M llvm/test/Transforms/InstCombine/ARM/aes-intrinsics.ll
M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
Log Message:
-----------
[AArch64][ARM] Move ARM-specific InstCombine transforms into `Transforms/Utils` (#169589)
Back when `TargetTransformInfo::instCombineIntrinsic` was added in
https://reviews.llvm.org/D81728, several transforms common to both ARM
and AArch64 were kept in the non-target-specific `InstCombineCalls.cpp`
so they could be shared between the two targets.
I want to extend the transform of the `tbl` intrinsics into static
`shufflevector`s in a similar manner to
https://github.com/llvm/llvm-project/pull/169110 (right now it only
works with a 64-bit `tbl1`, but `shufflevector` should allow it to work
with up to 2 operands, and it can definitely work with 128-bit vectors).
I think separating out the transform into a TTI hook is a prerequisite.
~~I'm not happy about creating an entirely new module for this and
having to wire it up through CMake and everything, but I'm not sure
about the alternatives. If any maintainers can think of a cleaner way of
doing this, I'm very open to it.~~
I've moved the transforms into
`Transforms/Utils/ARMCommonInstCombineIntrinsic.cpp`, which is a lot
simpler.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list