X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FAsmParser%2FLLToken.h;h=d22ecf31bdaebbc1ea7b07c112ff5efe22e9a8b9;hb=cd00dc6852d17aa24f667a1060d2de83cd6423f0;hp=78286005b8bd0ecc5538be43dbacad99fc6918d7;hpb=df98617b23315e427cc4fad8ccfdd50d68bec2f9;p=oota-llvm.git diff --git a/lib/AsmParser/LLToken.h b/lib/AsmParser/LLToken.h index 78286005b8b..d22ecf31bda 100644 --- a/lib/AsmParser/LLToken.h +++ b/lib/AsmParser/LLToken.h @@ -19,7 +19,7 @@ namespace lltok { enum Kind { // Markers Eof, Error, - + // Tokens with no info. dotdotdot, // ... equal, comma, // = , @@ -28,16 +28,20 @@ namespace lltok { lbrace, rbrace, // { } less, greater, // < > lparen, rparen, // ( ) - backslash, // \ / - + backslash, // \ (not /) + exclaim, // ! + kw_x, - kw_begin, kw_end, kw_true, kw_false, kw_declare, kw_define, kw_global, kw_constant, - - kw_internal, kw_linkonce, kw_weak, kw_appending, kw_dllimport, - kw_dllexport, kw_common, kw_default, kw_hidden, kw_protected, + + kw_private, kw_linker_private, kw_linker_private_weak, + kw_linker_private_weak_def_auto, kw_internal, + kw_linkonce, kw_linkonce_odr, kw_weak, kw_weak_odr, kw_appending, + kw_dllimport, kw_dllexport, kw_common, kw_available_externally, + kw_default, kw_hidden, kw_protected, + kw_unnamed_addr, kw_extern_weak, kw_external, kw_thread_local, kw_zeroinitializer, @@ -49,6 +53,13 @@ namespace lltok { kw_deplibs, kw_datalayout, kw_volatile, + kw_atomic, + kw_unordered, kw_monotonic, kw_acquire, kw_release, kw_acq_rel, kw_seq_cst, + kw_singlethread, + kw_nuw, + kw_nsw, + kw_exact, + kw_inbounds, kw_align, kw_addrspace, kw_section, @@ -56,11 +67,16 @@ namespace lltok { kw_module, kw_asm, kw_sideeffect, + kw_alignstack, kw_gc, kw_c, - - kw_cc, kw_ccc, kw_fastcc, kw_coldcc, kw_x86_stdcallcc, kw_x86_fastcallcc, - + + kw_cc, kw_ccc, kw_fastcc, kw_coldcc, + kw_x86_stdcallcc, kw_x86_fastcallcc, kw_x86_thiscallcc, + kw_arm_apcscc, kw_arm_aapcscc, kw_arm_aapcs_vfpcc, + kw_msp430_intrcc, + kw_ptx_kernel, kw_ptx_device, + kw_signext, kw_zeroext, kw_inreg, @@ -73,52 +89,68 @@ namespace lltok { kw_nest, kw_readnone, kw_readonly, - + kw_uwtable, + + kw_inlinehint, kw_noinline, kw_alwaysinline, kw_optsize, kw_ssp, kw_sspreq, - + kw_noredzone, + kw_noimplicitfloat, + kw_naked, + kw_hotpatch, + kw_nonlazybind, + kw_type, kw_opaque, - + 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_sub, kw_mul, kw_udiv, kw_sdiv, kw_fdiv, + kw_add, kw_fadd, kw_sub, kw_fsub, kw_mul, kw_fmul, + kw_udiv, kw_sdiv, kw_fdiv, kw_urem, kw_srem, kw_frem, kw_shl, kw_lshr, kw_ashr, - kw_and, kw_or, kw_xor, kw_icmp, kw_fcmp, kw_vicmp, kw_vfcmp, - + kw_and, kw_or, kw_xor, kw_icmp, kw_fcmp, + 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_select, kw_va_arg, - - kw_ret, kw_br, kw_switch, kw_invoke, kw_unwind, kw_unreachable, - - kw_malloc, kw_alloca, kw_free, kw_load, kw_store, kw_getelementptr, - - kw_extractelement, kw_insertelement, kw_shufflevector, kw_getresult, - kw_extractvalue, kw_insertvalue, - + + kw_landingpad, kw_personality, kw_cleanup, kw_catch, kw_filter, + + kw_ret, kw_br, kw_switch, kw_indirectbr, kw_invoke, kw_unwind, kw_resume, + kw_unreachable, + + 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, + // Unsigned Valued tokens (UIntVal). GlobalID, // @42 LocalVarID, // %42 - + // String valued tokens (StrVal). LabelStr, // foo: GlobalVar, // @foo @"foo" LocalVar, // %foo %"foo" + MetadataVar, // !foo StringConstant, // "foo" - + // Type valued tokens (TyVal). - Type, - + Type, + APFloat, // APFloatVal - APSInt, // APSInt + APSInt // APSInt }; } // end namespace lltok } // end namespace llvm