summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Fix inverted logic in ParentMap::hasParent()Ted Kremenek2009-01-301-1/+1
| | | | llvm-svn: 63410
* wire up -fno-show-source-location option, patch by Alexei Svitkine!Chris Lattner2009-01-301-1/+7
| | | | llvm-svn: 63409
* Code gen. for @protocol expression in the new nonfragile abi.Fariborz Jahanian2009-01-301-4/+34
| | | | llvm-svn: 63408
* add testcase for PR3437 and r63405Chris Lattner2009-01-301-2/+4
| | | | llvm-svn: 63407
* Remove testing -use-x86_64-abi option; current implementation isDaniel Dunbar2009-01-301-7/+1
| | | | | | robust enough for general use. llvm-svn: 63406
* avoid emitting a bogus line marker for the top level #includeChris Lattner2009-01-301-1/+3
| | | | | | | | | | | | | | | | | | | | | location. We now -E a file containing "foo" into: # 1 "t.c" # 1 "t.c" 1 # 1 "<predefines>" 1 # 1 "t.c" 2 foo instead of: # 1 "t.c" # 1 "t.c" 1 # 0 "t.c" # 1 "<predefines>" 1 # 1 "t.c" 2 foo llvm-svn: 63405
* x86_64 ABI: Split small vectors which cross an eightbyte boundary. Down to ↵Daniel Dunbar2009-01-301-2/+7
| | | | | | 33/500 return type failures. llvm-svn: 63404
* Closed out a few radars that were addressed by designated initializersDouglas Gregor2009-01-301-0/+16
| | | | llvm-svn: 63398
* " Attached is a patch for TextDiagnosticPrinter that adds an optionalChris Lattner2009-01-302-6/+10
| | | | | | | | | | parameter that allows users to omit the printing of the source location on a diagnostic. So basically it would omit the "abc.c:5:1: " at the beginning of the line." Patch by Alexei Svitkine! llvm-svn: 63396
* Switch Type::isAggregateType to use the C++ definition of "aggregateDouglas Gregor2009-01-305-10/+18
| | | | | | | | type" rather than the C definition. We do this because both C99 and Clang always use "aggregate type" as "aggregate or union type", and the C++ definition includes union types. llvm-svn: 63395
* Make sure to cast the VLA size of array to the type of size_t. Fixes PR3442.Anders Carlsson2009-01-302-1/+17
| | | | llvm-svn: 63394
* Simplify/cleanup r63219 (based on Chris review).Steve Naroff2009-01-301-13/+1
| | | | llvm-svn: 63393
* fix RUN lineNuno Lopes2009-01-301-1/+1
| | | | llvm-svn: 63392
* enable test as it worksNuno Lopes2009-01-301-1/+1
| | | | llvm-svn: 63391
* enable test as it already worksNuno Lopes2009-01-301-3/+2
| | | | llvm-svn: 63390
* Add -fno-blocks support. This fixes block-no-block-def.c.Mike Stump2009-01-303-4/+13
| | | | llvm-svn: 63385
* x86_64 ABI: Implement classification for arrays.Daniel Dunbar2009-01-301-55/+101
| | | | | | | - This brings us down to an 8% failure rate on the first 500 return types tests (from 12%). llvm-svn: 63383
* Implement constant generation of ImplicitValueInitExprs.Anders Carlsson2009-01-301-1/+6
| | | | llvm-svn: 63379
* ccc: Forward -fobjc-nonfragile-abi to clang.Daniel Dunbar2009-01-302-0/+2
| | | | llvm-svn: 63378
* update for change in API.Chris Lattner2009-01-301-4/+4
| | | | llvm-svn: 63363
* Eliminated LookupCriteria, whose creation was causing a bottleneck forDouglas Gregor2009-01-3015-430/+222
| | | | | | | | | | | | | | | | | | LookupName et al. Instead, use an enum and a bool to describe its contents. Optimized the C/Objective-C path through LookupName, eliminating any unnecessarily C++isms. Simplify IdentifierResolver::iterator, removing some code and arguments that are no longer used. Eliminated LookupDeclInScope/LookupDeclInContext, moving all callers over to LookupName, LookupQualifiedName, or LookupParsedName, as appropriate. All together, I'm seeing a 0.2% speedup on Cocoa.h with PTH and -disable-free. Plus, we're down to three name-lookup routines. llvm-svn: 63354
* Use uint64_t not unsigned for type sizes/offsets.Daniel Dunbar2009-01-301-11/+11
| | | | llvm-svn: 63352
* Bug fixing involving method-list in protocol meta-dataFariborz Jahanian2009-01-301-6/+25
| | | | | | (objc2 nonfragile-abi). llvm-svn: 63351
* ccc: Add -Xclang option, rename -WA, to -Xanalyzer.Daniel Dunbar2009-01-304-5/+13
| | | | | | | | | - -Xclang always forwards to clang - -Xanalyzer replaces -WA,; it seems like the cleaner mechanism and is more readable. llvm-svn: 63349
* ccc: Mark -combine option as unsupported.Daniel Dunbar2009-01-302-5/+1
| | | | llvm-svn: 63348
* Fix a couple bugs:Ted Kremenek2009-01-308-19/+78
| | | | | | | | | | | | | | - NonLoc::MakeVal() would use sizeof(unsigned) (literally) instead of consulting ASTContext for the size (in bits) of 'int'. While it worked, it was a conflation of concepts and using ASTContext.IntTy is 100% correct. - RegionStore::getSizeInElements() no longer assumes that a VarRegion has the type "ConstantArray", and handles the case when uses use ordinary variables as if they were arrays. - Fixed ElementRegion::getRValueType() to just return the rvalue type of its "array region" in the case the array didn't have ArrayType. - All of this fixes <rdar://problem/6541136> llvm-svn: 63347
* ccc: Embrace destiny as a clang compiler driver.Daniel Dunbar2009-01-2911-52/+93
| | | | | | | | | | | | | | | | | | | | | This redoes the default mode that ccc runs in w.r.t. using clang. Now ccc defaults to always using clang for any task clang can handle. However, the following options exist to tweak this behavior: -ccc-no-clang: Don't use clang at all for compilation (still used for static analysis). -ccc-no-clang-cxx: Don't use clang for C++ and Objective-C++ inputs. -ccc-no-clang-cpp: Don't use clang as a preprocessor. -ccc-clang-archs <archs>: If present, only use clang for the given comma separated list of architectures. This only works on Darwin for now. Note that all -ccc options must be first on the command line. llvm-svn: 63346
* Fix name of -x option for C preprocessed input; it should beDaniel Dunbar2009-01-291-1/+1
| | | | | | cpp-output, not c-cpp-output. llvm-svn: 63345
* Random bug fix related to protocl metadata in categories inFariborz Jahanian2009-01-291-5/+6
| | | | | | non-fragile abi. llvm-svn: 63343
* retain/release checker: When generating summaries for CF/CG functions, allow ↵Ted Kremenek2009-01-292-6/+52
| | | | | | arguments to "escape" if they are passed to a function containing the terms "InsertValue", "SetValue", or "AddValue". This fixes <rdar://problem/6539791>. llvm-svn: 63341
* ABITest: Makefile tweaksDaniel Dunbar2009-01-292-24/+52
| | | | llvm-svn: 63330
* Set protocol linkage and visibility correctly andFariborz Jahanian2009-01-291-2/+17
| | | | | | | build protocol translation table meta-data (objc2 non-fragile abi). llvm-svn: 63329
* Make CodeGen produce an error if we come across a non-constant initializer ↵Douglas Gregor2009-01-297-11/+27
| | | | | | list that involves the GNU array-range designator extension llvm-svn: 63327
* Protocol meta-data for objc2's non-fragile abi. Fariborz Jahanian2009-01-291-21/+233
| | | | | | Lot more to do in this area. llvm-svn: 63326
* diags moved, so these casts are no longer needed.Chris Lattner2009-01-291-2/+2
| | | | llvm-svn: 63324
* Hack Sema::LookupDeclInScope() to avoid calling Sema::LookupName() when ↵Steve Naroff2009-01-292-37/+103
| | | | | | | | parsing C/ObjC. This results in a 1.7% improvement for "Cocoa.h". If we can figure out how to return a "Decl *", rather than a Sema::LookupResult(), we will likely bump the speedup from 1.7%->2.5%. I verified this, however couldn't get it to work without breaking a fair number of C++ test cases. Will discuss with Doug offline. llvm-svn: 63320
* remove two empty filesChris Lattner2009-01-292-0/+0
| | | | llvm-svn: 63319
* next round of diagnostics cleanups, moving some Chris Lattner2009-01-2912-106/+54
| | | | | | | diags around, eliminating #defines, etc. Patch by Anders Johnsen! llvm-svn: 63318
* Introduce a new expression node, ImplicitValueInitExpr, thatDouglas Gregor2009-01-2911-23/+97
| | | | | | | | | | | | | represents an implicit value-initialization of a subobject of a particular type. This replaces the (ab)use of CXXZeroValueInitExpr within initializer lists for the "holes" that occur due to the use of C99 designated initializers. The new test case is currently XFAIL'd, because CodeGen's ConstExprEmitter (in lib/CodeGen/CGExprConstant.cpp) needs to be taught to value-initialize when it sees ImplicitValueInitExprs. llvm-svn: 63317
* Clean up designated initialization of unions, so that CodeGen doesn'tDouglas Gregor2009-01-295-44/+83
| | | | | | have to try to guess which member is being initialized. llvm-svn: 63315
* Suppress a warningDouglas Gregor2009-01-291-2/+2
| | | | llvm-svn: 63310
* x86_64 ABI: Handle fields / complex components which straddleDaniel Dunbar2009-01-291-4/+15
| | | | | | | | eightbyte boundaries. - Getting harder to test now that we handle cases gcc & llvm-gcc get wrong ( { _Complex char; _Complex int; } is a good example). :) llvm-svn: 63305
* ABITest: Fix access to array test values.Daniel Dunbar2009-01-291-1/+4
| | | | llvm-svn: 63296
* x86_64 ABI: Tweak merging algorithm so that we always bail early whenDaniel Dunbar2009-01-291-2/+2
| | | | | | we see a Memory classification. llvm-svn: 63295
* ABI: When emitting calls which return an ignored argument, make sureDaniel Dunbar2009-01-291-1/+8
| | | | | | to still return an RValue of the correct type. llvm-svn: 63294
* x86_64 ABI: Implement classification for records.Daniel Dunbar2009-01-291-0/+103
| | | | | | | - This is my best initial guess at what the "spec" means, although it is not particularly clear on a number of points. Will refine through testing. llvm-svn: 63292
* ABITest: Fix test value generation for unions.Daniel Dunbar2009-01-291-1/+8
| | | | llvm-svn: 63286
* x86_64: Support cases which map to returning multiple values in LLVMDaniel Dunbar2009-01-291-4/+5
| | | | | | (e.g., _Complex double -> { double, double } return). llvm-svn: 63285
* x86_64 ABI: Classify _Complex ints as integer.Daniel Dunbar2009-01-291-1/+7
| | | | llvm-svn: 63283
* Fix -Wimplicit-function-declaration, which required some refactoring andChris Lattner2009-01-299-35/+25
| | | | | | changes in various diagnostics code. llvm-svn: 63282
OpenPOWER on IntegriCloud