It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.h.cvs b/lib/AsmParser/llvmAsmParser.h.cvs
new file mode 100644
index 0000000..a66060b
--- /dev/null
+++ b/lib/AsmParser/llvmAsmParser.h.cvs
@@ -0,0 +1,185 @@
+typedef union {
+  llvm::Module                           *ModuleVal;
+  llvm::Function                         *FunctionVal;
+  llvm::BasicBlock                       *BasicBlockVal;
+  llvm::TerminatorInst                   *TermInstVal;
+  llvm::Instruction                      *InstVal;
+  llvm::Constant                         *ConstVal;
+
+  const llvm::Type                       *PrimType;
+  std::list<llvm::PATypeHolder>          *TypeList;
+  llvm::PATypeHolder                     *TypeVal;
+  llvm::Value                            *ValueVal;
+  std::vector<llvm::Value*>              *ValueList;
+  llvm::ArgListType                      *ArgList;
+  llvm::TypeWithAttrs                     TypeWithAttrs;
+  llvm::TypeWithAttrsList                *TypeWithAttrsList;
+  llvm::ValueRefList                     *ValueRefList;
+
+  // Represent the RHS of PHI node
+  std::list<std::pair<llvm::Value*,
+                      llvm::BasicBlock*> > *PHIList;
+  std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
+  std::vector<llvm::Constant*>           *ConstVector;
+
+  llvm::GlobalValue::LinkageTypes         Linkage;
+  llvm::GlobalValue::VisibilityTypes      Visibility;
+  uint16_t                          ParamAttrs;
+  llvm::APInt                       *APIntVal;
+  int64_t                           SInt64Val;
+  uint64_t                          UInt64Val;
+  int                               SIntVal;
+  unsigned                          UIntVal;
+  double                            FPVal;
+  bool                              BoolVal;
+
+  std::string                      *StrVal;   // This memory must be deleted
+  llvm::ValID                       ValIDVal;
+
+  llvm::Instruction::BinaryOps      BinaryOpVal;
+  llvm::Instruction::TermOps        TermOpVal;
+  llvm::Instruction::MemoryOps      MemOpVal;
+  llvm::Instruction::CastOps        CastOpVal;
+  llvm::Instruction::OtherOps       OtherOpVal;
+  llvm::ICmpInst::Predicate         IPredicate;
+  llvm::FCmpInst::Predicate         FPredicate;
+} YYSTYPE;
+#define	ESINT64VAL	257
+#define	EUINT64VAL	258
+#define	ESAPINTVAL	259
+#define	EUAPINTVAL	260
+#define	LOCALVAL_ID	261
+#define	GLOBALVAL_ID	262
+#define	FPVAL	263
+#define	VOID	264
+#define	INTTYPE	265
+#define	FLOAT	266
+#define	DOUBLE	267
+#define	LABEL	268
+#define	TYPE	269
+#define	LOCALVAR	270
+#define	GLOBALVAR	271
+#define	LABELSTR	272
+#define	STRINGCONSTANT	273
+#define	ATSTRINGCONSTANT	274
+#define	PCTSTRINGCONSTANT	275
+#define	ZEROINITIALIZER	276
+#define	TRUETOK	277
+#define	FALSETOK	278
+#define	BEGINTOK	279
+#define	ENDTOK	280
+#define	DECLARE	281
+#define	DEFINE	282
+#define	GLOBAL	283
+#define	CONSTANT	284
+#define	SECTION	285
+#define	ALIAS	286
+#define	VOLATILE	287
+#define	THREAD_LOCAL	288
+#define	TO	289
+#define	DOTDOTDOT	290
+#define	NULL_TOK	291
+#define	UNDEF	292
+#define	INTERNAL	293
+#define	LINKONCE	294
+#define	WEAK	295
+#define	APPENDING	296
+#define	DLLIMPORT	297
+#define	DLLEXPORT	298
+#define	EXTERN_WEAK	299
+#define	OPAQUE	300
+#define	EXTERNAL	301
+#define	TARGET	302
+#define	TRIPLE	303
+#define	ALIGN	304
+#define	DEPLIBS	305
+#define	CALL	306
+#define	TAIL	307
+#define	ASM_TOK	308
+#define	MODULE	309
+#define	SIDEEFFECT	310
+#define	CC_TOK	311
+#define	CCC_TOK	312
+#define	FASTCC_TOK	313
+#define	COLDCC_TOK	314
+#define	X86_STDCALLCC_TOK	315
+#define	X86_FASTCALLCC_TOK	316
+#define	DATALAYOUT	317
+#define	RET	318
+#define	BR	319
+#define	SWITCH	320
+#define	INVOKE	321
+#define	UNWIND	322
+#define	UNREACHABLE	323
+#define	ADD	324
+#define	SUB	325
+#define	MUL	326
+#define	UDIV	327
+#define	SDIV	328
+#define	FDIV	329
+#define	UREM	330
+#define	SREM	331
+#define	FREM	332
+#define	AND	333
+#define	OR	334
+#define	XOR	335
+#define	SHL	336
+#define	LSHR	337
+#define	ASHR	338
+#define	ICMP	339
+#define	FCMP	340
+#define	EQ	341
+#define	NE	342
+#define	SLT	343
+#define	SGT	344
+#define	SLE	345
+#define	SGE	346
+#define	ULT	347
+#define	UGT	348
+#define	ULE	349
+#define	UGE	350
+#define	OEQ	351
+#define	ONE	352
+#define	OLT	353
+#define	OGT	354
+#define	OLE	355
+#define	OGE	356
+#define	ORD	357
+#define	UNO	358
+#define	UEQ	359
+#define	UNE	360
+#define	MALLOC	361
+#define	ALLOCA	362
+#define	FREE	363
+#define	LOAD	364
+#define	STORE	365
+#define	GETELEMENTPTR	366
+#define	TRUNC	367
+#define	ZEXT	368
+#define	SEXT	369
+#define	FPTRUNC	370
+#define	FPEXT	371
+#define	BITCAST	372
+#define	UITOFP	373
+#define	SITOFP	374
+#define	FPTOUI	375
+#define	FPTOSI	376
+#define	INTTOPTR	377
+#define	PTRTOINT	378
+#define	PHI_TOK	379
+#define	SELECT	380
+#define	VAARG	381
+#define	EXTRACTELEMENT	382
+#define	INSERTELEMENT	383
+#define	SHUFFLEVECTOR	384
+#define	NORETURN	385
+#define	INREG	386
+#define	SRET	387
+#define	NOUNWIND	388
+#define	NOALIAS	389
+#define	DEFAULT	390
+#define	HIDDEN	391
+#define	PROTECTED	392
+
+
+extern YYSTYPE llvmAsmlval;