summaryrefslogtreecommitdiffstats
path: root/llvm/lib/AsmParser
diff options
context:
space:
mode:
authorTilmann Scheller <tilmann.scheller@googlemail.com>2011-03-02 19:29:22 +0000
committerTilmann Scheller <tilmann.scheller@googlemail.com>2011-03-02 19:29:22 +0000
commita3769f802179ff364e97050c3c4675ee2a503cb3 (patch)
treedca905687467e24bf0bd375f5b0a143be9fe00ec /llvm/lib/AsmParser
parent64f38ae7eee37a6698d534bc430be4039ee5ca5d (diff)
downloadbcm5719-llvm-a3769f802179ff364e97050c3c4675ee2a503cb3.tar.gz
bcm5719-llvm-a3769f802179ff364e97050c3c4675ee2a503cb3.zip
Add Win64 thiscall calling convention.
llvm-svn: 126862
Diffstat (limited to 'llvm/lib/AsmParser')
-rw-r--r--llvm/lib/AsmParser/LLLexer.cpp1
-rw-r--r--llvm/lib/AsmParser/LLParser.cpp2
-rw-r--r--llvm/lib/AsmParser/LLToken.h1
3 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/AsmParser/LLLexer.cpp b/llvm/lib/AsmParser/LLLexer.cpp
index 857fa1ef626..c8bbd051f6d 100644
--- a/llvm/lib/AsmParser/LLLexer.cpp
+++ b/llvm/lib/AsmParser/LLLexer.cpp
@@ -549,6 +549,7 @@ lltok::Kind LLLexer::LexIdentifier() {
KEYWORD(msp430_intrcc);
KEYWORD(ptx_kernel);
KEYWORD(ptx_device);
+ KEYWORD(win64_thiscallcc);
KEYWORD(cc);
KEYWORD(c);
diff --git a/llvm/lib/AsmParser/LLParser.cpp b/llvm/lib/AsmParser/LLParser.cpp
index fc10c040547..ed97b401db8 100644
--- a/llvm/lib/AsmParser/LLParser.cpp
+++ b/llvm/lib/AsmParser/LLParser.cpp
@@ -1087,6 +1087,7 @@ bool LLParser::ParseOptionalVisibility(unsigned &Res) {
/// ::= 'msp430_intrcc'
/// ::= 'ptx_kernel'
/// ::= 'ptx_device'
+/// ::= 'win64_thiscallcc'
/// ::= 'cc' UINT
///
bool LLParser::ParseOptionalCallingConv(CallingConv::ID &CC) {
@@ -1104,6 +1105,7 @@ bool LLParser::ParseOptionalCallingConv(CallingConv::ID &CC) {
case lltok::kw_msp430_intrcc: CC = CallingConv::MSP430_INTR; break;
case lltok::kw_ptx_kernel: CC = CallingConv::PTX_Kernel; break;
case lltok::kw_ptx_device: CC = CallingConv::PTX_Device; break;
+ case lltok::kw_win64_thiscallcc:CC = CallingConv::Win64_ThisCall; break;
case lltok::kw_cc: {
unsigned ArbitraryCC;
Lex.Lex();
diff --git a/llvm/lib/AsmParser/LLToken.h b/llvm/lib/AsmParser/LLToken.h
index 576da191aec..7f36637292b 100644
--- a/llvm/lib/AsmParser/LLToken.h
+++ b/llvm/lib/AsmParser/LLToken.h
@@ -74,6 +74,7 @@ namespace lltok {
kw_arm_apcscc, kw_arm_aapcscc, kw_arm_aapcs_vfpcc,
kw_msp430_intrcc,
kw_ptx_kernel, kw_ptx_device,
+ kw_win64_thiscallcc,
kw_signext,
kw_zeroext,
OpenPOWER on IntegriCloud