diff options
-rw-r--r-- | lib/AsmParser/Lexer.cpp.cvs | 257 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp.cvs | 6111 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.h.cvs | 352 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y.cvs | 5 |
4 files changed, 2881 insertions, 3844 deletions
diff --git a/lib/AsmParser/Lexer.cpp.cvs b/lib/AsmParser/Lexer.cpp.cvs index 2adb5cc58c..aca3582f6a 100644 --- a/lib/AsmParser/Lexer.cpp.cvs +++ b/lib/AsmParser/Lexer.cpp.cvs @@ -17,7 +17,7 @@ #define yylineno llvmAsmlineno #line 20 "Lexer.cpp" -/* A lexical scanner generated by flex*/ +/* A lexical scanner generated by flex */ /* Scanner skeleton version: * $Header$ @@ -28,7 +28,6 @@ #define YY_FLEX_MINOR_VERSION 5 #include <stdio.h> -#include <unistd.h> /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ @@ -42,6 +41,7 @@ #ifdef __cplusplus #include <stdlib.h> +#include <unistd.h> /* Use prototypes in function declarations. */ #define YY_USE_PROTOS @@ -153,15 +153,6 @@ extern FILE *yyin, *yyout; #define unput(c) yyunput( c, yytext_ptr ) -/* Some routines like yy_flex_realloc() are emitted as static but are - not called by all lexers. This generates warnings in some compilers, - notably GCC. Arrange to suppress these. */ -#ifdef __GNUC__ -#define YY_MAY_BE_UNUSED __attribute__((unused)) -#else -#define YY_MAY_BE_UNUSED -#endif - /* The following is because we cannot portably get our hands on size_t * (without autoconf's help, which isn't available because we want * flex-generated scanners to compile on their own). @@ -268,7 +259,7 @@ YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); static void *yy_flex_alloc YY_PROTO(( yy_size_t )); -static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) YY_MAY_BE_UNUSED; +static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )); static void yy_flex_free YY_PROTO(( void * )); #define yy_new_buffer yy_create_buffer @@ -792,7 +783,7 @@ goto find_rule; \ #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *yytext; -#line 1 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 1 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" #define INITIAL 0 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===// // @@ -807,7 +798,7 @@ char *yytext; // //===----------------------------------------------------------------------===*/ #define YY_NEVER_INTERACTIVE 1 -#line 28 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 28 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" #include "ParserInternals.h" #include "llvm/Module.h" #include <list> @@ -933,7 +924,7 @@ using namespace llvm; /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing * it to deal with 64 bit numbers. */ -#line 937 "Lexer.cpp" +#line 928 "Lexer.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1081,13 +1072,13 @@ YY_MALLOC_DECL YY_DECL { register yy_state_type yy_current_state; - register char *yy_cp = NULL, *yy_bp = NULL; + register char *yy_cp, *yy_bp; register int yy_act; -#line 179 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 179 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" -#line 1091 "Lexer.cpp" +#line 1082 "Lexer.cpp" if ( yy_init ) { @@ -1180,477 +1171,477 @@ do_action: /* This label is used only to access EOF actions. */ { /* beginning of action switch */ case 1: YY_RULE_SETUP -#line 181 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 181 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Ignore comments for now */ } YY_BREAK case 2: YY_RULE_SETUP -#line 183 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 183 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return BEGINTOK; } YY_BREAK case 3: YY_RULE_SETUP -#line 184 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 184 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ENDTOK; } YY_BREAK case 4: YY_RULE_SETUP -#line 185 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 185 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TRUETOK; } YY_BREAK case 5: YY_RULE_SETUP -#line 186 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 186 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return FALSETOK; } YY_BREAK case 6: YY_RULE_SETUP -#line 187 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 187 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DECLARE; } YY_BREAK case 7: YY_RULE_SETUP -#line 188 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 188 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return GLOBAL; } YY_BREAK case 8: YY_RULE_SETUP -#line 189 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 189 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return CONSTANT; } YY_BREAK case 9: YY_RULE_SETUP -#line 190 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 190 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return INTERNAL; } YY_BREAK case 10: YY_RULE_SETUP -#line 191 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 191 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return LINKONCE; } YY_BREAK case 11: YY_RULE_SETUP -#line 192 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 192 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return WEAK; } YY_BREAK case 12: YY_RULE_SETUP -#line 193 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 193 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return APPENDING; } YY_BREAK case 13: YY_RULE_SETUP -#line 194 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 194 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return EXTERNAL; } /* Deprecated, turn into external */ YY_BREAK case 14: YY_RULE_SETUP -#line 195 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 195 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return EXTERNAL; } YY_BREAK case 15: YY_RULE_SETUP -#line 196 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 196 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return IMPLEMENTATION; } YY_BREAK case 16: YY_RULE_SETUP -#line 197 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 197 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ZEROINITIALIZER; } YY_BREAK case 17: YY_RULE_SETUP -#line 198 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 198 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DOTDOTDOT; } YY_BREAK case 18: YY_RULE_SETUP -#line 199 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 199 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return UNDEF; } YY_BREAK case 19: YY_RULE_SETUP -#line 200 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 200 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return NULL_TOK; } YY_BREAK case 20: YY_RULE_SETUP -#line 201 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 201 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TO; } YY_BREAK case 21: YY_RULE_SETUP -#line 202 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 202 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Unwind, UNWIND); } YY_BREAK case 22: YY_RULE_SETUP -#line 203 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 203 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return NOT; } /* Deprecated, turned into XOR */ YY_BREAK case 23: YY_RULE_SETUP -#line 204 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 204 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TAIL; } YY_BREAK case 24: YY_RULE_SETUP -#line 205 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 205 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TARGET; } YY_BREAK case 25: YY_RULE_SETUP -#line 206 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 206 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TRIPLE; } YY_BREAK case 26: YY_RULE_SETUP -#line 207 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 207 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DEPLIBS; } YY_BREAK case 27: YY_RULE_SETUP -#line 208 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 208 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ENDIAN; } YY_BREAK case 28: YY_RULE_SETUP -#line 209 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 209 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return POINTERSIZE; } YY_BREAK case 29: YY_RULE_SETUP -#line 210 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 210 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return LITTLE; } YY_BREAK case 30: YY_RULE_SETUP -#line 211 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 211 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return BIG; } YY_BREAK case 31: YY_RULE_SETUP -#line 212 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 212 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return VOLATILE; } YY_BREAK case 32: YY_RULE_SETUP -#line 213 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 213 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ALIGN; } YY_BREAK case 33: YY_RULE_SETUP -#line 214 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 214 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return SECTION; } YY_BREAK case 34: YY_RULE_SETUP -#line 215 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 215 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return MODULE; } YY_BREAK case 35: YY_RULE_SETUP -#line 216 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 216 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ASM_TOK; } YY_BREAK case 36: YY_RULE_SETUP -#line 217 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 217 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return SIDEEFFECT; } YY_BREAK case 37: YY_RULE_SETUP -#line 219 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 219 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return CC_TOK; } YY_BREAK case 38: YY_RULE_SETUP -#line 220 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 220 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return CCC_TOK; } YY_BREAK case 39: YY_RULE_SETUP -#line 221 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 221 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return CSRETCC_TOK; } YY_BREAK case 40: YY_RULE_SETUP -#line 222 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 222 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return FASTCC_TOK; } YY_BREAK case 41: YY_RULE_SETUP -#line 223 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 223 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return COLDCC_TOK; } YY_BREAK case 42: YY_RULE_SETUP -#line 225 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 225 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::VoidTy ; return VOID; } YY_BREAK case 43: YY_RULE_SETUP -#line 226 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 226 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::BoolTy ; return BOOL; } YY_BREAK case 44: YY_RULE_SETUP -#line 227 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 227 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::SByteTy ; return SBYTE; } YY_BREAK case 45: YY_RULE_SETUP -#line 228 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 228 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::UByteTy ; return UBYTE; } YY_BREAK case 46: YY_RULE_SETUP -#line 229 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 229 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::ShortTy ; return SHORT; } YY_BREAK case 47: YY_RULE_SETUP -#line 230 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 230 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::UShortTy; return USHORT; } YY_BREAK case 48: YY_RULE_SETUP -#line 231 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 231 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::IntTy ; return INT; } YY_BREAK case 49: YY_RULE_SETUP -#line 232 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 232 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::UIntTy ; return UINT; } YY_BREAK case 50: YY_RULE_SETUP -#line 233 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 233 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::LongTy ; return LONG; } YY_BREAK case 51: YY_RULE_SETUP -#line 234 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 234 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::ULongTy ; return ULONG; } YY_BREAK case 52: YY_RULE_SETUP -#line 235 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 235 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::FloatTy ; return FLOAT; } YY_BREAK case 53: YY_RULE_SETUP -#line 236 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 236 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::DoubleTy; return DOUBLE; } YY_BREAK case 54: YY_RULE_SETUP -#line 237 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 237 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.PrimType = Type::LabelTy ; return LABEL; } YY_BREAK case 55: YY_RULE_SETUP -#line 238 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 238 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TYPE; } YY_BREAK case 56: YY_RULE_SETUP -#line 239 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 239 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return OPAQUE; } YY_BREAK case 57: YY_RULE_SETUP -#line 241 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 241 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Add, ADD); } YY_BREAK case 58: YY_RULE_SETUP -#line 242 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 242 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Sub, SUB); } YY_BREAK case 59: YY_RULE_SETUP -#line 243 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 243 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Mul, MUL); } YY_BREAK case 60: YY_RULE_SETUP -#line 244 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 244 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Div, DIV); } YY_BREAK case 61: YY_RULE_SETUP -#line 245 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 245 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Rem, REM); } YY_BREAK case 62: YY_RULE_SETUP -#line 246 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 246 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, And, AND); } YY_BREAK case 63: YY_RULE_SETUP -#line 247 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 247 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Or , OR ); } YY_BREAK case 64: YY_RULE_SETUP -#line 248 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 248 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, Xor, XOR); } YY_BREAK case 65: YY_RULE_SETUP -#line 249 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 249 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetNE, SETNE); } YY_BREAK case 66: YY_RULE_SETUP -#line 250 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 250 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetEQ, SETEQ); } YY_BREAK case 67: YY_RULE_SETUP -#line 251 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 251 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetLT, SETLT); } YY_BREAK case 68: YY_RULE_SETUP -#line 252 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 252 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetGT, SETGT); } YY_BREAK case 69: YY_RULE_SETUP -#line 253 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 253 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetLE, SETLE); } YY_BREAK case 70: YY_RULE_SETUP -#line 254 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 254 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(BinaryOpVal, SetGE, SETGE); } YY_BREAK case 71: YY_RULE_SETUP -#line 256 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 256 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, PHI, PHI_TOK); } YY_BREAK case 72: YY_RULE_SETUP -#line 257 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 257 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, Call, CALL); } YY_BREAK case 73: YY_RULE_SETUP -#line 258 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 258 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, Cast, CAST); } YY_BREAK case 74: YY_RULE_SETUP -#line 259 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 259 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, Select, SELECT); } YY_BREAK case 75: YY_RULE_SETUP -#line 260 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 260 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, Shl, SHL); } YY_BREAK case 76: YY_RULE_SETUP -#line 261 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 261 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, Shr, SHR); } YY_BREAK case 77: YY_RULE_SETUP -#line 262 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 262 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return VANEXT_old; } YY_BREAK case 78: YY_RULE_SETUP -#line 263 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 263 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return VAARG_old; } YY_BREAK case 79: YY_RULE_SETUP -#line 264 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 264 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, VAArg , VAARG); } YY_BREAK case 80: YY_RULE_SETUP -#line 265 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 265 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Ret, RET); } YY_BREAK case 81: YY_RULE_SETUP -#line 266 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 266 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Br, BR); } YY_BREAK case 82: YY_RULE_SETUP -#line 267 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 267 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Switch, SWITCH); } YY_BREAK case 83: YY_RULE_SETUP -#line 268 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 268 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Invoke, INVOKE); } YY_BREAK case 84: YY_RULE_SETUP -#line 269 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 269 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Unwind, UNWIND); } YY_BREAK case 85: YY_RULE_SETUP -#line 270 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 270 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); } YY_BREAK case 86: YY_RULE_SETUP -#line 272 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 272 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, Malloc, MALLOC); } YY_BREAK case 87: YY_RULE_SETUP -#line 273 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 273 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, Alloca, ALLOCA); } YY_BREAK case 88: YY_RULE_SETUP -#line 274 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 274 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, Free, FREE); } YY_BREAK case 89: YY_RULE_SETUP -#line 275 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 275 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, Load, LOAD); } YY_BREAK case 90: YY_RULE_SETUP -#line 276 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 276 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, Store, STORE); } YY_BREAK case 91: YY_RULE_SETUP -#line 277 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 277 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); } YY_BREAK case 92: YY_RULE_SETUP -#line 279 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 279 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); } YY_BREAK case 93: YY_RULE_SETUP -#line 280 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 280 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); } YY_BREAK case 94: YY_RULE_SETUP -#line 281 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 281 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); } YY_BREAK case 95: YY_RULE_SETUP -#line 284 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 284 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { UnEscapeLexed(yytext+1); llvmAsmlval.StrVal = strdup(yytext+1); // Skip % @@ -1659,7 +1650,7 @@ YY_RULE_SETUP YY_BREAK case 96: YY_RULE_SETUP -#line 289 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 289 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { yytext[strlen(yytext)-1] = 0; // nuke colon UnEscapeLexed(yytext); @@ -1669,7 +1660,7 @@ YY_RULE_SETUP YY_BREAK case 97: YY_RULE_SETUP -#line 295 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 295 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { yytext[strlen(yytext)-2] = 0; // nuke colon, end quote UnEscapeLexed(yytext+1); @@ -1679,7 +1670,7 @@ YY_RULE_SETUP YY_BREAK case 98: YY_RULE_SETUP -#line 302 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 302 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { // Note that we cannot unescape a string constant here! The // string constant might contain a \00 which would not be // understood by the string stuff. It is valid to make a @@ -1692,12 +1683,12 @@ YY_RULE_SETUP YY_BREAK case 99: YY_RULE_SETUP -#line 313 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 313 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; } YY_BREAK case 100: YY_RULE_SETUP -#line 314 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 314 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+1); // +1: we have bigger negative range @@ -1709,7 +1700,7 @@ YY_RULE_SETUP YY_BREAK case 101: YY_RULE_SETUP -#line 322 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 322 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.UInt64Val = HexIntToVal(yytext+3); return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL; @@ -1717,7 +1708,7 @@ YY_RULE_SETUP YY_BREAK case 102: YY_RULE_SETUP -#line 327 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 327 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+1); if ((unsigned)Val != Val) @@ -1728,7 +1719,7 @@ YY_RULE_SETUP YY_BREAK case 103: YY_RULE_SETUP -#line 334 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 334 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+2); // +1: we have bigger negative range @@ -1740,16 +1731,16 @@ YY_RULE_SETUP YY_BREAK case 104: YY_RULE_SETUP -#line 343 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 343 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.FPVal = atof(yytext); return FPVAL; } YY_BREAK case 105: YY_RULE_SETUP -#line 344 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 344 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 346 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 346 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Make sure to free the internal buffers for flex when we are * done reading our input! @@ -1760,20 +1751,20 @@ case YY_STATE_EOF(INITIAL): YY_BREAK case 106: YY_RULE_SETUP -#line 354 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 354 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Ignore whitespace */ } YY_BREAK case 107: YY_RULE_SETUP -#line 355 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 355 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return yytext[0]; } YY_BREAK case 108: YY_RULE_SETUP -#line 357 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 357 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1777 "Lexer.cpp" +#line 1768 "Lexer.cpp" case YY_END_OF_BUFFER: { @@ -2149,7 +2140,6 @@ register char *yy_bp; #endif /* ifndef YY_NO_UNPUT */ -#ifndef YY_NO_INPUT #ifdef __cplusplus static int yyinput() #else @@ -2223,7 +2213,7 @@ static int input() return c; } -#endif /* YY_NO_INPUT */ + #ifdef YY_USE_PROTOS void yyrestart( FILE *input_file ) @@ -2334,6 +2324,11 @@ YY_BUFFER_STATE b; } +#ifndef YY_ALWAYS_INTERACTIVE +#ifndef YY_NEVER_INTERACTIVE +extern int isatty YY_PROTO(( int )); +#endif +#endif #ifdef YY_USE_PROTOS void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) @@ -2651,5 +2646,5 @@ int main() return 0; } #endif -#line 357 "/proj/llvm/llvm/lib/AsmParser/Lexer.l" +#line 357 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs index d54f66a1da..929940f08a 100644 --- a/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -1,278 +1,118 @@ -/* A Bison parser, made by GNU Bison 2.1. */ -/* Skeleton parser for Yacc-like parsing with Bison, - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +/* A Bison parser, made from /Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y + by GNU Bison version 1.28 */ - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ +#define YYBISON 1 /* Identify Bison output. */ -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ - -/* Written by Richard Stallman by simplifying the original so called - ``semantic'' parser. */ - -/* All symbols defined below should begin with yy or YY, to avoid - infringing on user name space. This should be done even for local - variables, as they might otherwise be expanded by user macros. - There are some unavoidable exceptions within include files to - define necessary library symbols; they are noted "INFRINGES ON - USER NAME SPACE" below. */ - -/* Identify Bison output. */ -#define YYBISON 1 - -/* Bison version. */ -#define YYBISON_VERSION "2.1" - -/* Skeleton name. */ -#define YYSKELETON_NAME "yacc.c" - -/* Pure parsers. */ -#define YYPURE 0 - -/* Using locations. */ -#define YYLSP_NEEDED 0 - -/* Substitute the variable and function names. */ #define yyparse llvmAsmparse -#define yylex llvmAsmlex +#define yylex llvmAsmlex #define yyerror llvmAsmerror -#define yylval llvmAsmlval -#define yychar llvmAsmchar +#define yylval llvmAsmlval +#define yychar llvmAsmchar #define yydebug llvmAsmdebug #define yynerrs llvmAsmnerrs - - -/* Tokens. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - /* Put the tokens into the symbol table, so that GDB and other debuggers - know about them. */ - enum yytokentype { - ESINT64VAL = 258, - EUINT64VAL = 259, - SINTVAL = 260, - UINTVAL = 261, - FPVAL = 262, - VOID = 263, - BOOL = 264, - SBYTE = 265, - UBYTE = 266, - SHORT = 267, - USHORT = 268, - INT = 269, - UINT = 270, - LONG = 271, - ULONG = 272, - FLOAT = 273, - DOUBLE = 274, - TYPE = 275, - LABEL = 276, - VAR_ID = 277, - LABELSTR = 278, - STRINGCONSTANT = 279, - IMPLEMENTATION = 280, - ZEROINITIALIZER = 281, - TRUETOK = 282, - FALSETOK = 283, - BEGINTOK = 284, - ENDTOK = 285, - DECLARE = 286, - GLOBAL = 287, - CONSTANT = 288, - SECTION = 289, - VOLATILE = 290, - TO = 291, - DOTDOTDOT = 292, - NULL_TOK = 293, - UNDEF = 294, - CONST = 295, - INTERNAL = 296, - LINKONCE = 297, - WEAK = 298, - APPENDING = 299, - OPAQUE = 300, - NOT = 301, - EXTERNAL = 302, - TARGET = 303, - TRIPLE = 304, - ENDIAN = 305, - POINTERSIZE = 306, - LITTLE = 307, - BIG = 308, - ALIGN = 309, - DEPLIBS = 310, - CALL = 311, - TAIL = 312, - ASM_TOK = 313, - MODULE = 314, - SIDEEFFECT = 315, - CC_TOK = 316, - CCC_TOK = 317, - CSRETCC_TOK = 318, - FASTCC_TOK = 319, - COLDCC_TOK = 320, - RET = 321, - BR = 322, - SWITCH = 323, - INVOKE = 324, - UNWIND = 325, - UNREACHABLE = 326, - ADD = 327, - SUB = 328, - MUL = 329, - DIV = 330, - REM = 331, - AND = 332, - OR = 333, - XOR = 334, - SETLE = 335, - SETGE = 336, - SETLT = 337, - SETGT = 338, - SETEQ = 339, - SETNE = 340, - MALLOC = 341, - ALLOCA = 342, - FREE = 343, - LOAD = 344, - STORE = 345, - GETELEMENTPTR = 346, - PHI_TOK = 347, - CAST = 348, - SELECT = 349, - SHL = 350, - SHR = 351, - VAARG = 352, - EXTRACTELEMENT = 353, - INSERTELEMENT = 354, - SHUFFLEVECTOR = 355, - VAARG_old = 356, - VANEXT_old = 357 - }; -#endif -/* Tokens. */ -#define ESINT64VAL 258 -#define EUINT64VAL 259 -#define SINTVAL 260 -#define UINTVAL 261 -#define FPVAL 262 -#define VOID 263 -#define BOOL 264 -#define SBYTE 265 -#define UBYTE 266 -#define SHORT 267 -#define USHORT 268 -#define INT 269 -#define UINT 270 -#define LONG 271 -#define ULONG 272 -#define FLOAT 273 -#define DOUBLE 274 -#define TYPE 275 -#define LABEL 276 -#define VAR_ID 277 -#define LABELSTR 278 -#define STRINGCONSTANT 279 -#define IMPLEMENTATION 280 -#define ZEROINITIALIZER 281 -#define TRUETOK 282 -#define FALSETOK 283 -#define BEGINTOK 284 -#define ENDTOK 285 -#define DECLARE 286 -#define GLOBAL 287 -#define CONSTANT 288 -#define SECTION 289 -#define VOLATILE 290 -#define TO 291 -#define DOTDOTDOT 292 -#define NULL_TOK 293 -#define UNDEF 294 -#define CONST 295 -#define INTERNAL 296 -#define LINKONCE 297 -#define WEAK 298 -#define APPENDING 299 -#define OPAQUE 300 -#define NOT 301 -#define EXTERNAL 302 -#define TARGET 303 -#define TRIPLE 304 -#define ENDIAN 305 -#define POINTERSIZE 306 -#define LITTLE 307 -#define BIG 308 -#define ALIGN 309 -#define DEPLIBS 310 -#define CALL 311 -#define TAIL 312 -#define ASM_TOK 313 -#define MODULE 314 -#define SIDEEFFECT 315 -#define CC_TOK 316 -#define CCC_TOK 317 -#define CSRETCC_TOK 318 -#define FASTCC_TOK 319 -#define COLDCC_TOK 320 -#define RET 321 -#define BR 322 -#define SWITCH 323 -#define INVOKE 324 -#define UNWIND 325 -#define UNREACHABLE 326 -#define ADD 327 -#define SUB 328 -#define MUL 329 -#define DIV 330 -#define REM 331 -#define AND 332 -#define OR 333 -#define XOR 334 -#define SETLE 335 -#define SETGE 336 -#define SETLT 337 -#define SETGT 338 -#define SETEQ 339 -#define SETNE 340 -#define MALLOC 341 -#define ALLOCA 342 -#define FREE 343 -#define LOAD 344 -#define STORE 345 -#define GETELEMENTPTR 346 -#define PHI_TOK 347 -#define CAST 348 -#define SELECT 349 -#define SHL 350 -#define SHR 351 -#define VAARG 352 -#define EXTRACTELEMENT 353 -#define INSERTELEMENT 354 -#define SHUFFLEVECTOR 355 -#define VAARG_old 356 -#define VANEXT_old 357 - - - - -/* Copy the first part of user declarations. */ -#line 14 "/proj/llvm/llvm/lib/AsmParser/llvmAsmParser.y" +#define ESINT64VAL 257 +#define EUINT64VAL 258 +#define SINTVAL 259 +#define UINTVAL 260 +#define FPVAL 261 +#define VOID 262 +#define BOOL 263 +#define SBYTE 264 +#define UBYTE 265 +#define SHORT 266 +#define USHORT 267 +#define INT 268 +#define UINT 269 +#define LONG 270 +#define ULONG 271 +#define FLOAT 272 +#define DOUBLE 273 +#define TYPE 274 +#define LABEL 275 +#define VAR_ID 276 +#define LABELSTR 277 +#define STRINGCONSTANT 278 +#define IMPLEMENTATION 279 +#define ZEROINITIALIZER 280 +#define TRUETOK 281 +#define FALSETOK 282 +#define BEGINTOK 283 +#define ENDTOK 284 +#define DECLARE 285 +#define GLOBAL 286 +#define CONSTANT 287 +#define SECTION 288 +#define VOLATILE 289 +#define TO 290 +#define DOTDOT |