X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FAsmParser%2FLLToken.h;h=57218dafbb9ba4f8404e3ee93025810744996faf;hb=415561b6e077fb4dda5d59c699829c9e7d39e08e;hp=b78a09d43e2474095edab95b13b1e8a1ded33a9f;hpb=1224c386981f7948f298ed9ad444c40609570f2e;p=oota-llvm.git diff --git a/lib/AsmParser/LLToken.h b/lib/AsmParser/LLToken.h index b78a09d43e2..57218dafbb9 100644 --- a/lib/AsmParser/LLToken.h +++ b/lib/AsmParser/LLToken.h @@ -11,8 +11,8 @@ // //===----------------------------------------------------------------------===// -#ifndef LIBS_ASMPARSER_LLTOKEN_H -#define LIBS_ASMPARSER_LLTOKEN_H +#ifndef LLVM_LIB_ASMPARSER_LLTOKEN_H +#define LLVM_LIB_ASMPARSER_LLTOKEN_H namespace llvm { namespace lltok { @@ -28,32 +28,48 @@ namespace lltok { lbrace, rbrace, // { } less, greater, // < > lparen, rparen, // ( ) - backslash, // \ (not /) + exclaim, // ! kw_x, - kw_begin, kw_end, kw_true, kw_false, kw_declare, kw_define, kw_global, kw_constant, - kw_private, kw_linker_private, kw_internal, kw_linkonce, kw_linkonce_odr, - kw_weak, kw_weak_odr, kw_appending, kw_dllimport, kw_dllexport, kw_common, - kw_available_externally, + kw_private, + kw_internal, + kw_linkonce, kw_linkonce_odr, + kw_weak, // Used as a linkage, and a modifier for "cmpxchg". + kw_weak_odr, kw_appending, + kw_dllimport, kw_dllexport, kw_common, kw_available_externally, kw_default, kw_hidden, kw_protected, + kw_unnamed_addr, + kw_externally_initialized, kw_extern_weak, kw_external, kw_thread_local, + kw_localdynamic, kw_initialexec, kw_localexec, kw_zeroinitializer, kw_undef, kw_null, kw_to, kw_tail, + kw_musttail, kw_target, kw_triple, - kw_deplibs, + kw_unwind, + kw_deplibs, // FIXME: Remove in 4.0 kw_datalayout, kw_volatile, - kw_signed, - kw_unsigned, + kw_atomic, + kw_unordered, kw_monotonic, kw_acquire, kw_release, kw_acq_rel, kw_seq_cst, + kw_singlethread, + kw_nnan, + kw_ninf, + kw_nsz, + kw_arcp, + kw_fast, + kw_nuw, + kw_nsw, kw_exact, + kw_inbounds, kw_align, kw_addrspace, kw_section, @@ -61,42 +77,86 @@ namespace lltok { kw_module, kw_asm, kw_sideeffect, + kw_alignstack, + kw_inteldialect, kw_gc, + kw_prefix, + kw_prologue, kw_c, kw_cc, kw_ccc, kw_fastcc, kw_coldcc, - kw_x86_stdcallcc, kw_x86_fastcallcc, + kw_intel_ocl_bicc, + kw_x86_stdcallcc, kw_x86_fastcallcc, kw_x86_thiscallcc, kw_x86_vectorcallcc, kw_arm_apcscc, kw_arm_aapcscc, kw_arm_aapcs_vfpcc, - - kw_signext, - kw_zeroext, + kw_msp430_intrcc, + kw_ptx_kernel, kw_ptx_device, + kw_spir_kernel, kw_spir_func, + kw_x86_64_sysvcc, kw_x86_64_win64cc, + kw_webkit_jscc, kw_anyregcc, + kw_preserve_mostcc, kw_preserve_allcc, + kw_ghccc, + + // Attributes: + kw_attributes, + kw_alwaysinline, + kw_sanitize_address, + kw_builtin, + kw_byval, + kw_inalloca, + kw_cold, + kw_dereferenceable, + kw_inlinehint, kw_inreg, - kw_sret, - kw_nounwind, - kw_noreturn, + kw_jumptable, + kw_minsize, + kw_naked, + kw_nest, kw_noalias, + kw_nobuiltin, kw_nocapture, - kw_byval, - kw_nest, - kw_readnone, - kw_readonly, - + kw_noduplicate, + kw_noimplicitfloat, kw_noinline, - kw_alwaysinline, + kw_nonlazybind, + kw_nonnull, + kw_noredzone, + kw_noreturn, + kw_nounwind, + kw_optnone, kw_optsize, + kw_readnone, + kw_readonly, + kw_returned, + kw_returns_twice, + kw_signext, kw_ssp, kw_sspreq, - kw_noredzone, - kw_noimplicitfloat, - kw_naked, + kw_sspstrong, + kw_sret, + kw_sanitize_thread, + kw_sanitize_memory, + kw_uwtable, + kw_zeroext, kw_type, kw_opaque, + kw_comdat, + + // Comdat types + kw_any, + kw_exactmatch, + kw_largest, + kw_noduplicates, + kw_samesize, + kw_eq, kw_ne, kw_slt, kw_sgt, kw_sle, kw_sge, kw_ult, kw_ugt, kw_ule, kw_uge, kw_oeq, kw_one, kw_olt, kw_ogt, kw_ole, kw_oge, kw_ord, kw_uno, kw_ueq, kw_une, + // atomicrmw operations that aren't also instruction keywords. + kw_xchg, kw_nand, kw_max, kw_min, kw_umax, kw_umin, + // Instruction Opcodes (Opcode in UIntVal). kw_add, kw_fadd, kw_sub, kw_fsub, kw_mul, kw_fmul, kw_udiv, kw_sdiv, kw_fdiv, @@ -106,27 +166,43 @@ namespace lltok { kw_phi, kw_call, kw_trunc, kw_zext, kw_sext, kw_fptrunc, kw_fpext, kw_uitofp, kw_sitofp, kw_fptoui, kw_fptosi, kw_inttoptr, kw_ptrtoint, kw_bitcast, + kw_addrspacecast, kw_select, kw_va_arg, - kw_ret, kw_br, kw_switch, kw_invoke, kw_unwind, kw_unreachable, + kw_landingpad, kw_personality, kw_cleanup, kw_catch, kw_filter, - kw_malloc, kw_alloca, kw_free, kw_load, kw_store, kw_getelementptr, + kw_ret, kw_br, kw_switch, kw_indirectbr, kw_invoke, kw_resume, + kw_unreachable, - kw_extractelement, kw_insertelement, kw_shufflevector, kw_getresult, - kw_extractvalue, kw_insertvalue, + kw_alloca, kw_load, kw_store, kw_fence, kw_cmpxchg, kw_atomicrmw, + kw_getelementptr, + + kw_extractelement, kw_insertelement, kw_shufflevector, + kw_extractvalue, kw_insertvalue, kw_blockaddress, + + // Metadata types. + kw_distinct, + + // Use-list order directives. + kw_uselistorder, kw_uselistorder_bb, // Unsigned Valued tokens (UIntVal). GlobalID, // @42 LocalVarID, // %42 + AttrGrpID, // #42 // String valued tokens (StrVal). LabelStr, // foo: GlobalVar, // @foo @"foo" + ComdatVar, // $foo LocalVar, // %foo %"foo" + MetadataVar, // !foo StringConstant, // "foo" - - // Metadata valued tokens. - Metadata, // !"foo" !{i8 42} + DwarfTag, // DW_TAG_foo + DwarfAttEncoding, // DW_ATE_foo + DwarfVirtuality, // DW_VIRTUALITY_foo + DwarfLang, // DW_LANG_foo + DwarfOp, // DW_OP_foo // Type valued tokens (TyVal). Type,