-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Labels
downstream-changeDownstream change to LLVM treeDownstream change to LLVM tree
Description
This issue tracks the downstream changes needed to enable sincos()
vectorization in the Arm toolchain. These changes are only for the release 20.x branch (https://github.com/arm/arm-toolchain/tree/release/arm-software/20.x) as we intend to complete up-streaming the changes for LLVM 21.
- (release 20.x non-upstream patch) [LV] Add initial support for vectorizing literal struct return values #82
- (release 20.x non-upstream patch) [clang] Lower non-builtin sincos[f|l] calls to llvm.sincos.* when -fno-math-errno is set #83
- (release 20.x non-upstream patch) [LV] Teach the vectorizer to cost and vectorize llvm.sincos intrinsics #84
- (Merged) Upstream PR: [CostModel] Handle vector struct results and cost
llvm.sincos
llvm/llvm-project#123210 - Behavior change:
sincos()
becomes vectorizable with-fveclib=ArmPL/SLEEF
- (Merged) Upstream PR: [CostModel] Handle vector struct results and cost
- [Downstream change][TargetParser] Parse Amazon Linux triple and handle RuntimeLibcalls #286
- Allows vectorization of sincos on
aarch64-amazon-linux
triple
- Allows vectorization of sincos on
The patches were not possible to upstream for LLVM 20 due to long review times.
Metadata
Metadata
Assignees
Labels
downstream-changeDownstream change to LLVM treeDownstream change to LLVM tree