summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* The element type should also be canonicalized. Add a case for VariableArrayType.Zhongxing Xu2009-12-301-1/+7
| | | | llvm-svn: 92318
* testcase for previous patch!Chris Lattner2009-12-302-4/+6
| | | | llvm-svn: 92317
* when making a decl for __builtin_fabsf() make sure toChris Lattner2009-12-301-0/+4
| | | | | | | | attach the appropriate attributes to it. I don't think this manifests as any real change though, we're still not getting the right LLVM IR attributes out of codegen. llvm-svn: 92316
* do not bother reuniquing mdnodes whose operands drop to null. DoingChris Lattner2009-12-302-12/+42
| | | | | | | | | | | so can be a huge performance issue when tearing down modules and mdnodes are not guaranteed to be unique anyway. This speeds up: $ time ~/llvm/Release/bin/clang gcc.c -w -S -g from 72 to 35s, where gcc.c is from: http://people.csail.mit.edu/smcc/projects/single-file-programs/ llvm-svn: 92315
* Fix a comment.Zhongxing Xu2009-12-301-1/+1
| | | | llvm-svn: 92314
* fix PR5917, L'x' was getting the wrong type in c++ mode. PerChris Lattner2009-12-302-2/+22
| | | | | | C++2.13.2p2: "A wide-character literal has type wchar_t" llvm-svn: 92313
* When rewriting a __block declaration, use a suitable API to get location ofFariborz Jahanian2009-12-301-1/+3
| | | | | | the declaration in the presence of an initializer macro. llvm-svn: 92312
* remove some misleading comments.Chris Lattner2009-12-301-39/+6
| | | | llvm-svn: 92311
* remove extraneous #includeChris Lattner2009-12-301-1/+0
| | | | llvm-svn: 92310
* Implement edit distance for StringRefDouglas Gregor2009-12-302-0/+47
| | | | llvm-svn: 92309
* Typo correction for type names when they appear in declarations, e.g., givenDouglas Gregor2009-12-307-3/+587
| | | | | | | | | | | | | | | | | | | | | | | | tring str2; we produce the following diagnostic + fix-it: typo.cpp:15:1: error: unknown type name 'tring'; did you mean 'string'? tring str2; ^~~~~ string To make this really useful, we'll need to introduce typo correction in many more places (wherever we do name lookup), and implement declaration-vs-expression heuristics that cope with typos better. However, for now this will handle the simple cases where we already get good "unknown type name" diagnostics. The LookupVisibleDecls functions are intended to be used by code completion as well as typo correction; that refactoring will happen later. llvm-svn: 92308
* Fix typo in commentDouglas Gregor2009-12-301-1/+1
| | | | llvm-svn: 92307
* Remove an duplicated #include.Zhongxing Xu2009-12-301-1/+0
| | | | llvm-svn: 92306
* Simplify code by using an equivalent template class.Zhongxing Xu2009-12-301-11/+2
| | | | llvm-svn: 92305
* remove some fixme'sChris Lattner2009-12-301-2/+0
| | | | llvm-svn: 92304
* fix two bogus tests that the asmparser now rejects.Chris Lattner2009-12-302-2/+2
| | | | llvm-svn: 92303
* now that instruction metadata is only parsed in one place, eliminate theChris Lattner2009-12-302-10/+12
| | | | | | | parser-global MDsOnInst vector and make ParseInstructionMetadata return its result by-ref through an argument like the entire rest of the parser. llvm-svn: 92302
* reimplement ParseOptionalInfo as ParseOptionalCommaAlign, correctlyChris Lattner2009-12-302-37/+46
| | | | | | handle the comma case for metadata. llvm-svn: 92301
* rename ParseOptionalCustomMetadata -> ParseInstructionMetadata,Chris Lattner2009-12-302-20/+11
| | | | | | | and make it non-optional. This fixes the bug where we'd accept and ignore a spurious comma after some instructions. llvm-svn: 92300
* convert 4 more instructions over.Chris Lattner2009-12-302-31/+24
| | | | llvm-svn: 92299
* add facilities to start factoring instruction metadata parsingChris Lattner2009-12-302-14/+33
| | | | | | out of each opcode's handler. Change ret over so far. llvm-svn: 92298
* reimplement insertvalue/extractvalue metadata handling to not blindly Chris Lattner2009-12-303-11/+38
| | | | | | accept invalid input. Actually add a testcase. llvm-svn: 92297
* remove two bogus calls that accepted metadata in the middle of ↵Chris Lattner2009-12-301-5/+0
| | | | | | | | insert/extract value *constant exprs*. llvm-svn: 92296
* rename NamedOrCustomMD -> MetadataVar to follow conventions of all the rest ↵Chris Lattner2009-12-303-22/+24
| | | | | | of the code. llvm-svn: 92295
* rename lltok::Metadata -> lltok::exclaim. We name tokens Chris Lattner2009-12-304-19/+15
| | | | | | after their syntactic form, not their semantic form. llvm-svn: 92294
* rename MetadataCache -> NumberedMetadata to follow the conventionChris Lattner2009-12-302-17/+18
| | | | | | | used by other things. Convert it to a vector since it is a dense numbering. llvm-svn: 92293
* rewrite ParseMDNodeVector to follow the normal patter used in the .ll parser.Chris Lattner2009-12-302-31/+40
| | | | llvm-svn: 92292
* rename ParseMDNode -> ParseMDNodeID, since it parses !42, not !{... } as ↵Chris Lattner2009-12-302-6/+6
| | | | | | you'd expect. llvm-svn: 92291
* fix parsing of mdstring values.Chris Lattner2009-12-302-7/+12
| | | | llvm-svn: 92290
* More fixes to the handling of CVR-comparisons on array types. Adds a method toChandler Carruth2009-12-303-9/+34
| | | | | | | | | | | | QualType to get CVR-qualifiers through array types, and switches the primary comparison methods to use it. This may allow simplifying some of the callers of getUnqualifiedArrayType. Also fix the normalizing of CV-qualification during template deduction to normalize through arrays and allow a more qualified deduced array type. This fixes PR5911. llvm-svn: 92289
* remove the code added in r90497. It has several major issues and no tests.Chris Lattner2009-12-302-43/+2
| | | | llvm-svn: 92288
* split t_Metadata into t_MDNode and t_MDString, eliminating some unsafe casting.Chris Lattner2009-12-302-24/+36
| | | | llvm-svn: 92287
* Add base class checks.Anders Carlsson2009-12-301-0/+11
| | | | llvm-svn: 92286
* Add more vtable tests.Anders Carlsson2009-12-301-1/+38
| | | | llvm-svn: 92285
* More RTTI cleanup, test that RTTI classes have the correct vtables.Anders Carlsson2009-12-303-54/+80
| | | | llvm-svn: 92284
* Typedefs can be redeclared. That seems like something we should record inJohn McCall2009-12-305-5/+35
| | | | | | the AST lest we run into some crazy canonicalization bug like PR5874. llvm-svn: 92283
* Test for PR5908.Eli Friedman2009-12-301-0/+7
| | | | llvm-svn: 92282
* Make sure to explicitly pass type/value dependence to Expr constructor. ThisEli Friedman2009-12-304-52/+61
| | | | | | | | caught several cases where we were not doing the right thing. I'm not completely sure all cases are being handled correctly, but this should be an improvement. llvm-svn: 92281
* factor code even more.Chris Lattner2009-12-291-26/+14
| | | | llvm-svn: 92280
* simplify some code and unbreak the build by not consuming anChris Lattner2009-12-291-10/+4
| | | | | | extra token. llvm-svn: 92279
* Match gcc and treat vector types as fundamental types.Anders Carlsson2009-12-291-9/+23
| | | | llvm-svn: 92278
* remove a really wrong parenthesis.Benjamin Kramer2009-12-291-1/+1
| | | | llvm-svn: 92277
* Handle enum types as well.Anders Carlsson2009-12-292-3/+31
| | | | llvm-svn: 92276
* clean up some really strange code.Chris Lattner2009-12-291-8/+8
| | | | llvm-svn: 92275
* Test linkage of RTTI descriptors of array types.Anders Carlsson2009-12-291-29/+61
| | | | llvm-svn: 92274
* change ParseMDString and ParseMDNode to take arguments of the right type.Chris Lattner2009-12-292-18/+27
| | | | | | | This exposed a raft of other problems, which I'll deal with in subsequent patches. llvm-svn: 92273
* switch to TrackingVH instead of WeakVH, since these can neverChris Lattner2009-12-292-13/+13
| | | | | | | be RAUW'd and go to null. This also gets us some sorely lacking type safety. llvm-svn: 92272
* Each instruction is allowed to have *multiple* different Chris Lattner2009-12-292-19/+29
| | | | | | | metadata objects on them. Though the entire compiler supports this, the asmparser didn't. llvm-svn: 92270
* Do not crash when .ll printing metadata that smells like debug info, but isn't.Chris Lattner2009-12-293-49/+33
| | | | llvm-svn: 92268
* fix indentation, fit in 80 cols.Chris Lattner2009-12-291-382/+382
| | | | llvm-svn: 92267
OpenPOWER on IntegriCloud