mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37294 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8ecdbf2d5f
commit
e2aa96140e
@ -983,15 +983,22 @@ static double HexToFP(const char *Buffer) {
|
||||
|
||||
// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
|
||||
// appropriate character.
|
||||
char *UnEscapeLexed(char *Buffer) {
|
||||
char *UnEscapeLexed(char *Buffer, char* EndBuffer) {
|
||||
char *BOut = Buffer;
|
||||
for (char *BIn = Buffer; *BIn; ) {
|
||||
if (BIn[0] == '\\' && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
|
||||
char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
|
||||
*BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
|
||||
BIn[3] = Tmp; // Restore character
|
||||
BIn += 3; // Skip over handled chars
|
||||
++BOut;
|
||||
if (BIn[0] == '\\') {
|
||||
if (BIn < EndBuffer-1 && BIn[1] == '\\') {
|
||||
*BOut++ = '\\'; // Two \ becomes one
|
||||
BIn += 2;
|
||||
} else if (BIn < EndBuffer-2 && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
|
||||
char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
|
||||
*BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
|
||||
BIn[3] = Tmp; // Restore character
|
||||
BIn += 3; // Skip over handled chars
|
||||
++BOut;
|
||||
} else {
|
||||
*BOut++ = *BIn++;
|
||||
}
|
||||
} else {
|
||||
*BOut++ = *BIn++;
|
||||
}
|
||||
@ -1020,7 +1027,7 @@ using namespace llvm;
|
||||
/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
|
||||
* it to deal with 64 bit numbers.
|
||||
*/
|
||||
#line 1024 "Lexer.cpp"
|
||||
#line 1031 "Lexer.cpp"
|
||||
|
||||
/* Macros after this point can all be overridden by user definitions in
|
||||
* section 1.
|
||||
@ -1171,10 +1178,10 @@ YY_DECL
|
||||
register char *yy_cp = NULL, *yy_bp = NULL;
|
||||
register int yy_act;
|
||||
|
||||
#line 173 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 180 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
|
||||
|
||||
#line 1178 "Lexer.cpp"
|
||||
#line 1185 "Lexer.cpp"
|
||||
|
||||
if ( yy_init )
|
||||
{
|
||||
@ -1267,272 +1274,272 @@ do_action: /* This label is used only to access EOF actions. */
|
||||
{ /* beginning of action switch */
|
||||
case 1:
|
||||
YY_RULE_SETUP
|
||||
#line 175 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 182 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ /* Ignore comments for now */ }
|
||||
YY_BREAK
|
||||
case 2:
|
||||
YY_RULE_SETUP
|
||||
#line 177 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 184 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return BEGINTOK; }
|
||||
YY_BREAK
|
||||
case 3:
|
||||
YY_RULE_SETUP
|
||||
#line 178 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 185 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ENDTOK; }
|
||||
YY_BREAK
|
||||
case 4:
|
||||
YY_RULE_SETUP
|
||||
#line 179 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 186 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TRUETOK; }
|
||||
YY_BREAK
|
||||
case 5:
|
||||
YY_RULE_SETUP
|
||||
#line 180 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 187 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return FALSETOK; }
|
||||
YY_BREAK
|
||||
case 6:
|
||||
YY_RULE_SETUP
|
||||
#line 181 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 188 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DECLARE; }
|
||||
YY_BREAK
|
||||
case 7:
|
||||
YY_RULE_SETUP
|
||||
#line 182 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 189 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DEFINE; }
|
||||
YY_BREAK
|
||||
case 8:
|
||||
YY_RULE_SETUP
|
||||
#line 183 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 190 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return GLOBAL; }
|
||||
YY_BREAK
|
||||
case 9:
|
||||
YY_RULE_SETUP
|
||||
#line 184 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 191 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return CONSTANT; }
|
||||
YY_BREAK
|
||||
case 10:
|
||||
YY_RULE_SETUP
|
||||
#line 185 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 192 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return INTERNAL; }
|
||||
YY_BREAK
|
||||
case 11:
|
||||
YY_RULE_SETUP
|
||||
#line 186 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 193 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return LINKONCE; }
|
||||
YY_BREAK
|
||||
case 12:
|
||||
YY_RULE_SETUP
|
||||
#line 187 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return WEAK; }
|
||||
YY_BREAK
|
||||
case 13:
|
||||
YY_RULE_SETUP
|
||||
#line 188 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return APPENDING; }
|
||||
YY_BREAK
|
||||
case 14:
|
||||
YY_RULE_SETUP
|
||||
#line 189 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DLLIMPORT; }
|
||||
YY_BREAK
|
||||
case 15:
|
||||
YY_RULE_SETUP
|
||||
#line 190 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DLLEXPORT; }
|
||||
YY_BREAK
|
||||
case 16:
|
||||
YY_RULE_SETUP
|
||||
#line 191 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return HIDDEN; }
|
||||
YY_BREAK
|
||||
case 17:
|
||||
YY_RULE_SETUP
|
||||
#line 192 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return PROTECTED; }
|
||||
YY_BREAK
|
||||
case 18:
|
||||
YY_RULE_SETUP
|
||||
#line 193 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return EXTERN_WEAK; }
|
||||
YY_BREAK
|
||||
case 19:
|
||||
YY_RULE_SETUP
|
||||
#line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return EXTERNAL; }
|
||||
YY_BREAK
|
||||
case 20:
|
||||
YY_RULE_SETUP
|
||||
#line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return THREAD_LOCAL; }
|
||||
YY_BREAK
|
||||
case 21:
|
||||
YY_RULE_SETUP
|
||||
#line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ZEROINITIALIZER; }
|
||||
YY_BREAK
|
||||
case 22:
|
||||
YY_RULE_SETUP
|
||||
#line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DOTDOTDOT; }
|
||||
YY_BREAK
|
||||
case 23:
|
||||
YY_RULE_SETUP
|
||||
#line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UNDEF; }
|
||||
YY_BREAK
|
||||
case 24:
|
||||
YY_RULE_SETUP
|
||||
#line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return NULL_TOK; }
|
||||
YY_BREAK
|
||||
case 25:
|
||||
YY_RULE_SETUP
|
||||
#line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TO; }
|
||||
YY_BREAK
|
||||
case 26:
|
||||
YY_RULE_SETUP
|
||||
#line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TAIL; }
|
||||
YY_BREAK
|
||||
case 27:
|
||||
YY_RULE_SETUP
|
||||
#line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TARGET; }
|
||||
YY_BREAK
|
||||
case 28:
|
||||
YY_RULE_SETUP
|
||||
#line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TRIPLE; }
|
||||
YY_BREAK
|
||||
case 29:
|
||||
YY_RULE_SETUP
|
||||
#line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DEPLIBS; }
|
||||
YY_BREAK
|
||||
case 30:
|
||||
YY_RULE_SETUP
|
||||
#line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return DATALAYOUT; }
|
||||
YY_BREAK
|
||||
case 31:
|
||||
YY_RULE_SETUP
|
||||
#line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 213 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return VOLATILE; }
|
||||
YY_BREAK
|
||||
case 32:
|
||||
YY_RULE_SETUP
|
||||
#line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ALIGN; }
|
||||
YY_BREAK
|
||||
case 33:
|
||||
YY_RULE_SETUP
|
||||
#line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SECTION; }
|
||||
YY_BREAK
|
||||
case 34:
|
||||
YY_RULE_SETUP
|
||||
#line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ALIAS; }
|
||||
YY_BREAK
|
||||
case 35:
|
||||
YY_RULE_SETUP
|
||||
#line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return MODULE; }
|
||||
YY_BREAK
|
||||
case 36:
|
||||
YY_RULE_SETUP
|
||||
#line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ASM_TOK; }
|
||||
YY_BREAK
|
||||
case 37:
|
||||
YY_RULE_SETUP
|
||||
#line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SIDEEFFECT; }
|
||||
YY_BREAK
|
||||
case 38:
|
||||
YY_RULE_SETUP
|
||||
#line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return CC_TOK; }
|
||||
YY_BREAK
|
||||
case 39:
|
||||
YY_RULE_SETUP
|
||||
#line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return CCC_TOK; }
|
||||
YY_BREAK
|
||||
case 40:
|
||||
YY_RULE_SETUP
|
||||
#line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return FASTCC_TOK; }
|
||||
YY_BREAK
|
||||
case 41:
|
||||
YY_RULE_SETUP
|
||||
#line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return COLDCC_TOK; }
|
||||
YY_BREAK
|
||||
case 42:
|
||||
YY_RULE_SETUP
|
||||
#line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 225 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return X86_STDCALLCC_TOK; }
|
||||
YY_BREAK
|
||||
case 43:
|
||||
YY_RULE_SETUP
|
||||
#line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return X86_FASTCALLCC_TOK; }
|
||||
YY_BREAK
|
||||
case 44:
|
||||
YY_RULE_SETUP
|
||||
#line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return INREG; }
|
||||
YY_BREAK
|
||||
case 45:
|
||||
YY_RULE_SETUP
|
||||
#line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SRET; }
|
||||
YY_BREAK
|
||||
case 46:
|
||||
YY_RULE_SETUP
|
||||
#line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 230 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return NOUNWIND; }
|
||||
YY_BREAK
|
||||
case 47:
|
||||
YY_RULE_SETUP
|
||||
#line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return NORETURN; }
|
||||
YY_BREAK
|
||||
case 48:
|
||||
YY_RULE_SETUP
|
||||
#line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 233 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TY(Type::VoidTy, VOID); }
|
||||
YY_BREAK
|
||||
case 49:
|
||||
YY_RULE_SETUP
|
||||
#line 227 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 234 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TY(Type::FloatTy, FLOAT); }
|
||||
YY_BREAK
|
||||
case 50:
|
||||
YY_RULE_SETUP
|
||||
#line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 235 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TY(Type::DoubleTy,DOUBLE);}
|
||||
YY_BREAK
|
||||
case 51:
|
||||
YY_RULE_SETUP
|
||||
#line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 236 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TY(Type::LabelTy, LABEL); }
|
||||
YY_BREAK
|
||||
case 52:
|
||||
YY_RULE_SETUP
|
||||
#line 230 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 237 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return TYPE; }
|
||||
YY_BREAK
|
||||
case 53:
|
||||
YY_RULE_SETUP
|
||||
#line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 238 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OPAQUE; }
|
||||
YY_BREAK
|
||||
case 54:
|
||||
YY_RULE_SETUP
|
||||
#line 232 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 239 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ uint64_t NumBits = atoull(yytext+1);
|
||||
if (NumBits < IntegerType::MIN_INT_BITS ||
|
||||
NumBits > IntegerType::MAX_INT_BITS)
|
||||
@ -1543,347 +1550,347 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 55:
|
||||
YY_RULE_SETUP
|
||||
#line 240 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 247 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Add, ADD); }
|
||||
YY_BREAK
|
||||
case 56:
|
||||
YY_RULE_SETUP
|
||||
#line 241 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 248 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Sub, SUB); }
|
||||
YY_BREAK
|
||||
case 57:
|
||||
YY_RULE_SETUP
|
||||
#line 242 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 249 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Mul, MUL); }
|
||||
YY_BREAK
|
||||
case 58:
|
||||
YY_RULE_SETUP
|
||||
#line 243 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 250 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, UDiv, UDIV); }
|
||||
YY_BREAK
|
||||
case 59:
|
||||
YY_RULE_SETUP
|
||||
#line 244 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 251 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, SDiv, SDIV); }
|
||||
YY_BREAK
|
||||
case 60:
|
||||
YY_RULE_SETUP
|
||||
#line 245 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 252 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, FDiv, FDIV); }
|
||||
YY_BREAK
|
||||
case 61:
|
||||
YY_RULE_SETUP
|
||||
#line 246 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 253 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, URem, UREM); }
|
||||
YY_BREAK
|
||||
case 62:
|
||||
YY_RULE_SETUP
|
||||
#line 247 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, SRem, SREM); }
|
||||
YY_BREAK
|
||||
case 63:
|
||||
YY_RULE_SETUP
|
||||
#line 248 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, FRem, FREM); }
|
||||
YY_BREAK
|
||||
case 64:
|
||||
YY_RULE_SETUP
|
||||
#line 249 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 256 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Shl, SHL); }
|
||||
YY_BREAK
|
||||
case 65:
|
||||
YY_RULE_SETUP
|
||||
#line 250 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 257 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, LShr, LSHR); }
|
||||
YY_BREAK
|
||||
case 66:
|
||||
YY_RULE_SETUP
|
||||
#line 251 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, AShr, ASHR); }
|
||||
YY_BREAK
|
||||
case 67:
|
||||
YY_RULE_SETUP
|
||||
#line 252 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, And, AND); }
|
||||
YY_BREAK
|
||||
case 68:
|
||||
YY_RULE_SETUP
|
||||
#line 253 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Or , OR ); }
|
||||
YY_BREAK
|
||||
case 69:
|
||||
YY_RULE_SETUP
|
||||
#line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(BinaryOpVal, Xor, XOR); }
|
||||
YY_BREAK
|
||||
case 70:
|
||||
YY_RULE_SETUP
|
||||
#line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, ICmp, ICMP); }
|
||||
YY_BREAK
|
||||
case 71:
|
||||
YY_RULE_SETUP
|
||||
#line 256 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, FCmp, FCMP); }
|
||||
YY_BREAK
|
||||
case 72:
|
||||
YY_RULE_SETUP
|
||||
#line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return EQ; }
|
||||
YY_BREAK
|
||||
case 73:
|
||||
YY_RULE_SETUP
|
||||
#line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return NE; }
|
||||
YY_BREAK
|
||||
case 74:
|
||||
YY_RULE_SETUP
|
||||
#line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SLT; }
|
||||
YY_BREAK
|
||||
case 75:
|
||||
YY_RULE_SETUP
|
||||
#line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SGT; }
|
||||
YY_BREAK
|
||||
case 76:
|
||||
YY_RULE_SETUP
|
||||
#line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SLE; }
|
||||
YY_BREAK
|
||||
case 77:
|
||||
YY_RULE_SETUP
|
||||
#line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return SGE; }
|
||||
YY_BREAK
|
||||
case 78:
|
||||
YY_RULE_SETUP
|
||||
#line 264 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 271 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ULT; }
|
||||
YY_BREAK
|
||||
case 79:
|
||||
YY_RULE_SETUP
|
||||
#line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UGT; }
|
||||
YY_BREAK
|
||||
case 80:
|
||||
YY_RULE_SETUP
|
||||
#line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ULE; }
|
||||
YY_BREAK
|
||||
case 81:
|
||||
YY_RULE_SETUP
|
||||
#line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UGE; }
|
||||
YY_BREAK
|
||||
case 82:
|
||||
YY_RULE_SETUP
|
||||
#line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OEQ; }
|
||||
YY_BREAK
|
||||
case 83:
|
||||
YY_RULE_SETUP
|
||||
#line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ONE; }
|
||||
YY_BREAK
|
||||
case 84:
|
||||
YY_RULE_SETUP
|
||||
#line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 277 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OLT; }
|
||||
YY_BREAK
|
||||
case 85:
|
||||
YY_RULE_SETUP
|
||||
#line 271 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 278 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OGT; }
|
||||
YY_BREAK
|
||||
case 86:
|
||||
YY_RULE_SETUP
|
||||
#line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OLE; }
|
||||
YY_BREAK
|
||||
case 87:
|
||||
YY_RULE_SETUP
|
||||
#line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return OGE; }
|
||||
YY_BREAK
|
||||
case 88:
|
||||
YY_RULE_SETUP
|
||||
#line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return ORD; }
|
||||
YY_BREAK
|
||||
case 89:
|
||||
YY_RULE_SETUP
|
||||
#line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 282 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UNO; }
|
||||
YY_BREAK
|
||||
case 90:
|
||||
YY_RULE_SETUP
|
||||
#line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UEQ; }
|
||||
YY_BREAK
|
||||
case 91:
|
||||
YY_RULE_SETUP
|
||||
#line 277 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return UNE; }
|
||||
YY_BREAK
|
||||
case 92:
|
||||
YY_RULE_SETUP
|
||||
#line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, PHI, PHI_TOK); }
|
||||
YY_BREAK
|
||||
case 93:
|
||||
YY_RULE_SETUP
|
||||
#line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 287 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, Call, CALL); }
|
||||
YY_BREAK
|
||||
case 94:
|
||||
YY_RULE_SETUP
|
||||
#line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, Trunc, TRUNC); }
|
||||
YY_BREAK
|
||||
case 95:
|
||||
YY_RULE_SETUP
|
||||
#line 282 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, ZExt, ZEXT); }
|
||||
YY_BREAK
|
||||
case 96:
|
||||
YY_RULE_SETUP
|
||||
#line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, SExt, SEXT); }
|
||||
YY_BREAK
|
||||
case 97:
|
||||
YY_RULE_SETUP
|
||||
#line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
|
||||
YY_BREAK
|
||||
case 98:
|
||||
YY_RULE_SETUP
|
||||
#line 285 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 292 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, FPExt, FPEXT); }
|
||||
YY_BREAK
|
||||
case 99:
|
||||
YY_RULE_SETUP
|
||||
#line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 293 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, UIToFP, UITOFP); }
|
||||
YY_BREAK
|
||||
case 100:
|
||||
YY_RULE_SETUP
|
||||
#line 287 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, SIToFP, SITOFP); }
|
||||
YY_BREAK
|
||||
case 101:
|
||||
YY_RULE_SETUP
|
||||
#line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, FPToUI, FPTOUI); }
|
||||
YY_BREAK
|
||||
case 102:
|
||||
YY_RULE_SETUP
|
||||
#line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, FPToSI, FPTOSI); }
|
||||
YY_BREAK
|
||||
case 103:
|
||||
YY_RULE_SETUP
|
||||
#line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
|
||||
YY_BREAK
|
||||
case 104:
|
||||
YY_RULE_SETUP
|
||||
#line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
|
||||
YY_BREAK
|
||||
case 105:
|
||||
YY_RULE_SETUP
|
||||
#line 292 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(CastOpVal, BitCast, BITCAST); }
|
||||
YY_BREAK
|
||||
case 106:
|
||||
YY_RULE_SETUP
|
||||
#line 293 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 300 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, Select, SELECT); }
|
||||
YY_BREAK
|
||||
case 107:
|
||||
YY_RULE_SETUP
|
||||
#line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 301 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, VAArg , VAARG); }
|
||||
YY_BREAK
|
||||
case 108:
|
||||
YY_RULE_SETUP
|
||||
#line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Ret, RET); }
|
||||
YY_BREAK
|
||||
case 109:
|
||||
YY_RULE_SETUP
|
||||
#line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Br, BR); }
|
||||
YY_BREAK
|
||||
case 110:
|
||||
YY_RULE_SETUP
|
||||
#line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 304 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Switch, SWITCH); }
|
||||
YY_BREAK
|
||||
case 111:
|
||||
YY_RULE_SETUP
|
||||
#line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 305 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Invoke, INVOKE); }
|
||||
YY_BREAK
|
||||
case 112:
|
||||
YY_RULE_SETUP
|
||||
#line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Unwind, UNWIND); }
|
||||
YY_BREAK
|
||||
case 113:
|
||||
YY_RULE_SETUP
|
||||
#line 300 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 307 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
|
||||
YY_BREAK
|
||||
case 114:
|
||||
YY_RULE_SETUP
|
||||
#line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 309 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, Malloc, MALLOC); }
|
||||
YY_BREAK
|
||||
case 115:
|
||||
YY_RULE_SETUP
|
||||
#line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 310 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, Alloca, ALLOCA); }
|
||||
YY_BREAK
|
||||
case 116:
|
||||
YY_RULE_SETUP
|
||||
#line 304 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, Free, FREE); }
|
||||
YY_BREAK
|
||||
case 117:
|
||||
YY_RULE_SETUP
|
||||
#line 305 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 312 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, Load, LOAD); }
|
||||
YY_BREAK
|
||||
case 118:
|
||||
YY_RULE_SETUP
|
||||
#line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 313 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, Store, STORE); }
|
||||
YY_BREAK
|
||||
case 119:
|
||||
YY_RULE_SETUP
|
||||
#line 307 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 314 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
|
||||
YY_BREAK
|
||||
case 120:
|
||||
YY_RULE_SETUP
|
||||
#line 309 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 316 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
|
||||
YY_BREAK
|
||||
case 121:
|
||||
YY_RULE_SETUP
|
||||
#line 310 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 317 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
|
||||
YY_BREAK
|
||||
case 122:
|
||||
YY_RULE_SETUP
|
||||
#line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 318 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
|
||||
YY_BREAK
|
||||
case 123:
|
||||
YY_RULE_SETUP
|
||||
#line 314 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 321 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
llvmAsmlval.StrVal = new std::string(yytext+1); // Skip %
|
||||
return LOCALVAR;
|
||||
@ -1891,7 +1898,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 124:
|
||||
YY_RULE_SETUP
|
||||
#line 318 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 325 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
llvmAsmlval.StrVal = new std::string(yytext+1); // Skip @
|
||||
return GLOBALVAR;
|
||||
@ -1899,7 +1906,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 125:
|
||||
YY_RULE_SETUP
|
||||
#line 322 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 329 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
yytext[yyleng-1] = 0; // nuke colon
|
||||
llvmAsmlval.StrVal = new std::string(yytext);
|
||||
@ -1908,10 +1915,10 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 126:
|
||||
YY_RULE_SETUP
|
||||
#line 327 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 334 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
yytext[yyleng-2] = 0; // nuke colon, end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+1);
|
||||
const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+1, EndChar - yytext - 1);
|
||||
return LABELSTR;
|
||||
@ -1919,9 +1926,9 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 127:
|
||||
YY_RULE_SETUP
|
||||
#line 335 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 342 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+1);
|
||||
const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+1, EndChar - yytext - 1);
|
||||
return STRINGCONSTANT;
|
||||
@ -1929,10 +1936,11 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 128:
|
||||
YY_RULE_SETUP
|
||||
#line 341 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 348 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+2);
|
||||
const char* EndChar =
|
||||
UnEscapeLexed(yytext+2, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+2, EndChar - yytext - 2);
|
||||
return ATSTRINGCONSTANT;
|
||||
@ -1940,10 +1948,11 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 129:
|
||||
YY_RULE_SETUP
|
||||
#line 348 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 356 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+2);
|
||||
const char* EndChar =
|
||||
UnEscapeLexed(yytext+2, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+2, EndChar - yytext - 2);
|
||||
return PCTSTRINGCONSTANT;
|
||||
@ -1951,7 +1960,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 130:
|
||||
YY_RULE_SETUP
|
||||
#line 355 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 364 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
uint32_t numBits = ((yyleng * 64) / 19) + 1;
|
||||
APInt Tmp(numBits, yytext, yyleng, 10);
|
||||
@ -1969,7 +1978,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 131:
|
||||
YY_RULE_SETUP
|
||||
#line 369 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 378 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
uint32_t numBits = (((yyleng-1) * 64) / 19) + 2;
|
||||
APInt Tmp(numBits, yytext, yyleng, 10);
|
||||
@ -1987,7 +1996,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 132:
|
||||
YY_RULE_SETUP
|
||||
#line 384 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 393 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ int len = yyleng - 3;
|
||||
uint32_t bits = len * 4;
|
||||
APInt Tmp(bits, yytext+3, len, 16);
|
||||
@ -2008,7 +2017,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 133:
|
||||
YY_RULE_SETUP
|
||||
#line 402 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 411 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
uint64_t Val = atoull(yytext+1);
|
||||
if ((unsigned)Val != Val)
|
||||
@ -2019,7 +2028,7 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 134:
|
||||
YY_RULE_SETUP
|
||||
#line 409 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 418 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
uint64_t Val = atoull(yytext+1);
|
||||
if ((unsigned)Val != Val)
|
||||
@ -2030,16 +2039,16 @@ YY_RULE_SETUP
|
||||
YY_BREAK
|
||||
case 135:
|
||||
YY_RULE_SETUP
|
||||
#line 417 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 426 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
|
||||
YY_BREAK
|
||||
case 136:
|
||||
YY_RULE_SETUP
|
||||
#line 418 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 427 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
|
||||
YY_BREAK
|
||||
case YY_STATE_EOF(INITIAL):
|
||||
#line 420 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 429 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{
|
||||
/* Make sure to free the internal buffers for flex when we are
|
||||
* done reading our input!
|
||||
@ -2050,20 +2059,20 @@ case YY_STATE_EOF(INITIAL):
|
||||
YY_BREAK
|
||||
case 137:
|
||||
YY_RULE_SETUP
|
||||
#line 428 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 437 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ /* Ignore whitespace */ }
|
||||
YY_BREAK
|
||||
case 138:
|
||||
YY_RULE_SETUP
|
||||
#line 429 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 438 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
{ return yytext[0]; }
|
||||
YY_BREAK
|
||||
case 139:
|
||||
YY_RULE_SETUP
|
||||
#line 431 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 440 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
YY_FATAL_ERROR( "flex scanner jammed" );
|
||||
YY_BREAK
|
||||
#line 2067 "Lexer.cpp"
|
||||
#line 2076 "Lexer.cpp"
|
||||
|
||||
case YY_END_OF_BUFFER:
|
||||
{
|
||||
@ -2941,5 +2950,5 @@ int main()
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
#line 431 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
#line 440 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
|
||||
|
||||
|
@ -102,15 +102,22 @@ static double HexToFP(const char *Buffer) {
|
||||
|
||||
// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
|
||||
// appropriate character.
|
||||
char *UnEscapeLexed(char *Buffer) {
|
||||
char *UnEscapeLexed(char *Buffer, char* EndBuffer) {
|
||||
char *BOut = Buffer;
|
||||
for (char *BIn = Buffer; *BIn; ) {
|
||||
if (BIn[0] == '\\' && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
|
||||
char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
|
||||
*BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
|
||||
BIn[3] = Tmp; // Restore character
|
||||
BIn += 3; // Skip over handled chars
|
||||
++BOut;
|
||||
if (BIn[0] == '\\') {
|
||||
if (BIn < EndBuffer-1 && BIn[1] == '\\') {
|
||||
*BOut++ = '\\'; // Two \ becomes one
|
||||
BIn += 2;
|
||||
} else if (BIn < EndBuffer-2 && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
|
||||
char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
|
||||
*BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
|
||||
BIn[3] = Tmp; // Restore character
|
||||
BIn += 3; // Skip over handled chars
|
||||
++BOut;
|
||||
} else {
|
||||
*BOut++ = *BIn++;
|
||||
}
|
||||
} else {
|
||||
*BOut++ = *BIn++;
|
||||
}
|
||||
@ -326,28 +333,30 @@ shufflevector { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
|
||||
}
|
||||
{QuoteLabel} {
|
||||
yytext[yyleng-2] = 0; // nuke colon, end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+1);
|
||||
const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+1, EndChar - yytext - 1);
|
||||
return LABELSTR;
|
||||
}
|
||||
|
||||
{StringConstant} { yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+1);
|
||||
const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+1, EndChar - yytext - 1);
|
||||
return STRINGCONSTANT;
|
||||
}
|
||||
{AtStringConstant} {
|
||||
yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+2);
|
||||
const char* EndChar =
|
||||
UnEscapeLexed(yytext+2, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+2, EndChar - yytext - 2);
|
||||
return ATSTRINGCONSTANT;
|
||||
}
|
||||
{PctStringConstant} {
|
||||
yytext[yyleng-1] = 0; // nuke end quote
|
||||
const char* EndChar = UnEscapeLexed(yytext+2);
|
||||
const char* EndChar =
|
||||
UnEscapeLexed(yytext+2, yytext+yyleng);
|
||||
llvmAsmlval.StrVal =
|
||||
new std::string(yytext+2, EndChar - yytext - 2);
|
||||
return PCTSTRINGCONSTANT;
|
||||
|
Loading…
Reference in New Issue
Block a user