llvm.org GIT mirror llvm / a54b7cb
For PR1064: Implement the arbitrary bit-width integer feature. The feature allows integers of any bitwidth (up to 64) to be defined instead of just 1, 8, 16, 32, and 64 bit integers. This change does several things: 1. Introduces a new Derived Type, IntegerType, to represent the number of bits in an integer. The Type classes SubclassData field is used to store the number of bits. This allows 2^23 bits in an integer type. 2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and 64-bit integers. These are replaced with just IntegerType which is not a primitive any more. 3. Adjust the rest of LLVM to account for this change. Note that while this incremental change lays the foundation for arbitrary bit-width integers, LLVM has not yet been converted to actually deal with them in any significant way. Most optimization passes, for example, will still only deal with the byte-width integer types. Future increments will rectify this situation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33113 91177308-0d34-0410-b5e6-96231b3b80d8 Reid Spencer 13 years ago
41 changed file(s) with 4167 addition(s) and 3526 deletion(s). Raw diff Collapse all Expand all
2828 class StructValType;
2929 class PointerValType;
3030 class PackedValType;
31 class IntegerValType;
3132
3233 class DerivedType : public Type {
3334 friend class Type;
6869 static inline bool classof(const Type *T) {
6970 return T->isDerivedType();
7071 }
72 };
73
74 /// Class to represent integer types. Note that this class is also used to
75 /// represent the built-in integer types: Int1Ty, Int8Ty, Int16Ty, Int32Ty and
76 /// Int64Ty.
77 /// @brief Integer representation type
78 class IntegerType : public DerivedType {
79 protected:
80 IntegerType(unsigned NumBits) : DerivedType(IntegerTyID) {
81 setSubclassData(NumBits);
82 }
83 friend class TypeMap;
84 public:
85 /// This enum is just used to hold constants we need for IntegerType.
86 enum {
87 MIN_INT_BITS = 1, ///< Minimum number of bits that can be specified
88 MAX_INT_BITS = (1<<23)-1 ///< Maximum number of bits that can be specified
89 ///< Note that bit width is stored in the Type classes SubclassData field
90 ///< which has 23 bits. This yields a maximum bit width of 8,388,607 bits.
91 };
92
93 /// This static method is the primary way of constructing an IntegerType.
94 /// If an IntegerType with the same NumBits value was previously instantiated,
95 /// that instance will be returned. Otherwise a new one will be created. Only
96 /// one instance with a given NumBits value is ever created.
97 /// @brief Get or create an IntegerType instance.
98 static const IntegerType* get(unsigned NumBits);
99
100 /// @brief Get the number of bits in this IntegerType
101 unsigned getBitWidth() const { return getSubclassData(); }
102
103 // Methods for support type inquiry through isa, cast, and dyn_cast:
104 static inline bool classof(const IntegerType *T) { return true; }
105 static inline bool classof(const Type *T) { return T->isIntegral(); }
71106 };
72107
73108
5656 string TypeVal = typeval;
5757 }
5858
59 class LLVMIntegerType
60 : LLVMType {
61 int Width = width;
62 }
63
5964 class LLVMPackedType
6065 : LLVMType{
6166 int NumElts = numelts;
6368 }
6469
6570 def llvm_void_ty : LLVMType;
66 def llvm_i1_ty : LLVMType;
67 def llvm_i8_ty : LLVMType;
68 def llvm_i16_ty : LLVMType;
69 def llvm_i32_ty : LLVMType;
70 def llvm_i64_ty : LLVMType>;
71 def llvm_bool_ty : LLVMIntegerType>;
72 def llvm_i8_ty : LLVMIntegerType;
73 def llvm_i16_ty : LLVMIntegerType;
74 def llvm_i32_ty : LLVMIntegerType;
75 def llvm_i64_ty : LLVMIntegerType;
7176 def llvm_float_ty : LLVMType;
7277 def llvm_double_ty : LLVMType;
73 def llvm_ptr_ty : LLVMType; // sbyte*
74 def llvm_ptrptr_ty : LLVMType; // sbyte**
78 def llvm_ptr_ty : LLVMType; // i8*
79 def llvm_ptrptr_ty : LLVMType; // i8**
7580 def llvm_descriptor_ty : LLVMType; // global*
7681
77 def llvm_v16i8_ty : LLVMPackedType; // 16 x sbyte
78 def llvm_v8i16_ty : LLVMPackedType; // 8 x short
79
80 def llvm_v2i64_ty : LLVMPackedType; // 2 x long
81 def llvm_v2i32_ty : LLVMPackedType; // 2 x int
82 def llvm_v4i32_ty : LLVMPackedType; // 4 x int
83 def llvm_v4f32_ty : LLVMPackedType; // 4 x float
84 def llvm_v2f64_ty : LLVMPackedType; // 2 x double
82 def llvm_v16i8_ty : LLVMPackedType; // 16 x i8
83 def llvm_v8i16_ty : LLVMPackedType; // 8 x i16
84 def llvm_v2i64_ty : LLVMPackedType; // 2 x i64
85 def llvm_v2i32_ty : LLVMPackedType; // 2 x i32
86 def llvm_v4i32_ty : LLVMPackedType; // 4 x i32
87 def llvm_v4f32_ty : LLVMPackedType; // 4 x float
88 def llvm_v2f64_ty : LLVMPackedType;// 2 x double
8589
8690 //===----------------------------------------------------------------------===//
8791 // Intrinsic Definitions.
2121 #ifndef LLVM_TARGET_TARGETLOWERING_H
2222 #define LLVM_TARGET_TARGETLOWERING_H
2323
24 #include "llvm/Type.h"
24 #include "llvm/DerivedTypes.h"
2525 #include "llvm/CodeGen/SelectionDAGNodes.h"
2626 #include
2727
428428 switch (Ty->getTypeID()) {
429429 default: assert(0 && "Unknown type!");
430430 case Type::VoidTyID: return MVT::isVoid;
431 case Type::Int1TyID: return MVT::i1;
432 case Type::Int8TyID: return MVT::i8;
433 case Type::Int16TyID: return MVT::i16;
434 case Type::Int32TyID: return MVT::i32;
435 case Type::Int64TyID: return MVT::i64;
431 case Type::IntegerTyID:
432 switch (cast(Ty)->getBitWidth()) {
433 default: assert(0 && "Invalid width for value type");
434 case 1: return MVT::i1;
435 case 8: return MVT::i8;
436 case 16: return MVT::i16;
437 case 32: return MVT::i32;
438 case 64: return MVT::i64;
439 }
440 break;
436441 case Type::FloatTyID: return MVT::f32;
437442 case Type::DoubleTyID: return MVT::f64;
438443 case Type::PointerTyID: return PointerTy;
7070 ///
7171 enum TypeID {
7272 // PrimitiveTypes .. make sure LastPrimitiveTyID stays up to date
73 VoidTyID = 0 , Int1TyID, // 0, 1: Basics...
74 Int8TyID, // 2 : 8 bit type...
75 Int16TyID, // 3 : 16 bit type...
76 Int32TyID, // 4 : 32 bit type...
77 Int64TyID, // 5 : 64 bit type...
78 FloatTyID, DoubleTyID, // 6, 7: Floating point types...
79 LabelTyID, // 8 : Labels...
73 VoidTyID = 0, ///< 0: type with no size
74 FloatTyID, ///< 1: 32 bit floating point type
75 DoubleTyID, ///< 2: 64 bit floating point type
76 LabelTyID, ///< 3: Labels
8077
8178 // Derived types... see DerivedTypes.h file...
8279 // Make sure FirstDerivedTyID stays up to date!!!
83 FunctionTyID , StructTyID, // Functions... Structs...
84 ArrayTyID , PointerTyID, // Array... pointer...
85 OpaqueTyID, // Opaque type instances...
86 PackedTyID, // SIMD 'packed' format...
87 BC_ONLY_PackedStructTyID, // packed struct, for BC rep only
88 //...
80 IntegerTyID, ///< 4: Arbitrary bit width integers
81 FunctionTyID, ///< 5: Functions
82 StructTyID, ///< 6: Structures
83 PackedStructTyID,///< 7: Packed Structure. This is for bytecode only
84 ArrayTyID, ///< 8: Arrays
85 PointerTyID, ///< 9: Pointers
86 OpaqueTyID, ///< 10: Opaque: type with unknown structure
87 PackedTyID, ///< 11: SIMD 'packed' format, or other vector type
8988
9089 NumTypeIDs, // Must remain as last defined ID
9190 LastPrimitiveTyID = LabelTyID,
92 FirstDerivedTyID = FunctionTyID
91 FirstDerivedTyID = IntegerTyID
9392 };
9493
9594 private:
9695 TypeID ID : 8; // The current base type of this type.
9796 bool Abstract : 1; // True if type contains an OpaqueType
98 bool SubclassData : 1; //Space for subclasses to store a flag
97 unsigned SubclassData : 23; //Space for subclasses to store data
9998
10099 /// RefCount - This counts the number of PATypeHolders that are pointing to
101100 /// this type. When this number falls to zero, if the type is abstract and
107106 const Type *getForwardedTypeInternal() const;
108107 protected:
109108 Type(const char *Name, TypeID id);
110 Type(TypeID id) : ID(id), Abstract(false), RefCount(0), ForwardType(0) {}
109 Type(TypeID id) : ID(id), Abstract(false), SubclassData(0), RefCount(0),
110 ForwardType(0) {}
111111 virtual ~Type() {
112112 assert(AbstractTypeUsers.empty());
113113 }
118118
119119 unsigned getRefCount() const { return RefCount; }
120120
121 bool getSubclassData() const { return SubclassData; }
122 void setSubclassData(bool b) { SubclassData = b; }
121 unsigned getSubclassData() const { return SubclassData; }
122 void setSubclassData(unsigned val) { SubclassData = val; }
123123
124124 /// ForwardType - This field is used to implement the union find scheme for
125125 /// abstract types. When types are refined to other types, this field is set
161161
162162 /// isInteger - Equivalent to isSigned() || isUnsigned()
163163 ///
164 bool isInteger() const { return ID >= Int8TyID && ID <= Int64TyID; }
164 bool isInteger() const { return ID == IntegerTyID && this != Int1Ty; }
165165
166166 /// isIntegral - Returns true if this is an integral type, which is either
167167 /// Int1Ty or one of the Integer types.
168168 ///
169 bool isIntegral() const { return isInteger() || this == Int1Ty; }
169 bool isIntegral() const { return ID == IntegerTyID; }
170170
171171 /// isFloatingPoint - Return true if this is one of the two floating point
172172 /// types
199199 ///
200200 inline bool isFirstClassType() const {
201201 return (ID != VoidTyID && ID <= LastPrimitiveTyID) ||
202 ID == PointerTyID || ID == PackedTyID;
202 ID == IntegerTyID || ID == PointerTyID || ID == PackedTyID;
203203 }
204204
205205 /// isSized - Return true if it makes sense to take the size of this type. To
208208 ///
209209 bool isSized() const {
210210 // If it's a primitive, it is always sized.
211 if (ID >= Int1TyID && ID <= DoubleTyID || ID == PointerTyID)
211 if (ID == IntegerTyID || (ID >= FloatTyID && ID <= DoubleTyID) ||
212 ID == PointerTyID)
212213 return true;
213214 // If it is not something that can have a size (e.g. a function or label),
214215 // it doesn't have a size.
215 if (ID != StructTyID && ID != ArrayTyID && ID != PackedTyID)
216 if (ID != StructTyID && ID != ArrayTyID && ID != PackedTyID &&
217 ID != PackedStructTyID)
216218 return false;
217219 // If it is something that can have a size and it's concrete, it definitely
218220 // has a size, otherwise we have to try harder to decide.
223225 /// type. These are fixed by LLVM and are not target dependent. This will
224226 /// return zero if the type does not have a size or is not a primitive type.
225227 ///
226 unsigned getPrimitiveSize() const;
227228 unsigned getPrimitiveSizeInBits() const;
228229
229230 /// getIntegralTypeMask - Return a bitmask with ones set for all of the bits
247248 /// will be promoted to if passed through a variable argument
248249 /// function.
249250 const Type *getVAArgsPromotedType() const {
250 if (ID == Int1TyID || ID == Int8TyID || ID == Int16TyID)
251 if (ID == IntegerTyID && getSubclassData() < 32)
251252 return Type::Int32Ty;
252253 else if (ID == FloatTyID)
253254 return Type::DoubleTy;
287288 //===--------------------------------------------------------------------===//
288289 // These are the builtin types that are always available...
289290 //
290 static Type *VoidTy , *Int1Ty;
291 static Type *Int8Ty , *Int16Ty,
292 *Int32Ty, *Int64Ty;
293 static Type *FloatTy, *DoubleTy;
294
295 static Type* LabelTy;
291 static const Type *VoidTy, *LabelTy, *FloatTy, *DoubleTy;
292 static const Type *Int1Ty, *Int8Ty, *Int16Ty, *Int32Ty, *Int64Ty;
296293
297294 /// Methods for support type inquiry through isa, cast, and dyn_cast:
298295 static inline bool classof(const Type *T) { return true; }
316316 *yy_cp = '\0'; \
317317 yy_c_buf_p = yy_cp;
318318
319 #define YY_NUM_RULES 138
320 #define YY_END_OF_BUFFER 139
321 static yyconst short int yy_acclist[216] =
319 #define YY_NUM_RULES 135
320 #define YY_END_OF_BUFFER 136
321 static yyconst short int yy_acclist[214] =
322322 { 0,
323 139, 137, 138, 136, 137, 138, 136, 138, 137, 138,
324 137, 138, 137, 138, 137, 138, 137, 138, 137, 138,
325 129, 137, 138, 129, 137, 138, 1, 137, 138, 137,
326 138, 137, 138, 137, 138, 137, 138, 137, 138, 137,
327 138, 137, 138, 137, 138, 137, 138, 137, 138, 137,
328 138, 137, 138, 137, 138, 137, 138, 137, 138, 137,
329 138, 137, 138, 137, 138, 137, 138, 137, 138, 137,
330 138, 128, 126, 125, 125, 132, 130, 134, 129, 1,
331 111, 39, 71, 48, 72, 67, 23, 128, 125, 125,
332 133, 134, 20, 134, 135, 57, 66, 37, 32, 40,
333
334 3, 49, 50, 51, 59, 81, 86, 84, 85, 83,
335 82, 87, 91, 110, 76, 74, 106, 75, 73, 58,
336 89, 80, 78, 79, 77, 90, 88, 68, 127, 134,
337 134, 108, 47, 92, 70, 62, 118, 65, 69, 119,
338 107, 22, 131, 61, 95, 64, 24, 4, 55, 60,
339 63, 46, 12, 94, 134, 34, 2, 5, 52, 97,
340 54, 120, 93, 21, 117, 43, 7, 53, 28, 42,
341 101, 100, 8, 113, 31, 116, 36, 56, 105, 99,
342 112, 25, 26, 98, 114, 109, 104, 41, 6, 27,
343 96, 35, 9, 17, 10, 102, 11, 103, 33, 13,
344
345 15, 14, 30, 38, 16, 29, 115, 121, 123, 124,
346 44, 122, 18, 45, 19
323 136, 134, 135, 133, 134, 135, 133, 135, 134, 135,
324 134, 135, 134, 135, 134, 135, 134, 135, 134, 135,
325 126, 134, 135, 126, 134, 135, 1, 134, 135, 134,
326 135, 134, 135, 134, 135, 134, 135, 134, 135, 134,
327 135, 134, 135, 53, 134, 135, 134, 135, 134, 135,
328 134, 135, 134, 135, 134, 135, 134, 135, 134, 135,
329 134, 135, 134, 135, 134, 135, 134, 135, 134, 135,
330 134, 135, 125, 123, 122, 122, 129, 127, 131, 126,
331 1, 108, 39, 68, 53, 69, 64, 23, 125, 122,
332 122, 130, 131, 20, 131, 132, 54, 63, 37, 32,
333
334 40, 3, 56, 78, 83, 81, 82, 80, 79, 84,
335 88, 107, 73, 71, 103, 72, 70, 55, 86, 77,
336 75, 76, 74, 87, 85, 65, 124, 131, 131, 105,
337 47, 89, 67, 59, 115, 62, 66, 116, 104, 22,
338 128, 58, 92, 61, 24, 4, 51, 57, 60, 46,
339 12, 91, 131, 34, 2, 5, 48, 94, 50, 117,
340 90, 21, 114, 43, 7, 49, 28, 42, 98, 97,
341 8, 110, 31, 113, 36, 52, 102, 96, 109, 25,
342 26, 95, 111, 106, 101, 41, 6, 27, 93, 35,
343 9, 17, 10, 99, 11, 100, 33, 13, 15, 14,
344
345 30, 38, 16, 29, 112, 118, 120, 121, 44, 119,
346 18, 45, 19
347347 } ;
348348
349 static yyconst short int yy_accept[558] =
349 static yyconst short int yy_accept[552] =
350350 { 0,
351351 1, 1, 1, 2, 4, 7, 9, 11, 13, 15,
352352 17, 19, 21, 24, 27, 30, 32, 34, 36, 38,
353 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
354 60, 62, 64, 66, 68, 70, 72, 72, 73, 73,
355 74, 75, 76, 77, 77, 78, 78, 79, 80, 80,
356 81, 81, 81, 81, 81, 81, 81, 81, 81, 82,
357 82, 83, 83, 83, 83, 83, 83, 83, 83, 84,
358 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
359 84, 84, 85, 85, 85, 85, 85, 85, 85, 85,
360 85, 85, 85, 86, 86, 86, 86, 86, 86, 86,
361
362 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
353 40, 42, 44, 47, 49, 51, 53, 55, 57, 59,
354 61, 63, 65, 67, 69, 71, 73, 73, 74, 74,
355 75, 76, 77, 78, 78, 79, 79, 80, 81, 81,
356 82, 82, 82, 82, 82, 82, 82, 82, 82, 83,
357 83, 84, 84, 84, 84, 84, 84, 84, 84, 85,
358 85, 85, 85, 85, 85, 85, 85, 85, 85, 86,
359 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
363360 87, 87, 87, 87, 87, 87, 87, 88, 88, 88,
361
364362 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
365 88, 88, 88, 89, 90, 92, 93, 94, 95, 95,
366 96, 97, 97, 97, 98, 98, 98, 99, 99, 100,
367 100, 100, 100, 101, 101, 101, 101, 101, 101, 101,
368 101, 101, 101, 102, 102, 102, 102, 102, 102, 102,
369 102, 102, 102, 102, 102, 103, 104, 105, 105, 105,
370 105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
371 106, 106, 107, 108, 109, 110, 111, 112, 112, 113,
372
373 114, 114, 114, 115, 115, 115, 115, 115, 115, 116,
374 117, 118, 118, 118, 118, 119, 120, 120, 120, 121,
375 121, 121, 121, 121, 121, 121, 121, 122, 123, 124,
376 124, 125, 126, 126, 127, 128, 128, 128, 128, 128,
377 128, 128, 128, 128, 129, 129, 129, 130, 131, 131,
378 131, 131, 132, 132, 132, 132, 133, 133, 133, 134,
379 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
380 135, 135, 135, 135, 135, 135, 136, 137, 137, 137,
381 137, 137, 138, 139, 139, 139, 140, 140, 140, 140,
382 140, 140, 140, 140, 140, 141, 142, 142, 142, 143,
383
384 143, 143, 143, 144, 145, 145, 145, 146, 146, 146,
385 146, 147, 147, 147, 148, 148, 148, 149, 149, 150,
386 151, 151, 151, 151, 151, 152, 152, 153, 153, 154,
387 154, 154, 155, 156, 157, 157, 157, 158, 158, 158,
388 158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
389 158, 158, 159, 159, 160, 161, 161, 161, 161, 161,
390 161, 161, 161, 161, 161, 161, 162, 162, 162, 162,
391 162, 162, 162, 162, 162, 162, 162, 162, 162, 163,
392 163, 163, 163, 164, 164, 165, 165, 165, 165, 165,
393 165, 165, 165, 166, 166, 166, 167, 167, 167, 167,
394
395 167, 168, 168, 168, 168, 169, 170, 170, 170, 171,
396 172, 173, 173, 173, 174, 174, 174, 174, 174, 175,
397 175, 176, 177, 178, 179, 179, 179, 179, 180, 180,
398 180, 181, 182, 183, 184, 185, 185, 186, 187, 187,
399 187, 187, 187, 187, 188, 188, 189, 189, 190, 191,
400 191, 191, 191, 191, 191, 192, 192, 192, 192, 192,
401 192, 192, 192, 192, 193, 193, 193, 193, 193, 193,
402 193, 193, 193, 194, 194, 194, 194, 194, 195, 195,
403 195, 195, 195, 196, 197, 198, 198, 199, 199, 199,
404 199, 200, 200, 200, 200, 201, 201, 202, 203, 203,
405
406 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
407 203, 204, 204, 204, 204, 204, 204, 204, 204, 205,
408 205, 205, 205, 205, 206, 206, 206, 206, 206, 207,
409 207, 208, 208, 208, 208, 208, 208, 208, 208, 208,
410 208, 208, 208, 208, 209, 209, 210, 211, 211, 212,
411 212, 213, 214, 215, 215, 216, 216
363 88, 88, 88, 88, 89, 89, 89, 89, 89, 89,
364 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
365 90, 91, 93, 94, 95, 96, 96, 97, 98, 98,
366 98, 99, 99, 99, 100, 100, 101, 101, 101, 101,
367 102, 102, 102, 102, 102, 102, 102, 102, 102, 102,
368 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
369 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
370 103, 103, 103, 103, 104, 104, 105, 106, 107, 108,
371 109, 110, 110, 111, 112, 112, 112, 113, 113, 113,
372
373 113, 113, 113, 114, 115, 116, 116, 116, 116, 117,
374 118, 118, 118, 119, 119, 119, 119, 119, 119, 119,
375 119, 120, 121, 122, 122, 123, 124, 124, 125, 126,
376 126, 126, 126, 126, 126, 126, 126, 126, 127, 127,
377 127, 128, 129, 129, 129, 129, 130, 130, 130, 130,
378 131, 131, 131, 132, 133, 133, 133, 133, 133, 133,
379 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
380 134, 135, 135, 135, 135, 135, 136, 137, 137, 137,
381 138, 138, 138, 138, 138, 138, 138, 138, 138, 139,
382 140, 140, 140, 141, 141, 141, 141, 142, 143, 143,
383
384 143, 144, 144, 144, 144, 145, 145, 145, 146, 146,
385 146, 147, 147, 148, 149, 149, 149, 149, 149, 150,
386 150, 151, 151, 152, 152, 152, 153, 154, 155, 155,
387 155, 156, 156, 156, 156, 156, 156, 156, 156, 156,
388 156, 156, 156, 156, 156, 156, 157, 157, 158, 159,
389 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
390 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
391 160, 160, 160, 161, 161, 161, 161, 162, 162, 163,
392 163, 163, 163, 163, 163, 163, 163, 164, 164, 164,
393 165, 165, 165, 165, 165, 166, 166, 166, 166, 167,
394
395 168, 168, 168, 169, 170, 171, 171, 171, 172, 172,
396 172, 172, 172, 173, 173, 174, 175, 176, 177, 177,
397 177, 177, 178, 178, 178, 179, 180, 181, 182, 183,
398 183, 184, 185, 185, 185, 185, 185, 185, 186, 186,
399 187, 187, 188, 189, 189, 189, 189, 189, 189, 190,
400 190, 190, 190, 190, 190, 190, 190, 190, 191, 191,
401 191, 191, 191, 191, 191, 191, 191, 192, 192, 192,
402 192, 192, 193, 193, 193, 193, 193, 194, 195, 196,
403 196, 197, 197, 197, 197, 198, 198, 198, 198, 199,
404 199, 200, 201, 201, 201, 201, 201, 201, 201, 201,
405
406 201, 201, 201, 201, 201, 202, 202, 202, 202, 202,
407 202, 202, 202, 203, 203, 203, 203, 203, 204, 204,
408 204, 204, 204, 205, 205, 206, 206, 206, 206, 206,
409 206, 206, 206, 206, 206, 206, 206, 206, 207, 207,
410 208, 209, 209, 210, 210, 211, 212, 213, 213, 214,
411 214
412412 } ;
413413
414414 static yyconst int yy_ec[256] =
417417 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
418418 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
419419 1, 2, 1, 4, 1, 5, 6, 1, 1, 1,
420 1, 1, 7, 1, 8, 9, 1, 10, 11, 12,
421 13, 14, 15, 16, 15, 17, 15, 18, 19, 1,
422 1, 1, 1, 1, 20, 20, 20, 20, 21, 20,
420 1, 1, 7, 1, 8, 9, 1, 10, 11, 11,
421 11, 11, 11, 12, 11, 13, 11, 14, 15, 1,
422 1, 1, 1, 1, 16, 16, 16, 16, 17, 16,
423423 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
424424 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
425 1, 1, 1, 1, 22, 1, 23, 24, 25, 26,
426
427 27, 28, 29, 30, 31, 5, 32, 33, 34, 35,
428 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
429 46, 47, 1, 1, 1, 1, 1, 1, 1, 1,
425 1, 1, 1, 1, 18, 1, 19, 20, 21, 22,
426
427 23, 24, 25, 26, 27, 5, 28, 29, 30, 31,
428 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
429 42, 43, 1, 1, 1, 1, 1, 1, 1, 1,
430430 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
431431 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
432432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
443443 1, 1, 1, 1, 1
444444 } ;
445445
446 static yyconst int yy_meta[48] =
446 static yyconst int yy_meta[44] =
447447 { 0,
448 1, 1, 2, 1, 3, 1, 4, 5, 3, 6,
449 6, 6, 6, 6, 6, 6, 6, 7, 1, 3,
450 8, 3, 3, 3, 3, 3, 8, 3, 3, 3,
448 1, 1, 2, 1, 3, 1, 1, 3, 3, 3,
449 3, 3, 3, 4, 1, 3, 3, 3, 3, 3,
451450 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
452 3, 3, 3, 3, 3, 3, 3
451 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
452 3, 3, 3
453453 } ;
454454
455 static yyconst short int yy_base[566] =
455 static yyconst short int yy_base[556] =
456456 { 0,
457 0, 0, 1196, 1197, 1197, 1197, 1191, 1176, 40, 0,
458 48, 58, 68, 1148, 0, 68, 71, 81, 91, 52,
459 97, 98, 126, 110, 117, 120, 136, 138, 73, 170,
460 159, 205, 134, 131, 56, 137, 1188, 1197, 1173, 1197,
461 0, 235, 0, 1181, 1180, 158, 243, 1143, 261, 0,
462 70, 154, 93, 31, 160, 163, 175, 57, 1169, 173,
463 192, 189, 127, 54, 200, 202, 166, 195, 1168, 201,
464 250, 114, 171, 225, 273, 212, 251, 244, 53, 215,
465 249, 1167, 261, 275, 276, 278, 280, 281, 211, 285,
466 279, 289, 1166, 290, 288, 283, 293, 309, 307, 311,
467
468 310, 313, 314, 315, 295, 317, 321, 320, 325, 324,
469 333, 337, 327, 344, 339, 341, 1165, 351, 334, 355,
470 357, 358, 359, 360, 370, 363, 361, 371, 380, 376,
471 366, 373, 1164, 0, 0, 386, 1163, 0, 412, 0,
472 1162, 392, 397, 1161, 390, 393, 1160, 412, 1159, 413,
473 416, 417, 1158, 418, 419, 421, 422, 423, 424, 428,
474 433, 429, 434, 436, 439, 440, 448, 444, 449, 450,
475 452, 455, 451, 453, 1157, 1156, 1155, 456, 465, 472,
476 474, 458, 478, 94, 462, 482, 468, 479, 484, 1154,
477 486, 1153, 1152, 1151, 1150, 1149, 1148, 491, 1147, 1146,
478
479 488, 492, 1145, 524, 499, 502, 495, 512, 1144, 1143,
480 1142, 493, 498, 496, 1141, 1140, 528, 536, 1139, 537,
481 538, 539, 540, 545, 500, 541, 1138, 1137, 1136, 543,
482 1135, 1134, 542, 1133, 1132, 546, 552, 547, 564, 548,
483 567, 568, 506, 1131, 558, 570, 1197, 568, 258, 584,
484 589, 591, 575, 583, 584, 1130, 585, 586, 1129, 1128,
485 587, 588, 589, 595, 598, 596, 604, 597, 599, 605,
486 609, 600, 618, 607, 619, 1127, 1126, 606, 608, 622,
487 625, 1125, 1124, 627, 628, 1123, 630, 632, 634, 636,
488 637, 635, 638, 643, 1122, 1121, 641, 645, 1120, 640,
489
490 647, 648, 0, 1119, 652, 661, 1118, 657, 662, 663,
491 1117, 669, 672, 1116, 674, 675, 1115, 677, 1114, 1113,
492 676, 681, 680, 682, 1112, 687, 1111, 688, 1110, 692,
493 693, 1109, 0, 1108, 689, 695, 1107, 696, 697, 700,
494 709, 707, 698, 701, 715, 713, 717, 720, 722, 723,
495 724, 1106, 726, 1105, 1104, 725, 728, 727, 734, 730,
496 735, 737, 742, 746, 747, 1103, 749, 748, 754, 753,
497 755, 758, 750, 752, 768, 769, 771, 773, 1102, 774,
498 772, 776, 1101, 775, 1100, 780, 782, 777, 783, 793,
499 778, 789, 1099, 797, 779, 1098, 799, 800, 803, 804,
500
501 1097, 805, 808, 811, 1096, 1095, 814, 809, 1094, 1093,
502 1092, 815, 812, 1091, 821, 824, 820, 817, 1090, 834,
503 1089, 1088, 1087, 1086, 823, 835, 836, 1085, 837, 838,
504 1084, 1083, 1082, 1081, 1080, 839, 1079, 1078, 842, 843,
505 847, 845, 849, 1077, 850, 1076, 854, 1075, 1070, 856,
506 859, 860, 861, 862, 1067, 869, 864, 867, 868, 863,
507 870, 874, 875, 1064, 885, 888, 887, 890, 889, 893,
508 891, 894, 1056, 895, 901, 902, 904, 1053, 903, 906,
509 907, 908, 1050, 1044, 1033, 909, 1032, 911, 921, 926,
510 1031, 927, 931, 916, 1030, 915, 1026, 1025, 935, 933,
511
512 937, 939, 941, 943, 945, 946, 947, 948, 949, 950,
513 1024, 951, 954, 956, 958, 959, 967, 961, 1023, 971,
514 963, 973, 974, 1022, 977, 979, 982, 966, 1018, 985,
515 1016, 990, 987, 991, 992, 993, 997, 996, 999, 1000,
516 1001, 998, 1006, 549, 1011, 513, 466, 1010, 398, 1012,
517 331, 291, 208, 1013, 168, 1197, 1052, 1058, 1064, 177,
518 1072, 1078, 123, 1081, 1086
457 0, 0, 1195, 1196, 1196, 1196, 1190, 1179, 36, 40,
458 44, 50, 56, 62, 0, 63, 66, 81, 89, 47,
459 108, 91, 134, 92, 72, 93, 152, 124, 109, 178,
460 138, 209, 121, 111, 146, 119, 1188, 1196, 1177, 1196,
461 0, 183, 198, 215, 236, 70, 241, 256, 261, 0,
462 68, 122, 140, 125, 160, 101, 154, 31, 1176, 153,
463 155, 183, 48, 184, 265, 170, 192, 149, 1175, 206,
464 227, 203, 175, 225, 273, 274, 223, 262, 269, 277,
465 228, 278, 215, 281, 287, 279, 290, 289, 294, 1174,
466 295, 288, 302, 306, 307, 312, 313, 314, 318, 299,
467
468 319, 46, 322, 323, 324, 328, 326, 332, 336, 339,
469 340, 348, 351, 1173, 353, 337, 354, 358, 359, 360,
470 362, 379, 365, 369, 376, 370, 386, 380, 381, 1172,
471 0, 396, 413, 1171, 427, 444, 0, 1170, 396, 399,
472 1169, 404, 398, 1168, 390, 1167, 414, 418, 420, 1166,
473 431, 406, 445, 429, 432, 446, 448, 449, 450, 451,
474 452, 453, 455, 344, 457, 460, 466, 467, 468, 470,
475 474, 471, 472, 483, 486, 476, 489, 491, 481, 499,
476 496, 497, 500, 1165, 501, 1164, 1163, 1162, 1161, 1160,
477 1159, 502, 1158, 1157, 503, 506, 1156, 534, 510, 511,
478
479 514, 515, 1155, 1154, 1153, 508, 519, 527, 1152, 1151,
480 546, 526, 1150, 525, 549, 550, 551, 554, 556, 552,
481 1149, 1148, 1147, 555, 1146, 1145, 557, 1144, 1143, 558,
482 559, 553, 574, 513, 575, 568, 581, 1142, 560, 576,
483 1196, 591, 599, 605, 609, 614, 615, 584, 616, 1141,
484 617, 618, 1140, 1139, 619, 620, 621, 622, 624, 625,
485 627, 628, 630, 635, 631, 638, 647, 639, 649, 1138,
486 1137, 641, 645, 651, 653, 1136, 1135, 654, 657, 1134,
487 658, 660, 661, 665, 666, 663, 670, 671, 1133, 1132,
488 672, 674, 1131, 676, 679, 685, 0, 1130, 684, 687,
489
490 1129, 691, 695, 696, 1128, 698, 692, 1127, 705, 693,
491 1126, 709, 1125, 1124, 710, 711, 712, 713, 1123, 715,
492 1122, 718, 1121, 722, 724, 1120, 729, 1119, 729, 723,
493 1118, 733, 735, 738, 739, 740, 747, 748, 750, 751,
494 752, 749, 759, 760, 754, 1117, 762, 1116, 1115, 753,
495 765, 763, 764, 767, 772, 774, 775, 779, 781, 1114,
496 783, 784, 787, 786, 796, 799, 789, 785, 791, 801,
497 807, 804, 1113, 806, 809, 810, 1112, 811, 1111, 813,
498 821, 815, 812, 822, 824, 828, 1110, 831, 833, 1109,
499 834, 835, 836, 837, 1108, 838, 839, 840, 1107, 1106,
500
501 848, 843, 1105, 1104, 1103, 854, 849, 1102, 841, 859,
502 862, 855, 1101, 863, 1100, 1099, 1098, 1097, 869, 871,
503 872, 1096, 873, 874, 1095, 1094, 1093, 1092, 1091, 875,
504 1090, 1089, 876, 877, 885, 879, 880, 1088, 881, 1087,
505 883, 1086, 1085, 886, 894, 895, 896, 900, 1084, 903,
506 902, 898, 905, 906, 908, 910, 914, 1083, 916, 922,
507 918, 924, 925, 928, 926, 929, 1080, 930, 934, 936,
508 938, 1070, 943, 939, 942, 944, 1069, 1068, 1066, 950,
509 1064, 946, 945, 960, 1063, 961, 962, 951, 1062, 969,
510 1061, 1060, 970, 971, 972, 973, 974, 976, 977, 979,
511
512 981, 982, 983, 986, 1058, 985, 988, 989, 993, 994,
513 997, 1000, 1057, 1001, 1007, 1009, 1011, 1055, 1012, 1013,
514 1014, 1015, 1054, 1017, 1053, 1018, 1030, 1025, 1028, 1019,
515 1029, 1020, 1031, 1034, 1039, 1042, 1044, 719, 1048, 586,
516 583, 1049, 469, 1050, 415, 248, 245, 1051, 208, 1196,
517 1086, 1088, 169, 1092, 106
519518 } ;
520519
521 static yyconst short int yy_def[566] =
520 static yyconst short int yy_def[556] =
522521 { 0,
523 556, 1, 556, 556, 556, 556, 557, 558, 559, 560,
524 558, 558, 11, 13, 561, 558, 558, 558, 558, 558,
525 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
526 558, 558, 558, 558, 558, 558, 557, 556, 558, 556,
527 562, 562, 563, 560, 11, 558, 11, 13, 11, 561,
528 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
529 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
530 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
531 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
532 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
533
534 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
535 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
536 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
537 558, 558, 556, 562, 42, 564, 558, 47, 11, 49,
538 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
539 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
540 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
541 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
542 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
543 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
544
545 558, 558, 558, 49, 558, 558, 558, 558, 558, 558,
546 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
547 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
548 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
549 558, 558, 558, 558, 558, 558, 556, 564, 565, 565,
550 139, 139, 558, 558, 558, 558, 558, 558, 558, 558,
551 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
552 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
553 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
554 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
555
556 558, 558, 204, 558, 558, 558, 558, 558, 558, 558,
557 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
558 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
559 558, 558, 250, 558, 558, 558, 558, 558, 558, 558,
560 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
561 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
562 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
563 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
564 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
565 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
566
567 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
568 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
569 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
570 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
571 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
572 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
573 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
574 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
575 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
576 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
577
578 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
579 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
580 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
581 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
582 558, 558, 558, 558, 558, 558, 558, 558, 558, 558,
583 558, 558, 558, 558, 558, 0, 556, 556, 556, 556,
584 556, 556, 556, 556, 556
522 550, 1, 550, 550, 550, 550, 551, 552, 553, 550,
523 552, 552, 552, 552, 554, 552, 552, 552, 552, 552,
524 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
525 552, 552, 552, 552, 552, 552, 551, 550, 552, 550,
526 555, 555, 550, 550, 552, 552, 552, 552, 552, 554,
527 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
528 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
529 552, 552, 552, 552, 552, 552, 552, 552, 23, 552,
530 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
531 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
532
533 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
534 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
535 552, 552, 552, 552, 552, 552, 552, 552, 552, 550,
536 555, 555, 550, 552, 552, 552, 49, 552, 552, 552,
537 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
538 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
539 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
540 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
541 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
542 552, 552, 552, 552, 552, 552, 552, 49, 552, 552,
543
544 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
545 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
546 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
547 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
548 550, 550, 550, 550, 552, 552, 552, 552, 552, 552,
549 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
550 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
551 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
552 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
553 552, 552, 552, 552, 552, 552, 198, 552, 552, 552,
554
555 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
556 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
557 552, 552, 552, 552, 552, 552, 550, 552, 552, 552,
558 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
559 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
560 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
561 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
562 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
563 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
564 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
565
566 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
567 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
568 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
569 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
570 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
571 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
572 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
573 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
574 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
575 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
576
577 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
578 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
579 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
580 552, 552, 552, 552, 552, 552, 552, 552, 552, 552,
581 552, 552, 552, 552, 552, 552, 552, 552, 552, 0,
582 550, 550, 550, 550, 550
585583 } ;
586584
587 static yyconst short int yy_nxt[1245] =
585 static yyconst short int yy_nxt[1240] =
588586 { 0,
589587 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
590 14, 14, 14, 14, 14, 14, 14, 4, 15, 8,
591 8, 8, 16, 17, 18, 19, 20, 21, 22, 8,
592 23, 8, 24, 25, 26, 27, 28, 8, 29, 30,
593 31, 32, 33, 34, 35, 8, 36, 42, 40, 43,
594 43, 43, 43, 43, 43, 43, 43, 45, 45, 45,
595 45, 45, 45, 45, 45, 40, 46, 145, 175, 40,
596 40, 40, 130, 40, 40, 40, 47, 48, 48, 48,
597 48, 48, 48, 48, 48, 40, 68, 40, 40, 69,
598 40, 131, 151, 51, 157, 141, 70, 56, 40, 104,
599
600 52, 57, 53, 60, 54, 61, 58, 55, 40, 59,
601 40, 40, 49, 64, 40, 40, 62, 65, 144, 71,
602 63, 72, 73, 66, 77, 293, 67, 40, 43, 74,
603 78, 40, 86, 75, 40, 76, 79, 40, 80, 90,
604 87, 81, 82, 40, 40, 88, 93, 167, 40, 89,
605 83, 40, 91, 40, 40, 40, 127, 129, 92, 84,
606 85, 94, 95, 132, 96, 156, 137, 101, 97, 128,
607 98, 40, 99, 102, 100, 40, 40, 40, 103, 105,
608 40, 116, 44, 40, 142, 40, 143, 40, 40, 146,
609 40, 148, 40, 147, 117, 106, 107, 118, 108, 109,
610
611 110, 168, 111, 149, 119, 152, 40, 162, 112, 40,
612 113, 114, 40, 115, 105, 150, 153, 40, 40, 40,
613 163, 154, 40, 155, 158, 40, 176, 159, 40, 40,
614 120, 121, 40, 122, 161, 123, 160, 124, 172, 125,
615 187, 164, 40, 126, 135, 135, 135, 135, 135, 135,
616 135, 135, 138, 138, 138, 138, 138, 138, 138, 138,
617 169, 40, 177, 139, 250, 250, 40, 40, 40, 139,
618 140, 140, 140, 140, 140, 140, 140, 140, 40, 174,
619 140, 140, 165, 140, 140, 140, 140, 140, 140, 166,
620 40, 173, 40, 40, 178, 40, 40, 40, 40, 170,
621
622 40, 183, 40, 186, 189, 40, 40, 40, 40, 193,
623 40, 179, 40, 171, 184, 180, 181, 188, 182, 195,
624 185, 190, 191, 194, 40, 192, 40, 40, 40, 198,
625 40, 40, 40, 196, 40, 197, 199, 40, 40, 204,
626 200, 40, 40, 201, 40, 206, 209, 205, 40, 213,
627 40, 40, 202, 207, 40, 203, 40, 211, 40, 215,
628 210, 40, 218, 217, 214, 208, 212, 219, 40, 220,
629 225, 221, 40, 216, 40, 40, 40, 40, 40, 222,
630 40, 223, 239, 40, 228, 226, 231, 40, 40, 238,
631 40, 243, 224, 40, 227, 233, 234, 40, 229, 230,
632
633 232, 240, 242, 241, 244, 235, 249, 40, 236, 40,
634 40, 245, 249, 237, 40, 40, 255, 246, 250, 251,
635 253, 252, 252, 252, 252, 252, 252, 252, 252, 40,
636 40, 256, 254, 40, 40, 40, 40, 258, 40, 40,
637 40, 40, 257, 261, 264, 40, 40, 263, 259, 260,
638 40, 40, 270, 40, 266, 265, 40, 40, 262, 268,
639 267, 40, 272, 269, 271, 40, 40, 40, 40, 40,
640 40, 278, 40, 40, 273, 40, 285, 284, 274, 40,
641 275, 282, 40, 40, 276, 40, 277, 280, 283, 40,
642 281, 40, 286, 291, 279, 40, 40, 287, 288, 40,
643
644 289, 40, 294, 40, 292, 40, 296, 295, 40, 40,
645 40, 297, 40, 40, 290, 40, 40, 40, 299, 40,
646 308, 306, 301, 40, 309, 298, 319, 330, 300, 40,
647 40, 310, 302, 303, 303, 303, 303, 303, 303, 303,
648 303, 304, 305, 303, 303, 40, 303, 303, 303, 303,
649 303, 303, 307, 40, 40, 40, 40, 40, 40, 40,
650 40, 311, 40, 40, 40, 40, 40, 315, 322, 40,
651 314, 317, 323, 327, 312, 40, 316, 313, 321, 318,
652 325, 40, 324, 320, 40, 40, 326, 40, 249, 328,
653 556, 556, 40, 331, 249, 556, 39, 556, 39, 329,
654
655 40, 40, 40, 40, 40, 40, 40, 335, 338, 334,
656 332, 339, 40, 40, 40, 40, 40, 40, 336, 337,
657 343, 40, 40, 40, 40, 40, 40, 342, 340, 341,
658 344, 349, 347, 352, 345, 40, 40, 348, 350, 40,
659 351, 346, 40, 353, 40, 40, 354, 40, 355, 40,
660 360, 40, 40, 40, 40, 40, 361, 40, 40, 359,
661 40, 356, 40, 357, 40, 40, 358, 366, 365, 40,
662 362, 364, 363, 367, 40, 368, 369, 370, 40, 40,
663 40, 371, 374, 373, 376, 375, 40, 372, 377, 40,
664 378, 40, 40, 40, 40, 379, 380, 40, 40, 40,
665
666 381, 383, 386, 384, 40, 40, 40, 382, 385, 40,
667 40, 393, 40, 40, 40, 40, 387, 40, 40, 390,
668 394, 396, 397, 392, 40, 388, 40, 401, 389, 399,
669 40, 391, 40, 398, 40, 395, 400, 40, 402, 40,
670 40, 40, 40, 40, 40, 40, 405, 40, 408, 403,
671 409, 40, 40, 404, 40, 410, 406, 407, 411, 40,
672 413, 412, 414, 40, 40, 40, 40, 40, 415, 40,
673 40, 40, 40, 419, 421, 40, 417, 416, 422, 423,
674 426, 424, 418, 420, 425, 40, 40, 427, 40, 40,
675 40, 40, 40, 40, 40, 40, 40, 40, 430, 40,
676
677 40, 429, 434, 432, 436, 438, 40, 437, 428, 431,
678 40, 435, 433, 439, 40, 440, 40, 40, 441, 444,
679 40, 40, 40, 442, 446, 40, 40, 443, 40, 40,
680 448, 40, 40, 445, 40, 452, 453, 40, 40, 455,
681 40, 40, 459, 450, 449, 456, 451, 457, 447, 454,
682 458, 40, 40, 40, 40, 40, 40, 460, 461, 40,
683 40, 462, 40, 465, 40, 466, 40, 40, 467, 463,
684 464, 40, 470, 40, 468, 471, 40, 40, 40, 40,
685 40, 40, 469, 472, 40, 40, 40, 40, 479, 474,
686 473, 40, 40, 478, 475, 480, 485, 476, 481, 482,
687
688 483, 484, 40, 477, 40, 40, 40, 40, 40, 490,
689 40, 40, 40, 486, 489, 487, 491, 493, 40, 40,
690 40, 40, 495, 40, 40, 40, 40, 488, 40, 492,
691 499, 494, 40, 40, 503, 500, 496, 505, 40, 504,
692 501, 497, 498, 40, 40, 506, 510, 502, 40, 507,
693 40, 508, 40, 509, 40, 511, 40, 512, 40, 513,
694 40, 515, 40, 40, 40, 40, 40, 40, 40, 518,
695 521, 40, 523, 40, 516, 40, 40, 514, 40, 520,
696 40, 522, 524, 40, 40, 528, 519, 525, 40, 517,
697 40, 40, 526, 529, 40, 532, 40, 531, 527, 40,
698
699 538, 530, 40, 535, 40, 533, 534, 40, 40, 40,
700 40, 541, 537, 40, 40, 40, 40, 40, 40, 536,
701 539, 542, 540, 40, 548, 549, 543, 40, 40, 40,
702 40, 544, 545, 40, 553, 40, 546, 547, 554, 40,
703 40, 40, 40, 40, 550, 552, 551, 40, 40, 40,
704 40, 555, 37, 37, 37, 37, 37, 37, 37, 37,
705 39, 40, 39, 39, 39, 39, 41, 40, 41, 41,
706 40, 41, 50, 40, 50, 50, 50, 50, 50, 50,
707 134, 40, 134, 134, 40, 134, 248, 40, 248, 333,
708 333, 333, 40, 40, 40, 40, 40, 40, 40, 40,
588 14, 14, 14, 4, 15, 8, 8, 8, 16, 17,
589 18, 19, 20, 21, 22, 8, 23, 8, 24, 25,
590 26, 27, 28, 8, 29, 30, 31, 32, 33, 34,
591 35, 8, 36, 42, 40, 43, 43, 43, 43, 44,
592 44, 44, 44, 45, 45, 45, 45, 40, 46, 40,
593 40, 40, 148, 40, 47, 48, 48, 48, 48, 40,
594 47, 48, 48, 48, 48, 40, 40, 68, 134, 40,
595 69, 40, 153, 40, 51, 40, 198, 70, 56, 138,
596 87, 52, 57, 53, 40, 54, 49, 58, 55, 60,
597
598 59, 61, 40, 88, 40, 40, 40, 64, 131, 89,
599 83, 65, 62, 77, 40, 90, 63, 66, 84, 78,
600 67, 40, 40, 85, 40, 145, 71, 86, 72, 73,
601 91, 101, 40, 126, 40, 40, 74, 40, 40, 124,
602 75, 129, 76, 79, 79, 79, 79, 40, 139, 98,
603 140, 40, 125, 40, 80, 99, 113, 142, 127, 40,
604 100, 141, 40, 81, 82, 40, 40, 40, 40, 114,
605 160, 41, 115, 40, 92, 150, 93, 128, 146, 116,
606 94, 149, 95, 40, 96, 143, 97, 102, 40, 144,
607 147, 40, 132, 132, 132, 132, 40, 40, 158, 103,
608
609 104, 165, 105, 106, 107, 40, 108, 43, 43, 43,
610 43, 151, 109, 152, 110, 111, 40, 112, 102, 40,
611 154, 40, 40, 133, 44, 44, 44, 44, 40, 159,
612 117, 118, 164, 119, 177, 120, 40, 121, 40, 122,
613 40, 40, 161, 123, 47, 45, 45, 45, 45, 40,
614 135, 135, 135, 135, 40, 162, 166, 136, 40, 170,
615 173, 40, 163, 136, 47, 48, 48, 48, 48, 40,
616 137, 137, 137, 137, 40, 40, 137, 137, 40, 137,
617 137, 137, 137, 137, 137, 155, 40, 40, 156, 39,
618 40, 40, 40, 171, 40, 167, 169, 157, 39, 39,
619
620 40, 40, 40, 40, 181, 180, 172, 40, 40, 168,
621 183, 178, 40, 174, 175, 40, 176, 179, 182, 40,
622 40, 186, 184, 185, 187, 40, 40, 40, 189, 191,
623 192, 40, 40, 196, 193, 40, 40, 40, 188, 40,
624 194, 40, 190, 200, 195, 40, 203, 207, 199, 40,
625 40, 201, 40, 40, 209, 197, 205, 40, 211, 213,
626 204, 40, 208, 202, 40, 206, 40, 40, 210, 219,
627 212, 40, 40, 40, 214, 40, 270, 215, 40, 217,
628 220, 222, 40, 40, 225, 216, 233, 232, 236, 40,
629 218, 221, 40, 40, 40, 223, 224, 237, 226, 40,
630
631 227, 228, 234, 40, 235, 132, 132, 132, 132, 40,
632 229, 40, 40, 230, 238, 239, 251, 40, 231, 40,
633 247, 240, 242, 242, 242, 242, 249, 40, 40, 243,
634 248, 40, 250, 40, 252, 243, 135, 135, 135, 135,
635 40, 256, 40, 136, 40, 40, 253, 258, 254, 136,
636 244, 245, 255, 246, 246, 246, 246, 40, 40, 40,
637 259, 40, 40, 40, 40, 40, 40, 257, 40, 264,
638 40, 262, 260, 40, 266, 263, 261, 265, 272, 40,
639 40, 40, 40, 40, 40, 40, 267, 40, 268, 40,
640 276, 269, 278, 279, 40, 271, 40, 277, 274, 40,
641
642 281, 275, 40, 280, 40, 282, 273, 285, 283, 40,
643 40, 286, 40, 40, 40, 40, 40, 288, 287, 40,
644 289, 40, 284, 40, 40, 291, 40, 40, 40, 293,
645 290, 302, 40, 295, 321, 294, 300, 292, 40, 40,
646 40, 303, 296, 297, 297, 297, 297, 299, 298, 297,
647 297, 301, 297, 297, 297, 297, 297, 297, 304, 40,
648 306, 307, 40, 40, 40, 40, 40, 40, 40, 40,
649 40, 40, 40, 40, 309, 305, 311, 308, 313, 316,
650 317, 40, 319, 310, 312, 318, 315, 40, 40, 40,
651 314, 325, 320, 322, 40, 323, 40, 40, 324, 40,
652
653 242, 242, 242, 242, 329, 244, 244, 243, 327, 327,
654 327, 327, 326, 243, 327, 327, 327, 327, 246, 246,
655 246, 246, 40, 246, 246, 246, 246, 40, 40, 40,
656 40, 40, 40, 40, 40, 40, 332, 40, 40, 333,
657 40, 40, 337, 40, 40, 328, 330, 331, 40, 343,
658 336, 40, 40, 339, 40, 338, 334, 335, 40, 341,
659 40, 346, 40, 342, 40, 345, 40, 40, 340, 347,
660 40, 40, 344, 40, 40, 354, 40, 348, 40, 40,
661 355, 349, 353, 40, 40, 40, 350, 40, 351, 40,
662 352, 360, 40, 359, 356, 357, 358, 40, 40, 362,
663
664 40, 361, 364, 363, 40, 40, 40, 369, 40, 40,
665 368, 40, 374, 365, 370, 366, 367, 371, 40, 372,
666 373, 376, 40, 40, 40, 40, 40, 375, 40, 377,
667 380, 40, 40, 378, 379, 40, 40, 40, 327, 327,
668 327, 327, 40, 381, 388, 384, 40, 387, 40, 382,
669 386, 40, 40, 40, 383, 390, 391, 385, 393, 392,
670 40, 40, 40, 40, 40, 40, 40, 40, 389, 396,
671 395, 399, 40, 40, 402, 40, 40, 40, 40, 404,
672 40, 394, 403, 397, 398, 40, 407, 40, 40, 400,
673 401, 405, 40, 406, 40, 408, 40, 40, 40, 40,
674
675 40, 409, 40, 413, 40, 411, 415, 416, 417, 40,
676 410, 412, 40, 414, 40, 420, 421, 40, 418, 40,
677 40, 419, 40, 40, 40, 40, 40, 422, 40, 423,
678 424, 426, 428, 430, 40, 40, 425, 40, 433, 432,
679 434, 40, 431, 429, 40, 427, 40, 40, 40, 40,
680 40, 40, 40, 40, 40, 440, 40, 437, 436, 442,
681 435, 40, 40, 451, 439, 446, 447, 40, 40, 438,
682 444, 445, 40, 443, 449, 40, 40, 441, 450, 448,
683 453, 452, 40, 455, 40, 40, 40, 40, 40, 40,
684 40, 454, 40, 40, 40, 459, 40, 460, 40, 40,
685
686 461, 457, 458, 456, 462, 465, 464, 40, 40, 40,
687 466, 40, 463, 40, 468, 40, 40, 467, 40, 40,
688 469, 40, 473, 40, 472, 474, 476, 40, 470, 40,
689 479, 40, 475, 477, 471, 40, 484, 40, 40, 40,
690 478, 40, 40, 40, 483, 480, 485, 40, 487, 40,
691 481, 40, 40, 489, 482, 40, 40, 40, 40, 40,
692 493, 486, 488, 40, 40, 500, 497, 490, 499, 495,
693 491, 494, 492, 40, 40, 40, 498, 504, 496, 501,
694 503, 502, 40, 40, 40, 40, 40, 40, 506, 40,
695 40, 509, 40, 507, 40, 40, 40, 512, 40, 40,
696
697 515, 40, 40, 510, 517, 505, 40, 40, 508, 514,
698 40, 516, 518, 40, 40, 513, 522, 519, 511, 523,
699 40, 520, 40, 525, 40, 40, 40, 40, 40, 521,
700 40, 40, 40, 40, 529, 526, 524, 527, 40, 528,
701 531, 40, 40, 40, 40, 532, 534, 40, 533, 530,
702 535, 536, 40, 538, 542, 40, 540, 40, 537, 543,
703 539, 40, 40, 40, 40, 541, 40, 40, 40, 547,
704 40, 40, 548, 40, 40, 40, 40, 40, 546, 40,
705 545, 40, 40, 40, 544, 549, 37, 37, 37, 37,
706 39, 39, 50, 40, 50, 50, 40, 40, 40, 40,
709707
710708 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
711709 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
715713 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
716714 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
717715 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
718 40, 247, 40, 40, 40, 40, 40, 39, 47, 136,
719 40, 133, 39, 40, 38, 556, 3, 556, 556, 556,
720
721 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
722 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
723 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
724 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
725 556, 556, 556, 556
716 40, 40, 40, 40, 40, 241, 40, 40, 40, 40,
717 40, 130, 40, 38, 550, 3, 550, 550, 550, 550,
718
719 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
720 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
721 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
722 550, 550, 550, 550, 550, 550, 550, 550, 550
726723 } ;
727724
728 static yyconst short int yy_chk[1245] =
725 static yyconst short int yy_chk[1240] =
729726 { 0,
730727 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
731728 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
732729 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
733730 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
734 1, 1, 1, 1, 1, 1, 1, 9, 54, 9,
735 9, 9, 9, 9, 9, 9, 9, 11, 11, 11,
736 11, 11, 11, 11, 11, 11, 12, 54, 79, 20,
737 79, 64, 35, 35, 58, 12, 13, 13, 13, 13,
738 13, 13, 13, 13, 13, 16, 20, 51, 17, 20,
739 29, 35, 58, 16, 64, 51, 20, 17, 18, 29,
740
741 16, 17, 16, 18, 16, 18, 17, 16, 19, 17,
742 53, 184, 13, 19, 21, 22, 18, 19, 53, 21,
743 18, 21, 21, 19, 22, 184, 19, 24, 563, 21,
744 22, 72, 24, 21, 25, 21, 23, 26, 23, 25,
745 24, 23, 23, 23, 63, 24, 26, 72, 34, 24,
746 23, 33, 25, 27, 36, 28, 33, 34, 25, 23,
747 23, 26, 27, 36, 27, 63, 46, 28, 27, 33,
748 27, 52, 27, 28, 27, 46, 31, 55, 28, 30,
749 56, 31, 560, 67, 52, 555, 52, 30, 73, 55,
750 60, 56, 57, 55, 31, 30, 30, 31, 30, 30,
751
752 30, 73, 30, 57, 31, 60, 62, 67, 30, 61,
753 30, 30, 68, 30, 32, 57, 61, 65, 70, 66,
754 68, 62, 32, 62, 65, 553, 80, 65, 89, 76,
755 32, 32, 80, 32, 66, 32, 65, 32, 76, 32,
756 89, 70, 74, 32, 42, 42, 42, 42, 42, 42,
757 42, 42, 47, 47, 47, 47, 47, 47, 47, 47,
758 74, 78, 81, 47, 249, 249, 81, 71, 77, 47,
759 49, 49, 49, 49, 49, 49, 49, 49, 83, 78,
760 49, 49, 71, 49, 49, 49, 49, 49, 49, 71,
761 75, 77, 84, 85, 83, 86, 91, 87, 88, 75,
762
763 96, 86, 90, 88, 91, 95, 92, 94, 552, 96,
764 97, 84, 105, 75, 87, 85, 85, 90, 85, 97,
765 87, 92, 94, 96, 99, 95, 98, 101, 100, 99,
766 102, 103, 104, 97, 106, 98, 100, 108, 107, 105,
767 101, 110, 109, 102, 113, 107, 108, 106, 551, 110,
768 111, 119, 103, 107, 112, 104, 115, 109, 116, 111,
769 108, 114, 113, 112, 110, 107, 109, 114, 118, 115,
770 119, 116, 120, 111, 121, 122, 123, 124, 127, 116,
771 126, 118, 127, 131, 122, 120, 124, 125, 128, 126,
772 132, 130, 118, 130, 121, 125, 125, 129, 122, 123,
773
774 124, 128, 129, 128, 131, 125, 136, 145, 125, 142,
775 146, 132, 136, 125, 143, 549, 145, 132, 139, 139,
776 142, 139, 139, 139, 139, 139, 139, 139, 139, 148,
777 150, 146, 143, 151, 152, 154, 155, 150, 156, 157,
778 158, 159, 148, 154, 157, 160, 162, 156, 151, 152,
779 161, 163, 162, 164, 159, 158, 165, 166, 155, 161,
780 160, 168, 164, 161, 163, 167, 169, 170, 173, 171,
781 174, 169, 172, 178, 164, 182, 174, 173, 165, 185,
782 166, 172, 179, 547, 167, 187, 168, 171, 172, 180,
783 171, 181, 178, 182, 170, 183, 188, 179, 180, 186,
784
785 181, 189, 185, 191, 183, 201, 187, 186, 198, 202,
786 212, 188, 207, 214, 181, 213, 205, 225, 191, 206,
787 212, 207, 201, 243, 213, 189, 225, 243, 198, 208,
788 546, 214, 202, 204, 204, 204, 204, 204, 204, 204,
789 204, 205, 206, 204, 204, 217, 204, 204, 204, 204,
790 204, 204, 208, 218, 220, 221, 222, 223, 226, 233,
791 230, 217, 224, 236, 238, 240, 544, 222, 233, 237,
792 221, 224, 236, 240, 218, 245, 223, 220, 230, 224,
793 238, 239, 237, 226, 241, 242, 239, 246, 248, 241,
794 250, 250, 253, 245, 248, 251, 251, 252, 252, 242,
795
796 254, 255, 257, 258, 261, 262, 263, 254, 258, 253,
797 246, 261, 264, 266, 268, 265, 269, 272, 255, 257,
798 265, 267, 270, 278, 274, 279, 271, 264, 262, 263,
799 266, 271, 269, 274, 267, 273, 275, 270, 272, 280,
800 273, 268, 281, 275, 284, 285, 278, 287, 279, 288,
801 285, 289, 292, 290, 291, 293, 287, 300, 297, 284,
802 294, 280, 298, 280, 301, 302, 281, 292, 291, 305,
803 288, 290, 289, 293, 308, 294, 297, 298, 306, 309,
804 310, 300, 305, 302, 308, 306, 312, 301, 309, 313,
805 310, 315, 316, 321, 318, 312, 313, 323, 322, 324,
806
807 315, 318, 323, 321, 326, 328, 335, 316, 322, 330,
808 331, 335, 336, 338, 339, 343, 324, 340, 344, 330,
809 336, 339, 340, 331, 342, 326, 341, 344, 328, 342,
810 346, 330, 345, 341, 347, 338, 343, 348, 345, 349,
811 350, 351, 356, 353, 358, 357, 348, 360, 351, 346,
812 353, 359, 361, 347, 362, 356, 349, 350, 357, 363,
813 359, 358, 360, 364, 365, 368, 367, 373, 361, 374,
814 370, 369, 371, 365, 368, 372, 363, 362, 369, 370,
815 373, 371, 364, 367, 372, 375, 376, 374, 377, 381,
816 378, 380, 384, 382, 388, 391, 395, 386, 377, 387,
817
818 389, 376, 382, 380, 386, 388, 392, 387, 375, 378,
819 390, 384, 381, 389, 394, 390, 397, 398, 391, 395,
820 399, 400, 402, 392, 398, 403, 408, 394, 404, 413,
821 400, 407, 412, 397, 418, 407, 407, 417, 415, 412,
822 425, 416, 417, 403, 402, 413, 404, 415, 399, 408,
823 416, 420, 426, 427, 429, 430, 436, 418, 420, 439,
824 440, 425, 442, 429, 441, 430, 443, 445, 436, 426,
825 427, 447, 441, 450, 439, 442, 451, 452, 453, 454,
826 460, 457, 440, 443, 458, 459, 456, 461, 454, 447,
827 445, 462, 463, 453, 450, 456, 461, 451, 457, 458,
828
829 459, 460, 465, 452, 467, 466, 469, 468, 471, 467,
830 470, 472, 474, 462, 466, 463, 468, 470, 475, 476,
831 479, 477, 472, 480, 481, 482, 486, 465, 488, 469,
832 477, 471, 496, 494, 482, 479, 474, 488, 489, 486,
833 480, 475, 476, 490, 492, 489, 494, 481, 493, 490,
834 500, 492, 499, 493, 501, 496, 502, 499, 503, 500,
835 504, 502, 505, 506, 507, 508, 509, 510, 512, 505,
836 508, 513, 510, 514, 503, 515, 516, 501, 518, 507,
837 521, 509, 512, 528, 517, 516, 506, 513, 520, 504,
838 522, 523, 514, 517, 525, 521, 526, 520, 515, 527,
839
840 528, 518, 530, 525, 533, 522, 523, 532, 534, 535,
841 536, 533, 527, 538, 537, 542, 539, 540, 541, 526,
842 530, 534, 532, 543, 540, 541, 535, 548, 545, 550,
843 554, 536, 537, 531, 548, 529, 538, 539, 550, 524,
844 519, 511, 498, 497, 542, 545, 543, 495, 491, 487,
845 485, 554, 557, 557, 557, 557, 557, 557, 557, 557,
846 558, 484, 558, 558, 558, 558, 559, 483, 559, 559,
847 478, 559, 561, 473, 561, 561, 561, 561, 561, 561,
848 562, 464, 562, 562, 455, 562, 564, 449, 564, 565,
849 565, 565, 448, 446, 444, 438, 437, 435, 434, 433,
850
851 432, 431, 428, 424, 423, 422, 421, 419, 414, 411,
852 410, 409, 406, 405, 401, 396, 393, 385, 383, 379,
853 366, 355, 354, 352, 337, 334, 332, 329, 327, 325,
854 320, 319, 317, 314, 311, 307, 304, 299, 296, 295,
855 286, 283, 282, 277, 276, 260, 259, 256, 244, 235,
856 234, 232, 231, 229, 228, 227, 219, 216, 215, 211,
857 210, 209, 203, 200, 199, 197, 196, 195, 194, 193,
858 192, 190, 177, 176, 175, 153, 149, 147, 144, 141,
859 137, 133, 117, 93, 82, 69, 59, 48, 45, 44,
860 39, 37, 14, 8, 7, 3, 556, 556, 556, 556,
861
862 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
863 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
864 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
865 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
866 556, 556, 556, 556
731 1, 1, 1, 9, 58, 9, 9, 9, 9, 10,
732 10, 10, 10, 11, 11, 11, 11, 11, 12, 102,
733 20, 63, 58, 12, 13, 13, 13, 13, 13, 13,
734 14, 14, 14, 14, 14, 14, 16, 20, 46, 17,
735 20, 51, 63, 46, 16, 25, 102, 20, 17, 51,
736 25, 16, 17, 16, 18, 16, 13, 17, 16, 18,
737
738 17, 18, 19, 25, 22, 24, 26, 19, 555, 25,
739 24, 19, 18, 22, 56, 26, 18, 19, 24, 22,
740 19, 21, 29, 24, 34, 56, 21, 24, 21, 21,
741 26, 29, 36, 34, 33, 52, 21, 28, 54, 33,
742 21, 36, 21, 23, 23, 23, 23, 23, 52, 28,
743 52, 31, 33, 53, 23, 28, 31, 54, 35, 35,
744 28, 53, 68, 23, 23, 27, 60, 57, 61, 31,
745 68, 553, 31, 55, 27, 61, 27, 35, 57, 31,
746 27, 60, 27, 66, 27, 55, 27, 30, 73, 55,
747 57, 30, 42, 42, 42, 42, 62, 64, 66, 30,
748
749 30, 73, 30, 30, 30, 67, 30, 43, 43, 43,
750 43, 62, 30, 62, 30, 30, 72, 30, 32, 70,
751 64, 549, 32, 44, 44, 44, 44, 44, 83, 67,
752 32, 32, 72, 32, 83, 32, 77, 32, 74, 32,
753 71, 81, 70, 32, 45, 45, 45, 45, 45, 45,
754 47, 47, 47, 47, 47, 71, 74, 47, 547, 77,
755 81, 546, 71, 47, 48, 48, 48, 48, 48, 48,
756 49, 49, 49, 49, 49, 78, 49, 49, 65, 49,
757 49, 49, 49, 49, 49, 65, 75, 76, 65, 79,
758 80, 82, 86, 78, 84, 75, 76, 65, 79, 79,
759
760 85, 92, 88, 87, 86, 85, 80, 89, 91, 75,
761 88, 84, 100, 82, 82, 93, 82, 84, 87, 94,
762 95, 92, 89, 91, 93, 96, 97, 98, 94, 95,
763 96, 99, 101, 100, 97, 103, 104, 105, 93, 107,
764 98, 106, 94, 104, 99, 108, 105, 107, 103, 109,
765 116, 104, 110, 111, 108, 101, 106, 164, 109, 111,
766 105, 112, 107, 104, 113, 106, 115, 117, 108, 116,
767 110, 118, 119, 120, 112, 121, 164, 113, 123, 115,
768 117, 119, 124, 126, 121, 113, 124, 123, 126, 125,
769 115, 118, 122, 128, 129, 119, 120, 127, 121, 127,
770
771 122, 122, 125, 145, 125, 132, 132, 132, 132, 139,
772 122, 143, 140, 122, 128, 129, 145, 142, 122, 152,
773 139, 129, 133, 133, 133, 133, 142, 147, 545, 133,
774 140, 148, 143, 149, 147, 133, 135, 135, 135, 135,
775 135, 152, 154, 135, 151, 155, 148, 154, 149, 135,
776 136, 136, 151, 136, 136, 136, 136, 136, 153, 156,
777 155, 157, 158, 159, 160, 161, 162, 153, 163, 159,
778 165, 158, 156, 166, 161, 158, 157, 160, 166, 167,
779 168, 169, 543, 170, 172, 173, 161, 171, 162, 176,
780 169, 163, 170, 171, 179, 165, 174, 169, 168, 175,
781
782 173, 168, 177, 172, 178, 174, 167, 176, 175, 181,
783 182, 177, 180, 183, 185, 192, 195, 179, 178, 196,
784 180, 206, 175, 199, 200, 182, 234, 201, 202, 185,
785 181, 206, 207, 195, 234, 192, 201, 183, 214, 212,
786 208, 207, 196, 198, 198, 198, 198, 200, 199, 198,
787 198, 202, 198, 198, 198, 198, 198, 198, 208, 211,
788 212, 214, 215, 216, 217, 220, 232, 218, 224, 219,
789 227, 230, 231, 239, 216, 211, 218, 215, 219, 227,
790 230, 236, 232, 217, 218, 231, 224, 233, 235, 240,
791 220, 239, 233, 235, 237, 236, 541, 248, 237, 540,
792
793 242, 242, 242, 242, 248, 243, 243, 242, 243, 243,
794 243, 243, 240, 242, 244, 244, 244, 244, 245, 245,
795 245, 245, 245, 246, 246, 246, 246, 246, 247, 249,
796 251, 252, 255, 256, 257, 258, 252, 259, 260, 255,
797 261, 262, 259, 263, 265, 247, 249, 251, 264, 265,
798 258, 266, 268, 261, 272, 260, 256, 257, 273, 263,
799 267, 268, 269, 264, 274, 267, 275, 278, 262, 269,
800 279, 281, 266, 282, 283, 279, 286, 272, 284, 285,
801 281, 273, 278, 287, 288, 291, 274, 292, 274, 294,
802 275, 286, 295, 285, 282, 283, 284, 299, 296, 288,
803
804 300, 287, 292, 291, 302, 307, 310, 300, 303, 304,
805 299, 306, 307, 294, 302, 295, 296, 303, 309, 304,
806 306, 310, 312, 315, 316, 317, 318, 309, 320, 312,
807 317, 322, 538, 315, 316, 324, 330, 325, 327, 327,
808 327, 327, 329, 318, 330, 324, 332, 329, 333, 320,
809 325, 334, 335, 336, 322, 333, 334, 324, 336, 335,
810 337, 338, 342, 339, 340, 341, 350, 345, 332, 339,
811 338, 342, 343, 344, 345, 347, 352, 353, 351, 350,
812 354, 337, 347, 340, 341, 355, 353, 356, 357, 343,
813 344, 351, 358, 352, 359, 354, 361, 362, 368, 364,
814
815 363, 355, 367, 359, 369, 357, 362, 363, 364, 365,
816 356, 358, 366, 361, 370, 367, 368, 372, 365, 374,
817 371, 366, 375, 376, 378, 383, 380, 369, 382, 370,
818 371, 374, 376, 380, 381, 384, 372, 385, 383, 382,
819 384, 386, 381, 378, 388, 375, 389, 391, 392, 393,
820 394, 396, 397, 398, 409, 392, 402, 388, 386, 394,
821 385, 401, 407, 409, 391, 401, 401, 406, 412, 389,
822 397, 398, 410, 396, 406, 411, 414, 393, 407, 402,
823 411, 410, 419, 414, 420, 421, 423, 424, 430, 433,
824 434, 412, 436, 437, 439, 423, 441, 424, 435, 444,
825
826 430, 420, 421, 419, 433, 436, 435, 445, 446, 447,
827 437, 452, 434, 448, 441, 451, 450, 439, 453, 454,
828 444, 455, 448, 456, 447, 450, 452, 457, 445, 459,
829 455, 461, 451, 453, 446, 460, 461, 462, 463, 465,
830 454, 464, 466, 468, 460, 456, 462, 469, 464, 470,
831 457, 471, 474, 466, 459, 475, 473, 476, 483, 482,
832 471, 463, 465, 480, 488, 483, 476, 468, 482, 474,
833 469, 473, 470, 484, 486, 487, 480, 488, 475, 484,
834 487, 486, 490, 493, 494, 495, 496, 497, 493, 498,
835 499, 496, 500, 494, 501, 502, 503, 499, 506, 504,
836
837 502, 507, 508, 497, 504, 490, 509, 510, 495, 501,
838 511, 503, 506, 512, 514, 500, 510, 507, 498, 511,
839 515, 508, 516, 514, 517, 519, 520, 521, 522, 509,
840 524, 526, 530, 532, 519, 515, 512, 516, 528, 517,
841 521, 529, 531, 527, 533, 522, 526, 534, 524, 520,
842 527, 528, 535, 530, 534, 536, 532, 537, 529, 535,
843 531, 539, 542, 544, 548, 533, 525, 523, 518, 542,
844 513, 505, 544, 492, 491, 489, 485, 481, 539, 479,
845 537, 478, 477, 472, 536, 548, 551, 551, 551, 551,
846 552, 552, 554, 467, 554, 554, 458, 449, 443, 442,
847
848 440, 438, 432, 431, 429, 428, 427, 426, 425, 422,
849 418, 417, 416, 415, 413, 408, 405, 404, 403, 400,
850 399, 395, 390, 387, 379, 377, 373, 360, 349, 348,
851 346, 331, 328, 326, 323, 321, 319, 314, 313, 311,
852 308, 305, 301, 298, 293, 290, 289, 280, 277, 276,
853 271, 270, 254, 253, 250, 238, 229, 228, 226, 225,
854 223, 222, 221, 213, 210, 209, 205, 204, 203, 197,
855 194, 193, 191, 190, 189, 188, 187, 186, 184, 150,
856 146, 144, 141, 138, 134, 130, 114, 90, 69, 59,
857 39, 37, 8, 7, 3, 550, 550, 550, 550, 550,
858
859 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
860 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
861 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
862 550, 550, 550, 550, 550, 550, 550, 550, 550
867863 } ;
868864
869865 static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
880876 #define YY_MORE_ADJ 0
881877 #define YY_RESTORE_YY_MORE_OFFSET
882878 char *yytext;
883 #line 1 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
879 #line 1 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
884880 #define INITIAL 0
885881 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
886882 //
895891 //
896892 //===----------------------------------------------------------------------===*/
897893 #define YY_NEVER_INTERACTIVE 1
898 #line 28 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
894 #line 28 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
899895 #include "ParserInternals.h"
900896 #include "llvm/Module.h"
901897 #include
10281024 /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
10291025 * it to deal with 64 bit numbers.
10301026 */
1031 #line 1033 "Lexer.cpp"
1027 #line 1029 "Lexer.cpp"
10321028
10331029 /* Macros after this point can all be overridden by user definitions in
10341030 * section 1.
11791175 register char *yy_cp = NULL, *yy_bp = NULL;
11801176 register int yy_act;
11811177
1182 #line 186 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1183
1184
1185 #line 1187 "Lexer.cpp"
1178 #line 188 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1179
1180
1181 #line 1183 "Lexer.cpp"
11861182
11871183 if ( yy_init )
11881184 {
12301226 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
12311227 {
12321228 yy_current_state = (int) yy_def[yy_current_state];
1233 if ( yy_current_state >= 557 )
1229 if ( yy_current_state >= 551 )
12341230 yy_c = yy_meta[(unsigned int) yy_c];
12351231 }
12361232 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
12371233 *yy_state_ptr++ = yy_current_state;
12381234 ++yy_cp;
12391235 }
1240 while ( yy_current_state != 556 );
1236 while ( yy_current_state != 550 );
12411237
12421238 yy_find_action:
12431239 yy_current_state = *--yy_state_ptr;
12751271 { /* beginning of action switch */
12761272 case 1:
12771273 YY_RULE_SETUP
1278 #line 188 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1274 #line 190 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
12791275 { /* Ignore comments for now */ }
12801276 YY_BREAK
12811277 case 2:
12821278 YY_RULE_SETUP
1283 #line 190 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1279 #line 192 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
12841280 { return BEGINTOK; }
12851281 YY_BREAK
12861282 case 3:
12871283 YY_RULE_SETUP
1288 #line 191 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1284 #line 193 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
12891285 { return ENDTOK; }
12901286 YY_BREAK
12911287 case 4:
12921288 YY_RULE_SETUP
1293 #line 192 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1289 #line 194 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
12941290 { return TRUETOK; }
12951291 YY_BREAK
12961292 case 5:
12971293 YY_RULE_SETUP
1298 #line 193 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1294 #line 195 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
12991295 { return FALSETOK; }
13001296 YY_BREAK
13011297 case 6:
13021298 YY_RULE_SETUP
1303 #line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1299 #line 196 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13041300 { return DECLARE; }
13051301 YY_BREAK
13061302 case 7:
13071303 YY_RULE_SETUP
1308 #line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1304 #line 197 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13091305 { return DEFINE; }
13101306 YY_BREAK
13111307 case 8:
13121308 YY_RULE_SETUP
1313 #line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1309 #line 198 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13141310 { return GLOBAL; }
13151311 YY_BREAK
13161312 case 9:
13171313 YY_RULE_SETUP
1318 #line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1314 #line 199 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13191315 { return CONSTANT; }
13201316 YY_BREAK
13211317 case 10:
13221318 YY_RULE_SETUP
1323 #line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1319 #line 200 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13241320 { return INTERNAL; }
13251321 YY_BREAK
13261322 case 11:
13271323 YY_RULE_SETUP
1328 #line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1324 #line 201 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13291325 { return LINKONCE; }
13301326 YY_BREAK
13311327 case 12:
13321328 YY_RULE_SETUP
1333 #line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1329 #line 202 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13341330 { return WEAK; }
13351331 YY_BREAK
13361332 case 13:
13371333 YY_RULE_SETUP
1338 #line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1334 #line 203 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13391335 { return APPENDING; }
13401336 YY_BREAK
13411337 case 14:
13421338 YY_RULE_SETUP
1343 #line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1339 #line 204 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13441340 { return DLLIMPORT; }
13451341 YY_BREAK
13461342 case 15:
13471343 YY_RULE_SETUP
1348 #line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1344 #line 205 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13491345 { return DLLEXPORT; }
13501346 YY_BREAK
13511347 case 16:
13521348 YY_RULE_SETUP
1353 #line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1349 #line 206 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13541350 { return EXTERN_WEAK; }
13551351 YY_BREAK
13561352 case 17:
13571353 YY_RULE_SETUP
1358 #line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1354 #line 207 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13591355 { return EXTERNAL; }
13601356 YY_BREAK
13611357 case 18:
13621358 YY_RULE_SETUP
1363 #line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1359 #line 208 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13641360 { return IMPLEMENTATION; }
13651361 YY_BREAK
13661362 case 19:
13671363 YY_RULE_SETUP
1368 #line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1364 #line 209 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13691365 { return ZEROINITIALIZER; }
13701366 YY_BREAK
13711367 case 20:
13721368 YY_RULE_SETUP
1373 #line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1369 #line 210 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13741370 { return DOTDOTDOT; }
13751371 YY_BREAK
13761372 case 21:
13771373 YY_RULE_SETUP
1378 #line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1374 #line 211 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13791375 { return UNDEF; }
13801376 YY_BREAK
13811377 case 22:
13821378 YY_RULE_SETUP
1383 #line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1379 #line 212 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13841380 { return NULL_TOK; }
13851381 YY_BREAK
13861382 case 23:
13871383 YY_RULE_SETUP
1388 #line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1384 #line 213 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13891385 { return TO; }
13901386 YY_BREAK
13911387 case 24:
13921388 YY_RULE_SETUP
1393 #line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1389 #line 214 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13941390 { return TAIL; }
13951391 YY_BREAK
13961392 case 25:
13971393 YY_RULE_SETUP
1398 #line 213 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1394 #line 215 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
13991395 { return TARGET; }
14001396 YY_BREAK
14011397 case 26:
14021398 YY_RULE_SETUP
1403 #line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1399 #line 216 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14041400 { return TRIPLE; }
14051401 YY_BREAK
14061402 case 27:
14071403 YY_RULE_SETUP
1408 #line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1404 #line 217 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14091405 { return DEPLIBS; }
14101406 YY_BREAK
14111407 case 28:
14121408 YY_RULE_SETUP
1413 #line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1409 #line 218 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14141410 { return ENDIAN; }
14151411 YY_BREAK
14161412 case 29:
14171413 YY_RULE_SETUP
1418 #line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1414 #line 219 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14191415 { return POINTERSIZE; }
14201416 YY_BREAK
14211417 case 30:
14221418 YY_RULE_SETUP
1423 #line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1419 #line 220 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14241420 { return DATALAYOUT; }
14251421 YY_BREAK
14261422 case 31:
14271423 YY_RULE_SETUP
1428 #line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1424 #line 221 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14291425 { return LITTLE; }
14301426 YY_BREAK
14311427 case 32:
14321428 YY_RULE_SETUP
1433 #line 220 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1429 #line 222 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14341430 { return BIG; }
14351431 YY_BREAK
14361432 case 33:
14371433 YY_RULE_SETUP
1438 #line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1434 #line 223 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14391435 { return VOLATILE; }
14401436 YY_BREAK
14411437 case 34:
14421438 YY_RULE_SETUP
1443 #line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1439 #line 224 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14441440 { return ALIGN; }
14451441 YY_BREAK
14461442 case 35:
14471443 YY_RULE_SETUP
1448 #line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1444 #line 225 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14491445 { return SECTION; }
14501446 YY_BREAK
14511447 case 36:
14521448 YY_RULE_SETUP
1453 #line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1449 #line 226 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14541450 { return MODULE; }
14551451 YY_BREAK
14561452 case 37:
14571453 YY_RULE_SETUP
1458 #line 225 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1454 #line 227 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14591455 { return ASM_TOK; }
14601456 YY_BREAK
14611457 case 38:
14621458 YY_RULE_SETUP
1463 #line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1459 #line 228 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14641460 { return SIDEEFFECT; }
14651461 YY_BREAK
14661462 case 39:
14671463 YY_RULE_SETUP
1468 #line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1464 #line 230 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14691465 { return CC_TOK; }
14701466 YY_BREAK
14711467 case 40:
14721468 YY_RULE_SETUP
1473 #line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1469 #line 231 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14741470 { return CCC_TOK; }
14751471 YY_BREAK
14761472 case 41:
14771473 YY_RULE_SETUP
1478 #line 230 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1474 #line 232 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14791475 { return CSRETCC_TOK; }
14801476 YY_BREAK
14811477 case 42:
14821478 YY_RULE_SETUP
1483 #line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1479 #line 233 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14841480 { return FASTCC_TOK; }
14851481 YY_BREAK
14861482 case 43:
14871483 YY_RULE_SETUP
1488 #line 232 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1484 #line 234 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14891485 { return COLDCC_TOK; }
14901486 YY_BREAK
14911487 case 44:
14921488 YY_RULE_SETUP
1493 #line 233 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1489 #line 235 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14941490 { return X86_STDCALLCC_TOK; }
14951491 YY_BREAK
14961492 case 45:
14971493 YY_RULE_SETUP
1498 #line 234 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1494 #line 236 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
14991495 { return X86_FASTCALLCC_TOK; }
15001496 YY_BREAK
15011497 case 46:
15021498 YY_RULE_SETUP
1503 #line 236 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1499 #line 238 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
15041500 { RET_TY(Type::VoidTy, VOID); }
15051501 YY_BREAK
15061502 case 47:
15071503 YY_RULE_SETUP
1508 #line 237 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1504 #line 239 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
15091505 { RET_TY(Type::Int1Ty, BOOL); }
15101506 YY_BREAK
15111507 case 48:
15121508 YY_RULE_SETUP
1513 #line 238 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1514 { RET_TY(Type::Int8Ty, INT8); }
1509 #line 240 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1510 { RET_TY(Type::FloatTy, FLOAT); }
15151511 YY_BREAK
15161512 case 49:
15171513 YY_RULE_SETUP
1518 #line 239 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1519 { RET_TY(Type::Int16Ty, INT16); }
1514 #line 241 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1515 { RET_TY(Type::DoubleTy,DOUBLE);}
15201516 YY_BREAK
15211517 case 50:
15221518 YY_RULE_SETUP
1523 #line 240 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1524 { RET_TY(Type::Int32Ty, INT32); }
1519 #line 242 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1520 { RET_TY(Type::LabelTy, LABEL); }
15251521 YY_BREAK
15261522 case 51:
15271523 YY_RULE_SETUP
1528 #line 241 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1529 { RET_TY(Type::Int64Ty, INT64); }
1524 #line 243 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1525 { return TYPE; }
15301526 YY_BREAK
15311527 case 52:
15321528 YY_RULE_SETUP
1533 #line 242 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1534 { RET_TY(Type::FloatTy, FLOAT); }
1529 #line 244 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1530 { return OPAQUE; }
15351531 YY_BREAK
15361532 case 53:
15371533 YY_RULE_SETUP
1538 #line 243 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1539 { RET_TY(Type::DoubleTy,DOUBLE);}
1534 #line 245 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1535 { uint64_t NumBits = atoull(yytext+1);
1536 if (NumBits < IntegerType::MIN_INT_BITS ||
1537 NumBits > IntegerType::MAX_INT_BITS)
1538 GenerateError("Bitwidth for integer type out of range!");
1539 const Type* Ty = IntegerType::get(NumBits);
1540 RET_TY(Ty, INTTYPE);
1541 }
15401542 YY_BREAK
15411543 case 54:
15421544 YY_RULE_SETUP
1543 #line 244 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1544 { RET_TY(Type::LabelTy, LABEL); }
1545 #line 253 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1546 { RET_TOK(BinaryOpVal, Add, ADD); }
15451547 YY_BREAK
15461548 case 55:
15471549 YY_RULE_SETUP
1548 #line 245 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1549 { return TYPE; }
1550 #line 254 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1551 { RET_TOK(BinaryOpVal, Sub, SUB); }
15501552 YY_BREAK
15511553 case 56:
15521554 YY_RULE_SETUP
1553 #line 246 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1554 { return OPAQUE; }
1555 #line 255 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1556 { RET_TOK(BinaryOpVal, Mul, MUL); }
15551557 YY_BREAK
15561558 case 57:
15571559 YY_RULE_SETUP
1558 #line 248 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1559 { RET_TOK(BinaryOpVal, Add, ADD); }
1560 #line 256 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1561 { RET_TOK(BinaryOpVal, UDiv, UDIV); }
15601562 YY_BREAK
15611563 case 58:
15621564 YY_RULE_SETUP
1563 #line 249 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1564 { RET_TOK(BinaryOpVal, Sub, SUB); }
1565 #line 257 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1566 { RET_TOK(BinaryOpVal, SDiv, SDIV); }
15651567 YY_BREAK
15661568 case 59:
15671569 YY_RULE_SETUP
1568 #line 250 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1569 { RET_TOK(BinaryOpVal, Mul, MUL); }
1570 #line 258 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1571 { RET_TOK(BinaryOpVal, FDiv, FDIV); }
15701572 YY_BREAK
15711573 case 60:
15721574 YY_RULE_SETUP
1573 #line 251 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1574 { RET_TOK(BinaryOpVal, UDiv, UDIV); }
1575 #line 259 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1576 { RET_TOK(BinaryOpVal, URem, UREM); }
15751577 YY_BREAK
15761578 case 61:
15771579 YY_RULE_SETUP
1578 #line 252 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1579 { RET_TOK(BinaryOpVal, SDiv, SDIV); }
1580 #line 260 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1581 { RET_TOK(BinaryOpVal, SRem, SREM); }
15801582 YY_BREAK
15811583 case 62:
15821584 YY_RULE_SETUP
1583 #line 253 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1584 { RET_TOK(BinaryOpVal, FDiv, FDIV); }
1585 #line 261 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1586 { RET_TOK(BinaryOpVal, FRem, FREM); }
15851587 YY_BREAK
15861588 case 63:
15871589 YY_RULE_SETUP
1588 #line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1589 { RET_TOK(BinaryOpVal, URem, UREM); }
1590 #line 262 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1591 { RET_TOK(BinaryOpVal, And, AND); }
15901592 YY_BREAK
15911593 case 64:
15921594 YY_RULE_SETUP
1593 #line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1594 { RET_TOK(BinaryOpVal, SRem, SREM); }
1595 #line 263 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1596 { RET_TOK(BinaryOpVal, Or , OR ); }
15951597 YY_BREAK
15961598 case 65:
15971599 YY_RULE_SETUP
1598 #line 256 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1599 { RET_TOK(BinaryOpVal, FRem, FREM); }
1600 #line 264 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1601 { RET_TOK(BinaryOpVal, Xor, XOR); }
16001602 YY_BREAK
16011603 case 66:
16021604 YY_RULE_SETUP
1603 #line 257 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1604 { RET_TOK(BinaryOpVal, And, AND); }
1605 #line 265 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1606 { RET_TOK(OtherOpVal, ICmp, ICMP); }
16051607 YY_BREAK
16061608 case 67:
16071609 YY_RULE_SETUP
1608 #line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1609 { RET_TOK(BinaryOpVal, Or , OR ); }
1610 #line 266 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1611 { RET_TOK(OtherOpVal, FCmp, FCMP); }
16101612 YY_BREAK
16111613 case 68:
16121614 YY_RULE_SETUP
1613 #line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1614 { RET_TOK(BinaryOpVal, Xor, XOR); }
1615 #line 267 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1616 { return EQ; }
16151617 YY_BREAK
16161618 case 69:
16171619 YY_RULE_SETUP
1618 #line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1619 { RET_TOK(OtherOpVal, ICmp, ICMP); }
1620 #line 268 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1621 { return NE; }
16201622 YY_BREAK
16211623 case 70:
16221624 YY_RULE_SETUP
1623 #line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1624 { RET_TOK(OtherOpVal, FCmp, FCMP); }
1625 #line 269 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1626 { return SLT; }
16251627 YY_BREAK
16261628 case 71:
16271629 YY_RULE_SETUP
1628 #line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1629 { return EQ; }
1630 #line 270 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1631 { return SGT; }
16301632 YY_BREAK
16311633 case 72:
16321634 YY_RULE_SETUP
1633 #line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1634 { return NE; }
1635 #line 271 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1636 { return SLE; }
16351637 YY_BREAK
16361638 case 73:
16371639 YY_RULE_SETUP
1638 #line 264 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1639 { return SLT; }
1640 #line 272 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1641 { return SGE; }
16401642 YY_BREAK
16411643 case 74:
16421644 YY_RULE_SETUP
1643 #line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1644 { return SGT; }
1645 #line 273 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1646 { return ULT; }
16451647 YY_BREAK
16461648 case 75:
16471649 YY_RULE_SETUP
1648 #line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1649 { return SLE; }
1650 #line 274 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1651 { return UGT; }
16501652 YY_BREAK
16511653 case 76:
16521654 YY_RULE_SETUP
1653 #line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1654 { return SGE; }
1655 #line 275 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1656 { return ULE; }
16551657 YY_BREAK
16561658 case 77:
16571659 YY_RULE_SETUP
1658 #line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1659 { return ULT; }
1660 #line 276 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1661 { return UGE; }
16601662 YY_BREAK
16611663 case 78:
16621664 YY_RULE_SETUP
1663 #line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1664 { return UGT; }
1665 #line 277 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1666 { return OEQ; }
16651667 YY_BREAK
16661668 case 79:
16671669 YY_RULE_SETUP
1668 #line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1669 { return ULE; }
1670 #line 278 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1671 { return ONE; }
16701672 YY_BREAK
16711673 case 80:
16721674 YY_RULE_SETUP
1673 #line 271 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1674 { return UGE; }
1675 #line 279 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1676 { return OLT; }
16751677 YY_BREAK
16761678 case 81:
16771679 YY_RULE_SETUP
1678 #line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1679 { return OEQ; }
1680 #line 280 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1681 { return OGT; }
16801682 YY_BREAK
16811683 case 82:
16821684 YY_RULE_SETUP
1683 #line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1684 { return ONE; }
1685 #line 281 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1686 { return OLE; }
16851687 YY_BREAK
16861688 case 83:
16871689 YY_RULE_SETUP
1688 #line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1689 { return OLT; }
1690 #line 282 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1691 { return OGE; }
16901692 YY_BREAK
16911693 case 84:
16921694 YY_RULE_SETUP
1693 #line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1694 { return OGT; }
1695 #line 283 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1696 { return ORD; }
16951697 YY_BREAK
16961698 case 85:
16971699 YY_RULE_SETUP
1698 #line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1699 { return OLE; }
1700 #line 284 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1701 { return UNO; }
17001702 YY_BREAK
17011703 case 86:
17021704 YY_RULE_SETUP
1703 #line 277 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1704 { return OGE; }
1705 #line 285 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1706 { return UEQ; }
17051707 YY_BREAK
17061708 case 87:
17071709 YY_RULE_SETUP
1708 #line 278 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1709 { return ORD; }
1710 #line 286 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1711 { return UNE; }
17101712 YY_BREAK
17111713 case 88:
17121714 YY_RULE_SETUP
1713 #line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1714 { return UNO; }
1715 #line 288 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1716 { RET_TOK(OtherOpVal, PHI, PHI_TOK); }
17151717 YY_BREAK
17161718 case 89:
17171719 YY_RULE_SETUP
1718 #line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1719 { return UEQ; }
1720 #line 289 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1721 { RET_TOK(OtherOpVal, Call, CALL); }
17201722 YY_BREAK
17211723 case 90:
17221724 YY_RULE_SETUP
1723 #line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1724 { return UNE; }
1725 #line 290 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1726 { RET_TOK(CastOpVal, Trunc, TRUNC); }
17251727 YY_BREAK
17261728 case 91:
17271729 YY_RULE_SETUP
1728 #line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1729 { RET_TOK(OtherOpVal, PHI, PHI_TOK); }
1730 #line 291 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1731 { RET_TOK(CastOpVal, ZExt, ZEXT); }
17301732 YY_BREAK
17311733 case 92:
17321734 YY_RULE_SETUP
1733 #line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1734 { RET_TOK(OtherOpVal, Call, CALL); }
1735 #line 292 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1736 { RET_TOK(CastOpVal, SExt, SEXT); }
17351737 YY_BREAK
17361738 case 93:
17371739 YY_RULE_SETUP
1738 #line 285 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1739 { RET_TOK(CastOpVal, Trunc, TRUNC); }
1740 #line 293 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1741 { RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
17401742 YY_BREAK
17411743 case 94:
17421744 YY_RULE_SETUP
1743 #line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1744 { RET_TOK(CastOpVal, ZExt, ZEXT); }
1745 #line 294 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1746 { RET_TOK(CastOpVal, FPExt, FPEXT); }
17451747 YY_BREAK
17461748 case 95:
17471749 YY_RULE_SETUP
1748 #line 287 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1749 { RET_TOK(CastOpVal, SExt, SEXT); }
1750 #line 295 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1751 { RET_TOK(CastOpVal, UIToFP, UITOFP); }
17501752 YY_BREAK
17511753 case 96:
17521754 YY_RULE_SETUP
1753 #line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1754 { RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
1755 #line 296 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1756 { RET_TOK(CastOpVal, SIToFP, SITOFP); }
17551757 YY_BREAK
17561758 case 97:
17571759 YY_RULE_SETUP
1758 #line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1759 { RET_TOK(CastOpVal, FPExt, FPEXT); }
1760 #line 297 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1761 { RET_TOK(CastOpVal, FPToUI, FPTOUI); }
17601762 YY_BREAK
17611763 case 98:
17621764 YY_RULE_SETUP
1763 #line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1764 { RET_TOK(CastOpVal, UIToFP, UITOFP); }
1765 #line 298 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1766 { RET_TOK(CastOpVal, FPToSI, FPTOSI); }
17651767 YY_BREAK
17661768 case 99:
17671769 YY_RULE_SETUP
1768 #line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1769 { RET_TOK(CastOpVal, SIToFP, SITOFP); }
1770 #line 299 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1771 { RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
17701772 YY_BREAK
17711773 case 100:
17721774 YY_RULE_SETUP
1773 #line 292 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1774 { RET_TOK(CastOpVal, FPToUI, FPTOUI); }
1775 #line 300 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1776 { RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
17751777 YY_BREAK
17761778 case 101:
17771779 YY_RULE_SETUP
1778 #line 293 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1779 { RET_TOK(CastOpVal, FPToSI, FPTOSI); }
1780 #line 301 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1781 { RET_TOK(CastOpVal, BitCast, BITCAST); }
17801782 YY_BREAK
17811783 case 102:
17821784 YY_RULE_SETUP
1783 #line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1784 { RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
1785 #line 302 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1786 { RET_TOK(OtherOpVal, Select, SELECT); }
17851787 YY_BREAK
17861788 case 103:
17871789 YY_RULE_SETUP
1788 #line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1789 { RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
1790 #line 303 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1791 { RET_TOK(OtherOpVal, Shl, SHL); }
17901792 YY_BREAK
17911793 case 104:
17921794 YY_RULE_SETUP
1793 #line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1794 { RET_TOK(CastOpVal, BitCast, BITCAST); }
1795 #line 304 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1796 { RET_TOK(OtherOpVal, LShr, LSHR); }
17951797 YY_BREAK
17961798 case 105:
17971799 YY_RULE_SETUP
1798 #line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1799 { RET_TOK(OtherOpVal, Select, SELECT); }
1800 #line 305 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1801 { RET_TOK(OtherOpVal, AShr, ASHR); }
18001802 YY_BREAK
18011803 case 106:
18021804 YY_RULE_SETUP
1803 #line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1804 { RET_TOK(OtherOpVal, Shl, SHL); }
1805 #line 306 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1806 { RET_TOK(OtherOpVal, VAArg , VAARG); }
18051807 YY_BREAK
18061808 case 107:
18071809 YY_RULE_SETUP
1808 #line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1809 { RET_TOK(OtherOpVal, LShr, LSHR); }
1810 #line 307 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1811 { RET_TOK(TermOpVal, Ret, RET); }
18101812 YY_BREAK
18111813 case 108:
18121814 YY_RULE_SETUP
1813 #line 300 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1814 { RET_TOK(OtherOpVal, AShr, ASHR); }
1815 #line 308 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1816 { RET_TOK(TermOpVal, Br, BR); }
18151817 YY_BREAK
18161818 case 109:
18171819 YY_RULE_SETUP
1818 #line 301 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1819 { RET_TOK(OtherOpVal, VAArg , VAARG); }
1820 #line 309 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1821 { RET_TOK(TermOpVal, Switch, SWITCH); }
18201822 YY_BREAK
18211823 case 110:
18221824 YY_RULE_SETUP
1823 #line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1824 { RET_TOK(TermOpVal, Ret, RET); }
1825 #line 310 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1826 { RET_TOK(TermOpVal, Invoke, INVOKE); }
18251827 YY_BREAK
18261828 case 111:
18271829 YY_RULE_SETUP
1828 #line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1829 { RET_TOK(TermOpVal, Br, BR); }
1830 #line 311 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1831 { RET_TOK(TermOpVal, Unwind, UNWIND); }
18301832 YY_BREAK
18311833 case 112:
18321834 YY_RULE_SETUP
1833 #line 304 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1834 { RET_TOK(TermOpVal, Switch, SWITCH); }
1835 #line 312 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1836 { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
18351837 YY_BREAK
18361838 case 113:
18371839 YY_RULE_SETUP
1838 #line 305 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1839 { RET_TOK(TermOpVal, Invoke, INVOKE); }
1840 #line 314 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1841 { RET_TOK(MemOpVal, Malloc, MALLOC); }
18401842 YY_BREAK
18411843 case 114:
18421844 YY_RULE_SETUP
1843 #line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1844 { RET_TOK(TermOpVal, Unwind, UNWIND); }
1845 #line 315 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1846 { RET_TOK(MemOpVal, Alloca, ALLOCA); }
18451847 YY_BREAK
18461848 case 115:
18471849 YY_RULE_SETUP
1848 #line 307 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1849 { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
1850 #line 316 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1851 { RET_TOK(MemOpVal, Free, FREE); }
18501852 YY_BREAK
18511853 case 116:
18521854 YY_RULE_SETUP
1853 #line 309 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1854 { RET_TOK(MemOpVal, Malloc, MALLOC); }
1855 #line 317 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1856 { RET_TOK(MemOpVal, Load, LOAD); }
18551857 YY_BREAK
18561858 case 117:
18571859 YY_RULE_SETUP
1858 #line 310 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1859 { RET_TOK(MemOpVal, Alloca, ALLOCA); }
1860 #line 318 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1861 { RET_TOK(MemOpVal, Store, STORE); }
18601862 YY_BREAK
18611863 case 118:
18621864 YY_RULE_SETUP
1863 #line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1864 { RET_TOK(MemOpVal, Free, FREE); }
1865 #line 319 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1866 { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
18651867 YY_BREAK
18661868 case 119:
18671869 YY_RULE_SETUP
1868 #line 312 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1869 { RET_TOK(MemOpVal, Load, LOAD); }
1870 #line 321 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1871 { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
18701872 YY_BREAK
18711873 case 120:
18721874 YY_RULE_SETUP
1873 #line 313 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1874 { RET_TOK(MemOpVal, Store, STORE); }
1875 #line 322 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1876 { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
18751877 YY_BREAK
18761878 case 121:
18771879 YY_RULE_SETUP
1878 #line 314 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1879 { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
1880 #line 323 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
1881 { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
18801882 YY_BREAK
18811883 case 122:
18821884 YY_RULE_SETUP
1883 #line 316 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1884 { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
1885 YY_BREAK
1886 case 123:
1887 YY_RULE_SETUP
1888 #line 317 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1889 { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
1890 YY_BREAK
1891 case 124:
1892 YY_RULE_SETUP
1893 #line 318 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1894 { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
1895 YY_BREAK
1896 case 125:
1897 YY_RULE_SETUP
1898 #line 321 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1885 #line 326 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
18991886 {
19001887 UnEscapeLexed(yytext+1);
19011888 llvmAsmlval.StrVal = strdup(yytext+1); // Skip %
19021889 return VAR_ID;
19031890 }
19041891 YY_BREAK
1905 case 126:
1906 YY_RULE_SETUP
1907 #line 326 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1892 case 123:
1893 YY_RULE_SETUP
1894 #line 331 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19081895 {
19091896 yytext[strlen(yytext)-1] = 0; // nuke colon
19101897 UnEscapeLexed(yytext);
19121899 return LABELSTR;
19131900 }
19141901 YY_BREAK
1915 case 127:
1916 YY_RULE_SETUP
1917 #line 332 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1902 case 124:
1903 YY_RULE_SETUP
1904 #line 337 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19181905 {
19191906 yytext[strlen(yytext)-2] = 0; // nuke colon, end quote
19201907 UnEscapeLexed(yytext+1);
19221909 return LABELSTR;
19231910 }
19241911 YY_BREAK
1925 case 128:
1926 YY_RULE_SETUP
1927 #line 339 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1912 case 125:
1913 YY_RULE_SETUP
1914 #line 344 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19281915 { // Note that we cannot unescape a string constant here! The
19291916 // string constant might contain a \00 which would not be
19301917 // understood by the string stuff. It is valid to make a
19351922 return STRINGCONSTANT;
19361923 }
19371924 YY_BREAK
1938 case 129:
1939 YY_RULE_SETUP
1940 #line 350 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1925 case 126:
1926 YY_RULE_SETUP
1927 #line 355 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19411928 { llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; }
19421929 YY_BREAK
1943 case 130:
1944 YY_RULE_SETUP
1945 #line 351 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1930 case 127:
1931 YY_RULE_SETUP
1932 #line 356 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19461933 {
19471934 uint64_t Val = atoull(yytext+1);
19481935 // +1: we have bigger negative range
19521939 return ESINT64VAL;
19531940 }
19541941 YY_BREAK
1955 case 131:
1956 YY_RULE_SETUP
1957 #line 359 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1942 case 128:
1943 YY_RULE_SETUP
1944 #line 364 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19581945 {
19591946 llvmAsmlval.UInt64Val = HexIntToVal(yytext+3);
19601947 return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL;
19611948 }
19621949 YY_BREAK
1963 case 132:
1964 YY_RULE_SETUP
1965 #line 364 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1950 case 129:
1951 YY_RULE_SETUP
1952 #line 369 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19661953 {
19671954 uint64_t Val = atoull(yytext+1);
19681955 if ((unsigned)Val != Val)
19711958 return UINTVAL;
19721959 }
19731960 YY_BREAK
1974 case 133:
1975 YY_RULE_SETUP
1976 #line 371 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1961 case 130:
1962 YY_RULE_SETUP
1963 #line 376 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19771964 {
19781965 uint64_t Val = atoull(yytext+2);
19791966 // +1: we have bigger negative range
19831970 return SINTVAL;
19841971 }
19851972 YY_BREAK
1986 case 134:
1987 YY_RULE_SETUP
1988 #line 380 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1973 case 131:
1974 YY_RULE_SETUP
1975 #line 385 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19891976 { llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
19901977 YY_BREAK
1991 case 135:
1992 YY_RULE_SETUP
1993 #line 381 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1978 case 132:
1979 YY_RULE_SETUP
1980 #line 386 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19941981 { llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
19951982 YY_BREAK
19961983 case YY_STATE_EOF(INITIAL):
1997 #line 383 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1984 #line 388 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
19981985 {
19991986 /* Make sure to free the internal buffers for flex when we are
20001987 * done reading our input!
20031990 return EOF;
20041991 }
20051992 YY_BREAK
2006 case 136:
2007 YY_RULE_SETUP
2008 #line 391 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1993 case 133:
1994 YY_RULE_SETUP
1995 #line 396 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
20091996 { /* Ignore whitespace */ }
20101997 YY_BREAK
2011 case 137:
2012 YY_RULE_SETUP
2013 #line 392 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1998 case 134:
1999 YY_RULE_SETUP
2000 #line 397 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
20142001 { return yytext[0]; }
20152002 YY_BREAK
2016 case 138:
2017 YY_RULE_SETUP
2018 #line 394 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
2003 case 135:
2004 YY_RULE_SETUP
2005 #line 399 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
20192006 YY_FATAL_ERROR( "flex scanner jammed" );
20202007 YY_BREAK
2021 #line 2023 "Lexer.cpp"
2008 #line 2010 "Lexer.cpp"
20222009
20232010 case YY_END_OF_BUFFER:
20242011 {
23052292 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
23062293 {
23072294 yy_current_state = (int) yy_def[yy_current_state];
2308 if ( yy_current_state >= 557 )
2295 if ( yy_current_state >= 551 )
23092296 yy_c = yy_meta[(unsigned int) yy_c];
23102297 }
23112298 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
23352322 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
23362323 {
23372324 yy_current_state = (int) yy_def[yy_current_state];
2338 if ( yy_current_state >= 557 )
2325 if ( yy_current_state >= 551 )
23392326 yy_c = yy_meta[(unsigned int) yy_c];
23402327 }
23412328 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2342 yy_is_jam = (yy_current_state == 556);
2329 yy_is_jam = (yy_current_state == 550);
23432330 if ( ! yy_is_jam )
23442331 *yy_state_ptr++ = yy_current_state;
23452332
28962883 return 0;
28972884 }
28982885 #endif
2899 #line 394 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
2900
2886 #line 399 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
2887
163163 */
164164 EPInteger %[0-9]+
165165 ENInteger %-[0-9]+
166
167 IntegerType i[0-9]*
166168
167169
168170 /* E[PN]Integer: match positive and negative literal integer values */
234236
235237 void { RET_TY(Type::VoidTy, VOID); }
236238 bool { RET_TY(Type::Int1Ty, BOOL); }
237 i8 { RET_TY(Type::Int8Ty, INT8); }
238 i16 { RET_TY(Type::Int16Ty, INT16); }
239 i32 { RET_TY(Type::Int32Ty, INT32); }
240 i64 { RET_TY(Type::Int64Ty, INT64); }
241239 float { RET_TY(Type::FloatTy, FLOAT); }
242240 double { RET_TY(Type::DoubleTy,DOUBLE);}
243241 label { RET_TY(Type::LabelTy, LABEL); }
244242 type { return TYPE; }
245243 opaque { return OPAQUE; }
244 {IntegerType} { uint64_t NumBits = atoull(yytext+1);
245 if (NumBits < IntegerType::MIN_INT_BITS ||
246 NumBits > IntegerType::MAX_INT_BITS)
247 GenerateError("Bitwidth for integer type out of range!");
248 const Type* Ty = IntegerType::get(NumBits);
249 RET_TY(Ty, INTTYPE);
250 }
246251
247252 add { RET_TOK(BinaryOpVal, Add, ADD); }
248253 sub { RET_TOK(BinaryOpVal, Sub, SUB); }
163163 */
164164 EPInteger %[0-9]+
165165 ENInteger %-[0-9]+
166
167 IntegerType i[0-9]*
166168
167169
168170 /* E[PN]Integer: match positive and negative literal integer values */
234236
235237 void { RET_TY(Type::VoidTy, VOID); }
236238 bool { RET_TY(Type::Int1Ty, BOOL); }
237 i8 { RET_TY(Type::Int8Ty, INT8); }
238 i16 { RET_TY(Type::Int16Ty, INT16); }
239 i32 { RET_TY(Type::Int32Ty, INT32); }
240 i64 { RET_TY(Type::Int64Ty, INT64); }
241239 float { RET_TY(Type::FloatTy, FLOAT); }
242240 double { RET_TY(Type::DoubleTy,DOUBLE);}
243241 label { RET_TY(Type::LabelTy, LABEL); }
244242 type { return TYPE; }
245243 opaque { return OPAQUE; }
244 {IntegerType} { uint64_t NumBits = atoull(yytext+1);
245 if (NumBits < IntegerType::MIN_INT_BITS ||
246 NumBits > IntegerType::MAX_INT_BITS)
247 GenerateError("Bitwidth for integer type out of range!");
248 const Type* Ty = IntegerType::get(NumBits);
249 RET_TY(Ty, INTTYPE);
250 }
246251
247252 add { RET_TOK(BinaryOpVal, Add, ADD); }
248253 sub { RET_TOK(BinaryOpVal, Sub, SUB); }
7070 FPVAL = 262,
7171 VOID = 263,
7272 BOOL = 264,
73 INT8 = 265,
74 INT16 = 266,
75 INT32 = 267,
76 INT64 = 268,
77 FLOAT = 269,
78 DOUBLE = 270,
79 LABEL = 271,
80 TYPE = 272,
81 VAR_ID = 273,
82 LABELSTR = 274,
83 STRINGCONSTANT = 275,
84 IMPLEMENTATION = 276,
85 ZEROINITIALIZER = 277,
86 TRUETOK = 278,
87 FALSETOK = 279,
88 BEGINTOK = 280,
89 ENDTOK = 281,
90 DECLARE = 282,
91 DEFINE = 283,
92 GLOBAL = 284,
93 CONSTANT = 285,
94 SECTION = 286,
95 VOLATILE = 287,
96 TO = 288,
97 DOTDOTDOT = 289,
98 NULL_TOK = 290,
99 UNDEF = 291,
100 INTERNAL = 292,
101 LINKONCE = 293,
102 WEAK = 294,
103 APPENDING = 295,
104 DLLIMPORT = 296,
105 DLLEXPORT = 297,
106 EXTERN_WEAK = 298,
107 OPAQUE = 299,
108 NOT = 300,
109 EXTERNAL = 301,
110 TARGET = 302,
111 TRIPLE = 303,
112 ENDIAN = 304,
113 POINTERSIZE = 305,
114 LITTLE = 306,
115 BIG = 307,
116 ALIGN = 308,
117 DEPLIBS = 309,
118 CALL = 310,
119 TAIL = 311,
120 ASM_TOK = 312,
121 MODULE = 313,
122 SIDEEFFECT = 314,
123 CC_TOK = 315,
124 CCC_TOK = 316,
125 CSRETCC_TOK = 317,
126 FASTCC_TOK = 318,
127 COLDCC_TOK = 319,
128 X86_STDCALLCC_TOK = 320,
129 X86_FASTCALLCC_TOK = 321,
130 DATALAYOUT = 322,
131 RET = 323,
132 BR = 324,
133 SWITCH = 325,
134 INVOKE = 326,
135 UNWIND = 327,
136 UNREACHABLE = 328,
137 ADD = 329,
138 SUB = 330,
139 MUL = 331,
140 UDIV = 332,
141 SDIV = 333,
142 FDIV = 334,
143 UREM = 335,
144 SREM = 336,
145 FREM = 337,
146 AND = 338,
147 OR = 339,
148 XOR = 340,
149 ICMP = 341,
150 FCMP = 342,
151 EQ = 343,
152 NE = 344,
153 SLT = 345,
154 SGT = 346,
155 SLE = 347,
156 SGE = 348,
157 ULT = 349,
158 UGT = 350,
159 ULE = 351,
160 UGE = 352,
161 OEQ = 353,
162 ONE = 354,
163 OLT = 355,
164 OGT = 356,
165 OLE = 357,
166 OGE = 358,
167 ORD = 359,
168 UNO = 360,
169 UEQ = 361,
170 UNE = 362,
171 MALLOC = 363,
172 ALLOCA = 364,
173 FREE = 365,
174 LOAD = 366,
175 STORE = 367,
176 GETELEMENTPTR = 368,
177 TRUNC = 369,
178 ZEXT = 370,
179 SEXT = 371,
180 FPTRUNC = 372,
181 FPEXT = 373,
182 BITCAST = 374,
183 UITOFP = 375,
184 SITOFP = 376,
185 FPTOUI = 377,
186 FPTOSI = 378,
187 INTTOPTR = 379,
188 PTRTOINT = 380,
189 PHI_TOK = 381,
190 SELECT = 382,
191 SHL = 383,
192 LSHR = 384,
193 ASHR = 385,
194 VAARG = 386,
195 EXTRACTELEMENT = 387,
196 INSERTELEMENT = 388,
197 SHUFFLEVECTOR = 389,
198 NORETURN = 390
73 INTTYPE = 265,
74 FLOAT = 266,
75 DOUBLE = 267,
76 LABEL = 268,
77 TYPE = 269,
78 VAR_ID = 270,
79 LABELSTR = 271,
80 STRINGCONSTANT = 272,
81 IMPLEMENTATION = 273,
82 ZEROINITIALIZER = 274,
83 TRUETOK = 275,
84 FALSETOK = 276,
85 BEGINTOK = 277,
86 ENDTOK = 278,
87 DECLARE = 279,
88 DEFINE = 280,
89 GLOBAL = 281,
90 CONSTANT = 282,
91 SECTION = 283,
92 VOLATILE = 284,
93 TO = 285,
94 DOTDOTDOT = 286,
95 NULL_TOK = 287,
96 UNDEF = 288,
97 INTERNAL = 289,
98 LINKONCE = 290,
99 WEAK = 291,
100 APPENDING = 292,
101 DLLIMPORT = 293,
102 DLLEXPORT = 294,
103 EXTERN_WEAK = 295,
104 OPAQUE = 296,
105 NOT = 297,
106 EXTERNAL = 298,
107 TARGET = 299,
108 TRIPLE = 300,
109 ENDIAN = 301,
110 POINTERSIZE = 302,
111 LITTLE = 303,
112 BIG = 304,
113 ALIGN = 305,
114 DEPLIBS = 306,
115 CALL = 307,
116 TAIL = 308,
117 ASM_TOK = 309,
118 MODULE = 310,
119 SIDEEFFECT = 311,
120 CC_TOK = 312,
121 CCC_TOK = 313,
122 CSRETCC_TOK = 314,
123 FASTCC_TOK = 315,
124 COLDCC_TOK = 316,
125 X86_STDCALLCC_TOK = 317,
126 X86_FASTCALLCC_TOK = 318,
127 DATALAYOUT = 319,
128 RET = 320,
129 BR = 321,
130 SWITCH = 322,
131 INVOKE = 323,
132 UNWIND = 324,
133 UNREACHABLE = 325,
134 ADD = 326,
135 SUB = 327,
136 MUL = 328,
137 UDIV = 329,
138 SDIV = 330,
139 FDIV = 331,
140 UREM = 332,
141 SREM = 333,
142 FREM = 334,
143 AND = 335,
144 OR = 336,
145 XOR = 337,
146 ICMP = 338,
147 FCMP = 339,
148 EQ = 340,
149 NE = 341,
150 SLT = 342,
151 SGT = 343,
152 SLE = 344,
153 SGE = 345,
154 ULT = 346,
155 UGT = 347,
156 ULE = 348,
157 UGE = 349,
158 OEQ = 350,
159 ONE = 351,
160 OLT = 352,
161 OGT = 353,
162 OLE = 354,
163 OGE = 355,
164 ORD = 356,
165 UNO = 357,
166 UEQ = 358,
167 UNE = 359,
168 MALLOC = 360,
169 ALLOCA = 361,
170 FREE = 362,
171 LOAD = 363,
172 STORE = 364,
173 GETELEMENTPTR = 365,
174 TRUNC = 366,
175 ZEXT = 367,
176 SEXT = 368,
177 FPTRUNC = 369,
178 FPEXT = 370,
179 BITCAST = 371,
180 UITOFP = 372,
181 SITOFP = 373,
182 FPTOUI = 374,
183 FPTOSI = 375,
184 INTTOPTR = 376,
185 PTRTOINT = 377,
186 PHI_TOK = 378,
187 SELECT = 379,
188 SHL = 380,
189 LSHR = 381,
190 ASHR = 382,
191 VAARG = 383,
192 EXTRACTELEMENT = 384,
193 INSERTELEMENT = 385,
194 SHUFFLEVECTOR = 386,
195 NORETURN = 387
199196 };
200197 #endif
201198 /* Tokens. */
206203 #define FPVAL 262
207204 #define VOID 263
208205 #define BOOL 264
209 #define INT8 265
210 #define INT16 266
211 #define INT32 267
212 #define INT64 268
213 #define FLOAT 269
214 #define DOUBLE 270
215 #define LABEL 271
216 #define TYPE 272
217 #define VAR_ID 273
218 #define LABELSTR 274
219 #define STRINGCONSTANT 275
220 #define IMPLEMENTATION 276
221 #define ZEROINITIALIZER 277
222 #define TRUETOK 278
223 #define FALSETOK 279
224 #define BEGINTOK 280
225 #define ENDTOK 281
226 #define DECLARE 282
227 #define DEFINE 283
228 #define GLOBAL 284
229 #define CONSTANT 285
230 #define SECTION 286
231 #define VOLATILE 287
232 #define TO 288
233 #define DOTDOTDOT 289
234 #define NULL_TOK 290
235 #define UNDEF 291
236 #define INTERNAL 292
237 #define LINKONCE 293
238 #define WEAK 294
239 #define APPENDING 295
240 #define DLLIMPORT 296
241 #define DLLEXPORT 297
242 #define EXTERN_WEAK 298
243 #define OPAQUE 299
244 #define NOT 300
245 #define EXTERNAL 301
246 #define TARGET 302
247 #define TRIPLE 303
248 #define ENDIAN 304
249 #define POINTERSIZE 305
250 #define LITTLE 306
251 #define BIG 307
252 #define ALIGN 308
253 #define DEPLIBS 309
254 #define CALL 310
255 #define TAIL 311
256 #define ASM_TOK 312
257 #define MODULE 313
258 #define SIDEEFFECT 314
259 #define CC_TOK 315
260 #define CCC_TOK 316
261 #define CSRETCC_TOK 317
262 #define FASTCC_TOK 318
263 #define COLDCC_TOK 319
264 #define X86_STDCALLCC_TOK 320
265 #define X86_FASTCALLCC_TOK 321
266 #define DATALAYOUT 322
267 #define RET 323
268 #define BR 324
269 #define SWITCH 325
270 #define INVOKE 326
271 #define UNWIND 327
272 #define UNREACHABLE 328
273 #define ADD 329
274 #define SUB 330
275 #define MUL 331
276 #define UDIV 332
277 #define SDIV 333
278 #define FDIV 334
279 #define UREM 335
280 #define SREM 336
281 #define FREM 337
282 #define AND 338
283 #define OR 339
284 #define XOR 340
285 #define ICMP 341
286 #define FCMP 342
287 #define EQ 343
288 #define NE 344
289 #define SLT 345
290 #define SGT 346
291 #define SLE 347
292 #define SGE 348
293 #define ULT 349
294 #define UGT 350
295 #define ULE 351
296 #define UGE 352
297 #define OEQ 353
298 #define ONE 354
299 #define OLT 355
300 #define OGT 356
301 #define OLE 357
302 #define OGE 358
303 #define ORD 359
304 #define UNO 360
305 #define UEQ 361
306 #define UNE 362
307 #define MALLOC 363
308 #define ALLOCA 364
309 #define FREE 365
310 #define LOAD 366
311 #define STORE 367
312 #define GETELEMENTPTR 368
313 #define TRUNC 369
314 #define ZEXT 370
315 #define SEXT 371
316 #define FPTRUNC 372
317 #define FPEXT 373
318 #define BITCAST 374
319 #define UITOFP 375
320 #define SITOFP 376
321 #define FPTOUI 377
322 #define FPTOSI 378
323 #define INTTOPTR 379
324 #define PTRTOINT 380
325 #define PHI_TOK 381
326 #define SELECT 382
327 #define SHL 383
328 #define LSHR 384
329 #define ASHR 385
330 #define VAARG 386
331 #define EXTRACTELEMENT 387
332 #define INSERTELEMENT 388
333 #define SHUFFLEVECTOR 389
334 #define NORETURN 390
206 #define INTTYPE 265
207 #define FLOAT 266
208 #define DOUBLE 267
209 #define LABEL 268
210 #define TYPE 269
211 #define VAR_ID 270
212 #define LABELSTR 271
213 #define STRINGCONSTANT 272
214 #define IMPLEMENTATION 273
215 #define ZEROINITIALIZER 274
216 #define TRUETOK 275
217 #define FALSETOK 276
218 #define BEGINTOK 277
219 #define ENDTOK 278
220 #define DECLARE 279
221 #define DEFINE 280
222 #define GLOBAL 281
223 #define CONSTANT 282
224 #define SECTION 283
225 #define VOLATILE 284
226 #define TO 285
227 #define DOTDOTDOT 286
228 #define NULL_TOK 287
229 #define UNDEF 288
230 #define INTERNAL 289
231 #define LINKONCE 290
232 #define WEAK 291
233 #define APPENDING 292
234 #define DLLIMPORT 293
235 #define DLLEXPORT 294
236 #define EXTERN_WEAK 295
237 #define OPAQUE 296
238 #define NOT 297
239 #define EXTERNAL 298
240 #define TARGET 299
241 #define TRIPLE 300
242 #define ENDIAN 301
243 #define POINTERSIZE 302
244 #define LITTLE 303
245 #define BIG 304
246 #define ALIGN 305
247 #define DEPLIBS 306
248 #define CALL 307
249 #define TAIL 308
250 #define ASM_TOK 309
251 #define MODULE 310
252 #define SIDEEFFECT 311
253 #define CC_TOK 312
254 #define CCC_TOK 313
255 #define CSRETCC_TOK 314
256 #define FASTCC_TOK 315
257 #define COLDCC_TOK 316
258 #define X86_STDCALLCC_TOK 317
259 #define X86_FASTCALLCC_TOK 318
260 #define DATALAYOUT 319
261 #define RET 320
262 #define BR 321
263 #define SWITCH 322
264 #define INVOKE 323
265 #define UNWIND 324
266 #define UNREACHABLE 325
267 #define ADD 326
268 #define SUB 327
269 #define MUL 328
270 #define UDIV 329
271 #define SDIV 330
272 #define FDIV 331
273 #define UREM 332
274 #define SREM 333
275 #define FREM 334
276 #define AND 335
277 #define OR 336
278 #define XOR 337
279 #define ICMP 338
280 #define FCMP 339
281 #define EQ 340
282 #define NE 341
283 #define SLT 342
284 #define SGT 343
285 #define SLE 344
286 #define SGE 345
287 #define ULT 346
288 #define UGT 347
289 #define ULE 348
290 #define UGE 349
291 #define OEQ 350
292 #define ONE 351
293 #define OLT 352
294 #define OGT 353
295 #define OLE 354
296 #define OGE 355
297 #define ORD 356
298 #define UNO 357
299 #define UEQ 358
300 #define UNE 359
301 #define MALLOC 360
302 #define ALLOCA 361
303 #define FREE 362
304 #define LOAD 363
305 #define STORE 364
306 #define GETELEMENTPTR 365
307 #define TRUNC 366
308 #define ZEXT 367
309 #define SEXT 368
310 #define FPTRUNC 369
311 #define FPEXT 370
312 #define BITCAST 371
313 #define UITOFP 372
314 #define SITOFP 373
315 #define FPTOUI 374
316 #define FPTOSI 375
317 #define INTTOPTR 376
318 #define PTRTOINT 377
319 #define PHI_TOK 378
320 #define SELECT 379
321 #define SHL 380
322 #define LSHR 381
323 #define ASHR 382
324 #define VAARG 383
325 #define EXTRACTELEMENT 384
326 #define INSERTELEMENT 385
327 #define SHUFFLEVECTOR 386
328 #define NORETURN 387
335329
336330
337331
338332
339333 /* Copy the first part of user declarations. */
340 #line 14 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
334 #line 14 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
341335
342336 #include "ParserInternals.h"
343337 #include "llvm/CallingConv.h"
12191213 #endif
12201214
12211215 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
1222 #line 876 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
1216 #line 876 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
12231217 typedef union YYSTYPE {
12241218 llvm::Module *ModuleVal;
12251219 llvm::Function *FunctionVal;
12661260 llvm::FCmpInst::Predicate FPredicate;
12671261 } YYSTYPE;
12681262 /* Line 196 of yacc.c. */
1269 #line 1271 "llvmAsmParser.tab.c"
1263 #line 1265 "llvmAsmParser.tab.c"
12701264 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
12711265 # define YYSTYPE_IS_DECLARED 1
12721266 # define YYSTYPE_IS_TRIVIAL 1
12781272
12791273
12801274 /* Line 219 of yacc.c. */
1281 #line 1283 "llvmAsmParser.tab.c"
1275 #line 1277 "llvmAsmParser.tab.c"
12821276
12831277 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
12841278 # define YYSIZE_T __SIZE_TYPE__
14291423 /* YYFINAL -- State number of the termination state. */
14301424 #define YYFINAL 37
14311425 /* YYLAST -- Last index in YYTABLE. */
1432 #define YYLAST 1584
1426 #define YYLAST 1512
14331427
14341428 /* YYNTOKENS -- Number of terminals. */
1435 #define YYNTOKENS 150
1429 #define YYNTOKENS 147
14361430 /* YYNNTS -- Number of nonterminals. */
14371431 #define YYNNTS 78
14381432 /* YYNRULES -- Number of rules. */
1439 #define YYNRULES 291
1433 #define YYNRULES 285
14401434 /* YYNRULES -- Number of states. */
1441 #define YYNSTATES 576
1435 #define YYNSTATES 567
14421436
14431437 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
14441438 #define YYUNDEFTOK 2
1445 #define YYMAXUTOK 390
1439 #define YYMAXUTOK 387
14461440
14471441 #define YYTRANSLATE(YYX) \
14481442 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
14541448 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14551449 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14561450 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1457 140, 141, 138, 2, 137, 2, 2, 2, 2, 2,
1451 137, 138, 135, 2, 134, 2, 2, 2, 2, 2,
14581452 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1459 145, 136, 146, 2, 2, 2, 2, 2, 2, 2,
1453 142, 133, 143, 2, 2, 2, 2, 2, 2, 2,
14601454 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14611455 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1462 2, 142, 139, 144, 2, 2, 2, 2, 2, 149,
1456 2, 139, 136, 141, 2, 2, 2, 2, 2, 146,
14631457 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14641458 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1465 143, 2, 2, 147, 2, 148, 2, 2, 2, 2,
1459 140, 2, 2, 144, 2, 145, 2, 2, 2, 2,
14661460 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14671461 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14681462 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
14881482 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
14891483 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
14901484 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1491 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1492 135
1485 125, 126, 127, 128, 129, 130, 131, 132
14931486 };
14941487
14951488 #if YYDEBUG
15031496 59, 61, 63, 65, 67, 69, 71, 73, 75, 77,
15041497 79, 81, 83, 85, 87, 89, 91, 93, 95, 97,
15051498 99, 101, 103, 105, 107, 109, 111, 113, 115, 117,
1506 119, 121, 123, 125, 128, 129, 131, 133, 135, 137,
1507 139, 141, 143, 145, 146, 148, 150, 151, 153, 155,
1508 157, 159, 160, 162, 164, 166, 168, 170, 172, 175,
1509 177, 179, 180, 183, 185, 187, 188, 191, 192, 195,
1510 196, 200, 203, 204, 206, 207, 211, 213, 216, 218,
1511 220, 222, 224, 226, 228, 230, 232, 234, 236, 239,
1512 241, 244, 250, 256, 262, 268, 272, 275, 281, 286,
1513 289, 291, 293, 295, 299, 301, 305, 307, 308, 310,
1514 314, 319, 323, 327, 332, 337, 341, 348, 354, 357,
1515 360, 363, 366, 369, 372, 375, 378, 381, 384, 391,
1516 397, 406, 413, 420, 428, 436, 443, 450, 459, 468,
1517 472, 474, 476, 478, 480, 481, 483, 486, 487, 491,
1518 492, 496, 500, 502, 506, 510, 511, 517, 518, 525,
1519 526, 533, 536, 540, 542, 544, 546, 550, 554, 558,
1520 562, 566, 570, 572, 573, 575, 577, 579, 580, 586,
1521 590, 592, 596, 598, 599, 609, 611, 613, 617, 619,
1522 621, 624, 627, 628, 630, 632, 634, 636, 638, 640,
1523 642, 644, 646, 650, 652, 658, 660, 662, 664, 666,
1524 669, 672, 675, 679, 682, 683, 685, 688, 691, 695,
1525 705, 715, 724, 739, 741, 743, 750, 756, 759, 766,
1526 774, 778, 784, 785, 786, 790, 793, 795, 801, 807,
1527 814, 821, 824, 829, 834, 841, 846, 851, 858, 865,
1528 868, 877, 879, 881, 882, 886, 893, 897, 904, 907,
1529 912, 919
1499 119, 122, 123, 125, 127, 129, 131, 133, 135, 137,
1500 139, 140, 142, 144, 145, 147, 149, 151, 153, 154,
1501 156, 158, 160, 162, 164, 166, 169, 171, 173, 174,
1502 177, 179, 181, 182, 185, 186, 189, 190, 194, 197,
1503 198, 200, 201, 205, 207, 210, 212, 214, 216, 218,
1504 220, 222, 224, 227, 229, 232, 238, 244, 250, 256,
1505 260, 263, 269, 274, 277, 279, 281, 283, 287, 289,
1506 293, 295, 296, 298, 302, 307, 311, 315, 320, 325,
1507 329, 336, 342, 345, 348, 351, 354, 357, 360, 363,
1508 366, 369, 372, 379, 385, 394, 401, 408, 416, 424,
1509 431, 438, 447, 456, 460, 462, 464, 466, 468, 469,
1510 471, 474, 475, 479, 480, 484, 488, 490, 494, 498,
1511 499, 505, 506, 513, 514, 521, 524, 528, 530, 532,
1512 534, 538, 542, 546, 550, 554, 558, 560, 561, 563,
1513 565, 567, 568, 574, 578, 580, 584, 586, 587, 597,
1514 599, 601, 605, 607, 609, 612, 615, 616, 618, 620,
1515 622, 624, 626, 628, 630, 632, 634, 638, 640, 646,
1516 648, 650, 652, 654, 657, 660, 663, 667, 670, 671,
1517 673, 676, 679, 683, 693, 703, 712, 727, 729, 731,
1518 738, 744, 747, 754, 762, 766, 772, 773, 774, 778,
1519 781, 783, 789, 795, 802, 809, 812, 817, 822, 829,
1520 834, 839, 846, 853, 856, 865, 867, 869, 870, 874,
1521 881, 885, 892, 895, 900, 907
15301522 };
15311523
15321524 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
15331525 static const short int yyrhs[] =
15341526 {
1535 187, 0, -1, 5, -1, 6, -1, 74, -1, 75,
1536 -1, 76, -1, 77, -1, 78, -1, 79, -1, 80,
1537 -1, 81, -1, 82, -1, 83, -1, 84, -1, 85,
1538 -1, 114, -1, 115, -1, 116, -1, 117, -1, 118,
1539 -1, 119, -1, 120, -1, 121, -1, 122, -1, 123,
1540 -1, 124, -1, 125, -1, 128, -1, 129, -1, 130,
1541 -1, 88, -1, 89, -1, 90, -1, 91, -1, 92,
1542 -1, 93, -1, 94, -1, 95, -1, 96, -1, 97,
1543 -1, 98, -1, 99, -1, 100, -1, 101, -1, 102,
1544 -1, 103, -1, 104, -1, 105, -1, 106, -1, 107,
1545 -1, 94, -1, 95, -1, 96, -1, 97, -1, 23,
1546 -1, 24, -1, 13, -1, 12, -1, 11, -1, 10,
1547 -1, 14, -1, 15, -1, 200, 136, -1, -1, 37,
1548 -1, 39, -1, 38, -1, 40, -1, 42, -1, 41,
1549 -1, 43, -1, 46, -1, -1, 41, -1, 43, -1,
1550 -1, 37, -1, 38, -1, 39, -1, 42, -1, -1,
1551 61, -1, 62, -1, 63, -1, 64, -1, 65, -1,
1552 66, -1, 60, 4, -1, 115, -1, 116, -1, -1,
1553 167, 166, -1, 135, -1, 166, -1, -1, 169, 168,
1554 -1, -1, 53, 4, -1, -1, 137, 53, 4, -1,
1555 31, 20, -1, -1, 172, -1, -1, 137, 175, 174,
1556 -1, 172, -1, 53, 4, -1, 9, -1, 10, -1,
1557 11, -1, 12, -1, 13, -1, 14, -1, 15, -1,
1558 16, -1, 44, -1, 176, -1, 177, 138, -1, 212,
1559 -1, 139, 4, -1, 177, 140, 181, 141, 169, -1,
1560 8, 140, 181, 141, 169, -1, 142, 4, 143, 177,
1561 144, -1, 145, 4, 143, 177, 146, -1, 147, 182,
1562 148, -1, 147, 148, -1, 145, 147, 182, 148, 146,
1563 -1, 145, 147, 148, 146, -1, 177, 167, -1, 177,
1564 -1, 8, -1, 178, -1, 180, 137, 178, -1, 180,
1565 -1, 180, 137, 34, -1, 34, -1, -1, 177, -1,
1566 182, 137, 177, -1, 177, 142, 185, 144, -1, 177,
1567 142, 144, -1, 177, 149, 20, -1, 177, 145, 185,
1568 146, -1, 177, 147, 185, 148, -1, 177, 147, 148,
1569 -1, 177, 145, 147, 185, 148, 146, -1, 177, 145,
1570 147, 148, 146, -1, 177, 35, -1, 177, 36, -1,
1571 177, 212, -1, 177, 184, -1, 177, 22, -1, 158,
1572 3, -1, 158, 4, -1, 9, 23, -1, 9, 24,
1573 -1, 159, 7, -1, 154, 140, 183, 33, 177, 141,
1574 -1, 113, 140, 183, 223, 141, -1, 127, 140, 183,
1575 137, 183, 137, 183, 141, -1, 152, 140, 183, 137,
1576 183, 141, -1, 153, 140, 183, 137, 183, 141, -1,
1577 86, 156, 140, 183, 137, 183, 141, -1, 87, 157,
1578 140, 183, 137, 183, 141, -1, 155, 140, 183, 137,
1579 183, 141, -1, 132, 140, 183, 137, 183, 141, -1,
1580 133, 140, 183, 137, 183, 137, 183, 141, -1, 134,
1581 140, 183, 137, 183, 137, 183, 141, -1, 185, 137,
1582 183, -1, 183, -1, 29, -1, 30, -1, 188, -1,
1583 -1, 189, -1, 188, 189, -1, -1, 28, 190, 208,
1584 -1, -1, 27, 191, 209, -1, 58, 57, 195, -1,
1585 21, -1, 160, 17, 177, -1, 160, 17, 8, -1,
1586 -1, 160, 186, 183, 192, 174, -1, -1, 160, 161,
1587 186, 183, 193, 174, -1, -1, 160, 162, 186, 177,
1588 194, 174, -1, 47, 197, -1, 54, 136, 198, -1,
1589 20, -1, 52, -1, 51, -1, 49, 136, 196, -1,
1590 50, 136, 4, -1, 48, 136, 20, -1, 67, 136,
1591 20, -1, 142, 199, 144, -1, 199, 137, 20, -1,
1592 20, -1, -1, 18, -1, 20, -1, 200, -1, -1,
1593 202, 137, 177, 167, 201, -1, 177, 167, 201, -1,
1594 202, -1, 202, 137, 34, -1, 34, -1, -1, 165,
1595 179, 200, 140, 203, 141, 169, 173, 170, -1, 25,
1596 -1, 147, -1, 164, 204, 205, -1, 26, -1, 148,
1597 -1, 215, 207, -1, 163, 204, -1, -1, 59, -1,
1598 3, -1, 4, -1, 7, -1, 23, -1, 24, -1,
1599 35, -1, 36, -1, 22, -1, 145, 185, 146, -1,
1600 184, -1, 57, 210, 20, 137, 20, -1, 151, -1,
1601 200, -1, 212, -1, 211, -1, 177, 213, -1, 215,
1602 216, -1, 206, 216, -1, 217, 160, 218, -1, 217,
1603 220, -1, -1, 19, -1, 68, 214, -1, 68, 8,
1604 -1, 69, 16, 213, -1, 69, 9, 213, 137, 16,
1605 213, 137, 16, 213, -1, 70, 158, 213, 137, 16,
1606 213, 142, 219, 144, -1, 70, 158, 213, 137, 16,
1607 213, 142, 144, -1, 71, 165, 179, 213, 140, 222,
1608 141, 169, 33, 16, 213, 72, 16, 213, -1, 72,
1609 -1, 73, -1, 219, 158, 211, 137, 16, 213, -1,
1610 158, 211, 137, 16, 213, -1, 160, 225, -1, 177,
1611 142, 213, 137, 213, 144, -1, 221, 137, 142, 213,
1612 137, 213, 144, -1, 177, 213, 167, -1, 222, 137,
1613 177, 213, 167, -1, -1, -1, 223, 137, 214, -1,
1614 56, 55, -1, 55, -1, 152, 177, 213, 137, 213,
1615 -1, 153, 177, 213, 137, 213, -1, 86, 156, 177,
1616 213, 137, 213, -1, 87, 157, 177, 213, 137, 213,
1617 -1, 45, 214, -1, 155, 214, 137, 214, -1, 154,
1618 214, 33, 177, -1, 127, 214, 137, 214, 137, 214,
1619 -1, 131, 214, 137, 177, -1, 132, 214, 137, 214,
1620 -1, 133, 214, 137, 214, 137, 214, -1, 134, 214,
1621 137, 214, 137, 214, -1, 126, 221, -1, 224, 165,
1622 179, 213, 140, 222, 141, 169, -1, 227, -1, 32,
1623 -1, -1, 108, 177, 171, -1, 108, 177, 137, 12,
1624 213, 171, -1, 109, 177, 171, -1, 109, 177, 137,
1625 12, 213, 171, -1, 110, 214, -1, 226, 111, 177,
1626 213, -1, 226, 112, 214, 137, 177, 213, -1, 113,
1627 177, 213, 223, -1
1527 184, 0, -1, 5, -1, 6, -1, 71, -1, 72,
1528 -1, 73, -1, 74, -1, 75, -1, 76, -1, 77,
1529 -1, 78, -1, 79, -1, 80, -1, 81, -1, 82,
1530 -1, 111, -1, 112, -1, 113, -1, 114, -1, 115,
1531 -1, 116, -1, 117, -1, 118, -1, 119, -1, 120,
1532 -1, 121, -1, 122, -1, 125, -1, 126, -1, 127,
1533 -1, 85, -1, 86, -1, 87, -1, 88, -1, 89,
1534 -1, 90, -1, 91, -1, 92, -1, 93, -1, 94,
1535 -1, 95, -1, 96, -1, 97, -1, 98, -1, 99,
1536 -1, 100, -1, 101, -1, 102, -1, 103, -1, 104,
1537 -1, 91, -1, 92, -1, 93, -1, 94, -1, 20,
1538 -1, 21, -1, 10, -1, 11, -1, 12, -1, 197,
1539 133, -1, -1, 34, -1, 36, -1, 35, -1, 37,
1540 -1, 39, -1, 38, -1, 40, -1, 43, -1, -1,
1541 38, -1, 40, -1, -1, 34, -1, 35, -1, 36,
1542 -1, 39, -1, -1, 58, -1, 59, -1, 60, -1,
1543 61, -1, 62, -1, 63, -1, 57, 4, -1, 112,
1544 -1, 113, -1, -1, 164, 163, -1, 132, -1, 163,
1545 -1, -1, 166, 165, -1, -1, 50, 4, -1, -1,
1546 134, 50, 4, -1, 28, 17, -1, -1, 169, -1,
1547 -1, 134, 172, 171, -1, 169, -1, 50, 4, -1,
1548 9, -1, 10, -1, 11, -1, 12, -1, 13, -1,
1549 41, -1, 173, -1, 174, 135, -1, 209, -1, 136,
1550 4, -1, 174, 137, 178, 138, 166, -1, 8, 137,
1551 178, 138, 166, -1, 139, 4, 140, 174, 141, -1,
1552 142, 4, 140, 174, 143, -1, 144, 179, 145, -1,
1553 144, 145, -1, 142, 144, 179, 145, 143, -1, 142,
1554 144, 145, 143, -1, 174, 164, -1, 174, -1, 8,
1555 -1, 175, -1, 177, 134, 175, -1, 177, -1, 177,
1556 134, 31, -1, 31, -1, -1, 174, -1, 179, 134,
1557 174, -1, 174, 139, 182, 141, -1, 174, 139, 141,
1558 -1, 174, 146, 17, -1, 174, 142, 182, 143, -1,
1559 174, 144, 182, 145, -1, 174, 144, 145, -1, 174,
1560 142, 144, 182, 145, 143, -1, 174, 142, 144, 145,
1561 143, -1, 174, 32, -1, 174, 33, -1, 174, 209,
1562 -1, 174, 181, -1, 174, 19, -1, 155, 3, -1,
1563 155, 4, -1, 9, 20, -1, 9, 21, -1, 156,
1564 7, -1, 151, 137, 180, 30, 174, 138, -1, 110,
1565 137, 180, 220, 138, -1, 124, 137, 180, 134, 180,
1566 134, 180, 138, -1, 149, 137, 180, 134, 180, 138,
1567 -1, 150, 137, 180, 134, 180, 138, -1, 83, 153,
1568 137, 180, 134, 180, 138, -1, 84, 154, 137, 180,
1569 134, 180, 138, -1, 152, 137, 180, 134, 180, 138,
1570 -1, 129, 137, 180, 134, 180, 138, -1, 130, 137,
1571 180, 134, 180, 134, 180, 138, -1, 131, 137, 180,
1572 134, 180, 134, 180, 138, -1, 182, 134, 180, -1,
1573 180, -1, 26, -1, 27, -1, 185, -1, -1, 186,
1574 -1, 185, 186, -1, -1, 25, 187, 205, -1, -1,
1575 24, 188, 206, -1, 55, 54, 192, -1, 18, -1,
1576 157, 14, 174, -1, 157, 14, 8, -1, -1, 157,
1577 183, 180, 189, 171, -1, -1, 157, 158, 183, 180,
1578 190, 171, -1, -1, 157, 159, 183, 174, 191, 171,
1579 -1, 44, 194, -1, 51, 133, 195, -1, 17, -1,
1580 49, -1, 48, -1, 46, 133, 193, -1, 47, 133,
1581 4, -1, 45, 133, 17, -1, 64, 133, 17, -1,
1582 139, 196, 141, -1, 196, 134, 17, -1, 17, -1,
1583 -1, 15, -1, 17, -1, 197, -1, -1, 199, 134,
1584 174, 164, 198, -1, 174, 164, 198, -1, 199, -1,
1585 199, 134, 31, -1, 31, -1, -1, 162, 176, 197,
1586 137, 200, 138, 166, 170, 167, -1, 22, -1, 144,
1587 -1, 161, 201, 202, -1, 23, -1, 145, -1, 212,
1588 204, -1, 160, 201, -1, -1, 56, -1, 3, -1,
1589 4, -1, 7, -1, 20, -1, 21, -1, 32, -1,
1590 33, -1, 19, -1, 142, 182, 143, -1, 181, -1,
1591 54, 207, 17, 134, 17, -1, 148, -1, 197, -1,
1592 209, -1, 208, -1, 174, 210, -1, 212, 213, -1,
1593 203, 213, -1, 214, 157, 215, -1, 214, 217, -1,
1594 -1, 16, -1, 65, 211, -1, 65, 8, -1, 66,
1595 13, 210, -1, 66, 9, 210, 134, 13, 210, 134,
1596 13, 210, -1, 67, 155, 210, 134, 13, 210, 139,
1597 216, 141, -1, 67, 155, 210, 134, 13, 210, 139,
1598 141, -1, 68, 162, 176, 210, 137, 219, 138, 166,
1599 30, 13, 210, 69, 13, 210, -1, 69, -1, 70,
1600 -1, 216, 155, 208, 134, 13, 210, -1, 155, 208,
1601 134, 13, 210, -1, 157, 222, -1, 174, 139, 210,
1602 134, 210, 141, -1, 218, 134, 139, 210, 134, 210,
1603 141, -1, 174, 210, 164, -1, 219, 134, 174, 210,
1604 164, -1, -1, -1, 220, 134, 211, -1, 53, 52,
1605 -1, 52, -1, 149, 174, 210, 134, 210, -1, 150,
1606 174, 210, 134, 210, -1, 83, 153, 174, 210, 134,
1607 210, -1, 84, 154, 174, 210, 134, 210, -1, 42,
1608 211, -1, 152, 211, 134, 211, -1, 151, 211, 30,
1609 174, -1, 124, 211, 134, 211, 134, 211, -1, 128,
1610 211, 134, 174, -1, 129, 211, 134, 211, -1, 130,
1611 211, 134, 211, 134, 211, -1, 131, 211, 134, 211,
1612 134, 211, -1, 123, 218, -1, 221, 162, 176, 210,
1613 137, 219, 138, 166, -1, 224, -1, 29, -1, -1,
1614 105, 174, 168, -1, 105, 174, 134, 10, 210, 168,
1615 -1, 106, 174, 168, -1, 106, 174, 134, 10, 210,
1616 168, -1, 107, 211, -1, 223, 108, 174, 210, -1,
1617 223, 109, 211, 134, 174, 210, -1, 110, 174, 210,
1618 220, -1
16281619 };
16291620
16301621 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
16351626 1032, 1032, 1033, 1033, 1033, 1033, 1033, 1033, 1034, 1034,
16361627 1034, 1036, 1036, 1037, 1037, 1038, 1038, 1039, 1039, 1040,
16371628 1040, 1044, 1044, 1045, 1045, 1046, 1046, 1047, 1047, 1048,
1638 1048, 1049, 1049, 1050, 1050, 1051, 1052, 1057, 1057, 1057,
1639 1057, 1058, 1058, 1061, 1065, 1071, 1072, 1073, 1074, 1075,
1640 1079, 1080, 1081, 1085, 1086, 1087, 1091, 1092, 1093, 1094,
1641 1095, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1112,
1642 1113, 1116, 1117, 1122, 1123, 1126, 1127, 1134, 1135, 1141,
1643 1142, 1150, 1158, 1159, 1164, 1165, 1166, 1171, 1184, 1184,
1644 1184, 1184, 1184, 1184, 1184, 1184, 1187, 1191, 1195, 1202,
1645 1207, 1215, 1233, 1251, 1256, 1268, 1278, 1282, 1292, 1299,
1646 1306, 1313, 1318, 1323, 1330, 1331, 1338, 1345, 1353, 1358,
1647 1369, 1397, 1413, 1442, 1470, 1495, 1514, 1539, 1558, 1570,
1648 1577, 1640, 1650, 1660, 1666, 1672, 1676, 1680, 1688, 1702,
1649 1723, 1731, 1737, 1748, 1753, 1758, 1767, 1773, 1779, 1788,
1650 1792, 1800, 1800, 1811, 1816, 1824, 1825, 1829, 1829, 1833,
1651 1833, 1836, 1839, 1851, 1875, 1886, 1886, 1895, 1895, 1903,
1652 1903, 1913, 1916, 1922, 1935, 1936, 1938, 1942, 1951, 1955,
1653 1960, 1962, 1967, 1972, 1981, 1981, 1982, 1982, 1984, 1994,
1654 2005, 2009, 2018, 2027, 2032, 2137, 2137, 2139, 2147, 2147,
1655 2149, 2154, 2165, 2169, 2174, 2178, 2182, 2186, 2190, 2194,
1656 2198, 2202, 2206, 2231, 2235, 2249, 2253, 2259, 2259, 2265,
1657 2274, 2278, 2287, 2298, 2307, 2319, 2332, 2336, 2340, 2345,
1658 2354, 2373, 2382, 2449, 2453, 2460, 2471, 2484, 2493, 2504,
1659 2514, 2522, 2530, 2533, 2534, 2541, 2545, 2550, 2571, 2588,
1660 2601, 2614, 2627, 2636, 2649, 2657, 2664, 2670, 2676, 2682,
1661 2697, 2760, 2765, 2769, 2776, 2783, 2791, 2798, 2806, 2814,
1662 2828, 2845
1629 1048, 1049, 1049, 1050, 1050, 1051, 1052, 1057, 1058, 1058,
1630 1061, 1065, 1071, 1072, 1073, 1074, 1075, 1079, 1080, 1081,
1631 1085, 1086, 1087, 1091, 1092, 1093, 1094, 1095, 1098, 1099,
1632 1100, 1101, 1102, 1103, 1104, 1105, 1112, 1113, 1116, 1117,
1633 1122, 1123, 1126, 1127, 1134, 1135, 1141, 1142, 1150, 1158,
1634 1159, 1164, 1165, 1166, 1171, 1184, 1184, 1184, 1184, 1184,
1635 1187, 1191, 1195, 1202, 1207, 1215, 1233, 1251, 1256, 1268,
1636 1278, 1282, 1292, 1299, 1306, 1313, 1318, 1323, 1330, 1331,
1637 1338, 1345, 1353, 1358, 1369, 1397, 1413, 1442, 1470, 1495,
1638 1514, 1539, 1558, 1570, 1577, 1640, 1650, 1660, 1666, 1672,
1639 1676, 1680, 1688, 1702, 1723, 1731, 1737, 1748, 1753, 1758,
1640 1767, 1773, 1779, 1788, 1792, 1800, 1800, 1811, 1816, 1824,
1641 1825, 1829, 1829, 1833, 1833, 1836, 1839, 1851, 1875, 1886,
1642 1886, 1895, 1895, 1903, 1903, 1913, 1916, 1922, 1935, 1936,
1643 1938, 1942, 1951, 1955, 1960, 1962, 1967, 1972, 1981, 1981,
1644 1982, 1982, 1984, 1994, 2005, 2009, 2018, 2027, 2032, 2137,
1645 2137, 2139, 2147, 2147, 2149, 2154, 2165, 2169, 2174, 2178,
1646 2182, 2186, 2190, 2194, 2198, 2202, 2206, 2231, 2235, 2249,
1647 2253, 2259, 2259, 2265, 2274, 2278, 2287, 2298, 2307, 2319,
1648 2332, 2336, 2340, 2345, 2354, 2373, 2382, 2449, 2453, 2460,
1649 2471, 2484, 2493, 2504, 2514, 2522, 2530, 2533, 2534, 2541,
1650 2545, 2550, 2571, 2588, 2601, 2614, 2627, 2636, 2649, 2657,
1651 2664, 2670, 2676, 2682, 2697, 2760, 2765, 2769, 2776, 2783,
1652 2791, 2798, 2806, 2814, 2828, 2845
16631653 };
16641654 #endif
16651655
16691659 static const char *const yytname[] =
16701660 {
16711661 "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "SINTVAL",
1672 "UINTVAL", "FPVAL", "VOID", "BOOL", "INT8", "INT16", "INT32", "INT64",
1673 "FLOAT", "DOUBLE", "LABEL", "TYPE", "VAR_ID", "LABELSTR",
1674 "STRINGCONSTANT", "IMPLEMENTATION", "ZEROINITIALIZER", "TRUETOK",
1675 "FALSETOK", "BEGINTOK", "ENDTOK", "DECLARE", "DEFINE", "GLOBAL",
1676 "CONSTANT", "SECTION", "VOLATILE", "TO", "DOTDOTDOT", "NULL_TOK",
1677 "UNDEF", "INTERNAL", "LINKONCE", "WEAK", "APPENDING", "DLLIMPORT",
1678 "DLLEXPORT", "EXTERN_WEAK", "OPAQUE", "NOT", "EXTERNAL", "TARGET",
1679 "TRIPLE", "ENDIAN", "POINTERSIZE", "LITTLE", "BIG", "ALIGN", "DEPLIBS",
1680 "CALL", "TAIL", "ASM_TOK", "MODULE", "SIDEEFFECT", "CC_TOK", "CCC_TOK",
1681 "CSRETCC_TOK", "FASTCC_TOK", "COLDCC_TOK", "X86_STDCALLCC_TOK",
16