aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/AsmParser/LLParser.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2025-09-23 00:37:36 +0900
committerGitHub <noreply@github.com>2025-09-23 00:37:36 +0900
commit6438d01e65797a2b42c110e951f7214a9c8f3f9d (patch)
tree05b21d2b6af8f8b8be9451f9114780319b22b2b8 /llvm/lib/AsmParser/LLParser.cpp
parent9b9b9c631b5fe40996650f63dc8e0d253ff3a6b7 (diff)
downloadllvm-6438d01e65797a2b42c110e951f7214a9c8f3f9d.zip
llvm-6438d01e65797a2b42c110e951f7214a9c8f3f9d.tar.gz
llvm-6438d01e65797a2b42c110e951f7214a9c8f3f9d.tar.bz2
[CHERI] Add enum values and LL parse/print support for CHERIoT calling conventions. (#156328)
This is the set of the calling conventions supported by the CHERIoT downstream of LLVM. --------- Co-authored-by: Nikita Popov <github@npopov.com>
Diffstat (limited to 'llvm/lib/AsmParser/LLParser.cpp')
-rw-r--r--llvm/lib/AsmParser/LLParser.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/AsmParser/LLParser.cpp b/llvm/lib/AsmParser/LLParser.cpp
index 8739b24..897e679 100644
--- a/llvm/lib/AsmParser/LLParser.cpp
+++ b/llvm/lib/AsmParser/LLParser.cpp
@@ -2315,6 +2315,15 @@ bool LLParser::parseOptionalCallingConv(unsigned &CC) {
#undef CC_VLS_CASE
}
return false;
+ case lltok::kw_cheriot_compartmentcallcc:
+ CC = CallingConv::CHERIoT_CompartmentCall;
+ break;
+ case lltok::kw_cheriot_compartmentcalleecc:
+ CC = CallingConv::CHERIoT_CompartmentCallee;
+ break;
+ case lltok::kw_cheriot_librarycallcc:
+ CC = CallingConv::CHERIoT_LibraryCall;
+ break;
case lltok::kw_cc: {
Lex.Lex();
return parseUInt32(CC);