aboutsummaryrefslogtreecommitdiff
path: root/lldb/packages/Python/lldbsuite/test/configuration.py
diff options
context:
space:
mode:
authorRodolfo Wottrich <rgwott@users.noreply.github.com>2025-06-20 21:14:52 +0100
committerGitHub <noreply@github.com>2025-06-20 21:14:52 +0100
commit3b9795b3d3b249a5a3052a44f2c1ad7268ed34c6 (patch)
tree5e02be28777e151aba3d4b605cacf294c4de6fcc /lldb/packages/Python/lldbsuite/test/configuration.py
parentf8ffb4e7cd94b661c3edd323f3dd85dc77892c16 (diff)
downloadllvm-3b9795b3d3b249a5a3052a44f2c1ad7268ed34c6.zip
llvm-3b9795b3d3b249a5a3052a44f2c1ad7268ed34c6.tar.gz
llvm-3b9795b3d3b249a5a3052a44f2c1ad7268ed34c6.tar.bz2
[AArch64] Add CodeGen support for scalar FEAT_CPA (#105669)
CPA stands for Checked Pointer Arithmetic and is part of the 2023 MTE architecture extensions for A-profile. The new CPA instructions perform regular pointer arithmetic (such as base register + offset) but check for overflow in the most significant bits of the result, enhancing security by detecting address tampering. In this patch we intend to capture the semantics of pointer arithmetic when it is not folded into loads/stores, then generate the appropriate scalar CPA instructions. In order to preserve pointer arithmetic semantics through the backend, we use the PTRADD SelectionDAG node type. Use backend option `-aarch64-use-featcpa-codegen=true` to enable CPA CodeGen (for a target with CPA enabled). The story of this PR is that initially it introduced the PTRADD SelectionDAG node and the respective visitPTRADD() function, adapted from the CHERI/Morello LLVM tree. The original authors are @davidchisnall, @jrtc27, @arichardson. After a while, @ritter-x2a took the part of the code that was target-independent and merged it separately in #140017. This PR thus remains as the AArch64-part only. Mode details about the CPA extension can be found at: - https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/arm-a-profile-architecture-developments-2023 - https://developer.arm.com/documentation/ddi0602/2023-09/ (e.g ADDPT instruction) This PR follows #79569. It does not address vector FEAT_CPA instructions.
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/configuration.py')
0 files changed, 0 insertions, 0 deletions