aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Transforms/Utils/BasicBlockUtilsTest.cpp
diff options
context:
space:
mode:
authorJonathan Thackray <jonathan.thackray@arm.com>2025-10-23 23:31:33 +0100
committerGitHub <noreply@github.com>2025-10-23 23:31:33 +0100
commit66e8270e8f3cd5a291e48097095c4f547ddf417d (patch)
tree6d2a6d4b64a909bd8fd7554678387e96d8f18ff0 /llvm/unittests/Transforms/Utils/BasicBlockUtilsTest.cpp
parentf28224b78f9ef8c0017a62b9db19338fbd051394 (diff)
downloadllvm-66e8270e8f3cd5a291e48097095c4f547ddf417d.zip
llvm-66e8270e8f3cd5a291e48097095c4f547ddf417d.tar.gz
llvm-66e8270e8f3cd5a291e48097095c4f547ddf417d.tar.bz2
[AArch64][llvm] Armv9.7-A: Add support for TLBI Domains (FEAT_TLBID) (#163156)
Allow the following `TLBI` operation types to take an optional register operand when enabled by `FEAT_TLBID`: - ALL* - VMALL* - VMALLS12* - VMALLWS2* as documented here: * https://developer.arm.com/documentation/ddi0602/2025-09/ * https://developer.arm.com/documentation/109697/2025_09/2025-Architecture-Extensions Notes on implementation: Currently, AArch64 `SYS` alias instructions fall into two categories: * a register value must be present (indicated by any value except `XZR`) * no register value must be present (this value must be `XZR`) When +tblid is enabled, `SYS` aliases are now allowed to take an optional register, or no register as before. We need an extra tablegen flag to indicate if the register is optional or not (the existing "NeedsReg" flag is binary and not suitable; the register is either present or absent, not either for a specific TLBI operation) Don't produce an error message if the register operand is missing or unexpected, if it is specified as an optional register.
Diffstat (limited to 'llvm/unittests/Transforms/Utils/BasicBlockUtilsTest.cpp')
0 files changed, 0 insertions, 0 deletions