diff options
Diffstat (limited to 'llvm/lib/AsmParser/LLLexer.cpp')
-rw-r--r-- | llvm/lib/AsmParser/LLLexer.cpp | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/llvm/lib/AsmParser/LLLexer.cpp b/llvm/lib/AsmParser/LLLexer.cpp index c9a982693fa7..a9cac4de0c2f 100644 --- a/llvm/lib/AsmParser/LLLexer.cpp +++ b/llvm/lib/AsmParser/LLLexer.cpp @@ -597,6 +597,8 @@ lltok::Kind LLLexer::LexIdentifier() { KEYWORD(arm_aapcs_vfpcc); KEYWORD(aarch64_vector_pcs); KEYWORD(aarch64_sve_vector_pcs); + KEYWORD(aarch64_sme_preservemost_from_x0); + KEYWORD(aarch64_sme_preservemost_from_x2); KEYWORD(msp430_intrcc); KEYWORD(avr_intrcc); KEYWORD(avr_signalcc); @@ -642,6 +644,15 @@ lltok::Kind LLLexer::LexIdentifier() { KEYWORD(DISPLAY_NAME); #include "llvm/IR/Attributes.inc" + KEYWORD(read); + KEYWORD(write); + KEYWORD(readwrite); + KEYWORD(argmem); + KEYWORD(inaccessiblemem); + KEYWORD(argmemonly); + KEYWORD(inaccessiblememonly); + KEYWORD(inaccessiblemem_or_argmemonly); + KEYWORD(type); KEYWORD(opaque); @@ -661,6 +672,8 @@ lltok::Kind LLLexer::LexIdentifier() { KEYWORD(xchg); KEYWORD(nand); KEYWORD(max); KEYWORD(min); KEYWORD(umax); KEYWORD(umin); KEYWORD(fmax); KEYWORD(fmin); + KEYWORD(uinc_wrap); + KEYWORD(udec_wrap); KEYWORD(vscale); KEYWORD(x); @@ -761,6 +774,14 @@ lltok::Kind LLLexer::LexIdentifier() { KEYWORD(byte); KEYWORD(bit); KEYWORD(varFlags); + KEYWORD(callsites); + KEYWORD(clones); + KEYWORD(stackIds); + KEYWORD(allocs); + KEYWORD(versions); + KEYWORD(memProf); + KEYWORD(notcold); + KEYWORD(notcoldandcold); #undef KEYWORD @@ -788,10 +809,7 @@ lltok::Kind LLLexer::LexIdentifier() { TYPEKEYWORD("token", Type::getTokenTy(Context)); if (Keyword == "ptr") { - // setOpaquePointers() must be called before creating any pointer types. - if (!Context.hasSetOpaquePointersValue()) { - Context.setOpaquePointers(true); - } else if (Context.supportsTypedPointers()) { + if (Context.supportsTypedPointers()) { Warning("ptr type is only supported in -opaque-pointers mode"); return lltok::Error; } |