LLVM  10.0.0svn
LLToken.h
Go to the documentation of this file.
1 //===- LLToken.h - Token Codes for LLVM Assembly Files ----------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file defines the enums for the .ll lexer.
10 //
11 //===----------------------------------------------------------------------===//
12 
13 #ifndef LLVM_LIB_ASMPARSER_LLTOKEN_H
14 #define LLVM_LIB_ASMPARSER_LLTOKEN_H
15 
16 namespace llvm {
17 namespace lltok {
18 enum Kind {
19  // Markers
20  Eof,
22 
23  // Tokens with no info.
24  dotdotdot, // ...
26  comma, // = ,
27  star, // *
29  rsquare, // [ ]
31  rbrace, // { }
33  greater, // < >
35  rparen, // ( )
36  exclaim, // !
37  bar, // |
38  colon, // :
39 
48 
51 
56  kw_weak, // Used as a linkage, and a modifier for "cmpxchg".
90  kw_deplibs, // FIXME: Remove in 4.0
129 
172 
173  // Attributes:
237 
240 
242 
243  // Comdat types
249 
270 
271  // atomicrmw operations that aren't also instruction keywords.
278 
279  // Instruction Opcodes (Opcode in UIntVal).
301 
319 
325 
339 
347 
354 
355  // Metadata types.
357 
358  // Use-list order directives.
361 
362  // Summary index keywords
434 
435  // Unsigned Valued tokens (UIntVal).
436  LabelID, // 42:
437  GlobalID, // @42
438  LocalVarID, // %42
439  AttrGrpID, // #42
440  SummaryID, // ^42
441 
442  // String valued tokens (StrVal).
443  LabelStr, // foo:
444  GlobalVar, // @foo @"foo"
445  ComdatVar, // $foo
446  LocalVar, // %foo %"foo"
447  MetadataVar, // !foo
448  StringConstant, // "foo"
449  DwarfTag, // DW_TAG_foo
450  DwarfAttEncoding, // DW_ATE_foo
451  DwarfVirtuality, // DW_VIRTUALITY_foo
452  DwarfLang, // DW_LANG_foo
453  DwarfCC, // DW_CC_foo
454  EmissionKind, // lineTablesOnly
456  DwarfOp, // DW_OP_foo
457  DIFlag, // DIFlagFoo
458  DISPFlag, // DISPFlagFoo
459  DwarfMacinfo, // DW_MACINFO_foo
460  ChecksumKind, // CSK_foo
461 
462  // Type valued tokens (TyVal).
464 
465  APFloat, // APFloatVal
466  APSInt // APSInt
467 };
468 } // end namespace lltok
469 } // end namespace llvm
470 
471 #endif
This class represents lattice values for constants.
Definition: AllocatorList.h:23