LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
LLToken.h
Go to the documentation of this file.
1 //===- LLToken.h - Token Codes for LLVM Assembly Files ----------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file defines the enums for the .ll lexer.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef LIBS_ASMPARSER_LLTOKEN_H
15 #define LIBS_ASMPARSER_LLTOKEN_H
16 
17 namespace llvm {
18 namespace lltok {
19  enum Kind {
20  // Markers
22 
23  // Tokens with no info.
24  dotdotdot, // ...
25  equal, comma, // = ,
26  star, // *
27  lsquare, rsquare, // [ ]
28  lbrace, rbrace, // { }
29  less, greater, // < >
30  lparen, rparen, // ( )
31  backslash, // \ (not /)
32  exclaim, // !
33  hash, // #
34 
39 
58  kw_deplibs, // FIXME: Remove in 4.0
85 
95 
96  // Attributes:
133 
136 
140 
141  // atomicrmw operations that aren't also instruction keywords.
143 
144  // Instruction Opcodes (Opcode in UIntVal).
149 
155 
157 
160 
163 
166 
167  // Unsigned Valued tokens (UIntVal).
168  GlobalID, // @42
169  LocalVarID, // %42
170  AttrGrpID, // #42
171 
172  // String valued tokens (StrVal).
173  LabelStr, // foo:
174  GlobalVar, // @foo @"foo"
175  LocalVar, // %foo %"foo"
176  MetadataVar, // !foo
177  StringConstant, // "foo"
178 
179  // Type valued tokens (TyVal).
181 
182  APFloat, // APFloatVal
183  APSInt // APSInt
184  };
185 } // end namespace lltok
186 } // end namespace llvm
187 
188 #endif