diff options
author | Andres Chavarria <84650073+chavandres@users.noreply.github.com> | 2025-04-07 16:50:30 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-08 00:50:30 +0200 |
commit | 9b63a92ca723293dfe8570d1b2881ce949f1f6cc (patch) | |
tree | d66fbac734bdb6e5dca4986c03797e2fb5023275 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 9ce45579781317aade2004e970b352c0e06af291 (diff) | |
download | llvm-9b63a92ca723293dfe8570d1b2881ce949f1f6cc.zip llvm-9b63a92ca723293dfe8570d1b2881ce949f1f6cc.tar.gz llvm-9b63a92ca723293dfe8570d1b2881ce949f1f6cc.tar.bz2 |
Implement areInlineCompatible for SystemZ using feature bitset (#132976)
## What?
Implement `areInlineCompatible` for the SystemZ target using
FeatureBitset comparison.
## Why?
The default implementation in `TargetTransformInfoImpl.h` makes a string
comparison and only inlines when the target-cpu and the target-features
for caller and callee are the same. We are missing out on optimizations
when the callee has a subset of features of the caller.
## How?
Get the FeatureBitset of the caller and callee and check when callee is
a subset or equal to the caller's features. It's a similar
implementation to ARM, PowerPC...
## Testing?
Test cases check for when the callee is a subset of the caller, when
it's not a subset and when both are equals.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions