summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix test that didn't really test anything.Francois Pichet2010-12-081-2/+2
| | | | llvm-svn: 121246
* Handle parameter attributes when tentative parsing for function/variable ↵Argyrios Kyrtzidis2010-12-082-4/+12
| | | | | | | | disambiguation. Fixes rdar://8739801. llvm-svn: 121228
* Silence an unused variable warning.Chandler Carruth2010-12-081-0/+1
| | | | llvm-svn: 121221
* Stop using clang builtins for Neon vadd[lw] and vsub[lw] intrinsics.Bob Wilson2010-12-082-50/+8
| | | | llvm-svn: 121214
* Stop using clang builtins for Neon vmlal{_n,_lane} and vmlsl{_n,_lane}.Bob Wilson2010-12-072-46/+12
| | | | llvm-svn: 121210
* Test case.John McCall2010-12-071-0/+3
| | | | llvm-svn: 121194
* Bump up property conversion earlier in the initialization process. FixesJohn McCall2010-12-072-2/+6
| | | | | | the failed compile in PR8751. llvm-svn: 121192
* Stop using a clang builtin for Neon vdup_lane intrinsics.Bob Wilson2010-12-073-13/+5
| | | | llvm-svn: 121191
* Stop using a clang builtin for Neon vmull_lane intrinsic.Bob Wilson2010-12-072-22/+6
| | | | llvm-svn: 121189
* Add a missing parameter, without which clang crashes for vqshlu_n intrinsics.Bob Wilson2010-12-071-1/+1
| | | | llvm-svn: 121188
* Implement vmull and vmull_n intrinsics without using clang builtins.Bob Wilson2010-12-071-2/+5
| | | | llvm-svn: 121174
* Implement AST import for Objective-C property implementationsDouglas Gregor2010-12-075-1/+140
| | | | | | (@synthesize and @dynamic). llvm-svn: 121159
* Cast CachedLinkage to linkage to avoid "comparison between signed and ↵Benjamin Kramer2010-12-071-5/+3
| | | | | | unsigned integer" warnings. llvm-svn: 121143
* Implement ASTImporter support for Objective-C category implementations.Douglas Gregor2010-12-073-0/+53
| | | | llvm-svn: 121139
* Fix PR8720 by printing an error message with a substring that the gcc ↵Rafael Espindola2010-12-077-4/+19
| | | | | | testsuite searches for. llvm-svn: 121137
* PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() andJay Foad2010-12-0716-69/+68
| | | | | | | | zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method trunc(), to be const and to return a new value instead of modifying the object in place. llvm-svn: 121121
* Extern the ASTImporter to import @implementation declarations.Douglas Gregor2010-12-074-3/+122
| | | | llvm-svn: 121097
* Add Neon vreinterpret intrinsics.Bob Wilson2010-12-071-0/+5
| | | | | | Radar 8681774. llvm-svn: 121089
* Make whitespace more consistent.Bob Wilson2010-12-071-3/+3
| | | | llvm-svn: 121088
* Fix enumerator not handled in switch warnings.Francois Pichet2010-12-072-4/+4
| | | | llvm-svn: 121084
* Kill FullExpr, as it was not, in fact, used anywhere in the code base.John McCall2010-12-076-159/+6
| | | | | | | I'm not opposed to the idea in concept, but there's no point in preserving abortive experiments. llvm-svn: 121083
* Use Sema::MaybeCreateExprWithCleanups() only after we've checked for a ↵Douglas Gregor2010-12-073-15/+10
| | | | | | NULL/invalid expression llvm-svn: 121081
* Fix compile error: comma at end of enumerator list.Francois Pichet2010-12-071-1/+1
| | | | llvm-svn: 121075
* Type traits intrinsic implementation: __is_base_of(T, U)Francois Pichet2010-12-0724-3/+374
| | | | | | New AST node introduced: BinaryTypeTraitExpr; to be reused for more intrinsics. llvm-svn: 121074
* Use atomic operations for libclang's object count tracking.Douglas Gregor2010-12-072-6/+8
| | | | llvm-svn: 121073
* Objective-C pointer conversions to 'id' or qualified 'id' subsumeDouglas Gregor2010-12-062-0/+14
| | | | | | | | cv-qualification conversions. More specifically, there's an implicit cv-qualification conversion (even one that drops qualifiers) when converting to 'id' or qualified 'id'. Fixes <rdar://problem/8734046>. llvm-svn: 121047
* Split out a function to do lvalue conversion on objects; this is basicallyJohn McCall2010-12-062-42/+57
| | | | | | | | | | FunctionArrayLvalueConversion but without the function/array decay. Generally this is only appropriate for use sites that know the type of the expression and thus that it can't be subject to the decays. Also make sure we do lvalue-to-rvalue on the bases of ivar references. llvm-svn: 121035
* c/objc/c++'98 are basically done, but we want '0x support.Chris Lattner2010-12-061-20/+15
| | | | | | | Add "clang indent" as a possible project, we really really need it. :) llvm-svn: 121030
* Remove a fixme which was fixed in a previous commit.Argyrios Kyrtzidis2010-12-061-2/+0
| | | | llvm-svn: 121029
* Use the unused merge() function, fixing an minor, unintended change IDouglas Gregor2010-12-061-9/+5
| | | | | | introduced in r121023. llvm-svn: 121025
* Re-implement caching for the linkage calculation of declarations.Douglas Gregor2010-12-065-65/+140
| | | | | | | | | | | | | | | | | | | | | | My previous attempt at solving the compile-time problem with many redeclarations of the same entity cached both linkage and visibility, while this patch only tackles linkage. There are several reasons for this difference: - Linkage is a language concept, and is evaluated many times during semantic analysis and codegen, while visibility is only a code-generation concept that is evaluated only once per (unique) declaration. Hence, we *must* optimize linkage calculations but don't need to optimize visibility computation. - Once we know the linkage of a declaration, subsequent redeclarations can't change that linkage. Hence, cache invalidation is far simpler than for visibility, where a later redeclaration can completely change the visibility. - We have 3 spare bits in Decl to store the linkage cache, so the cache doesn't increase the size of declarations. With the visibility+linkage cache, NamedDecl got larger. llvm-svn: 121023
* Do unary conversions on vararg arguments and *then* special-case float.John McCall2010-12-062-4/+17
| | | | | | Fixes PR8742. llvm-svn: 121022
* Use Sema's MarkDeclarationReferenced, which takes care of templates, instead ↵Argyrios Kyrtzidis2010-12-061-1/+1
| | | | | | | | of calling Decl's setUsed directly. Thanks to John for the hint! llvm-svn: 121014
* Use the source location of the parameter, when it makes sense, for ↵Argyrios Kyrtzidis2010-12-062-8/+11
| | | | | | diagnostics in HandleCleanupAttr. llvm-svn: 121013
* Revert r120808, my previous implementation of caching for the linkageDouglas Gregor2010-12-068-200/+41
| | | | | | | | | and visibility of declarations, because it was extremely messy and it increased the size of NamedDecl. An improved implementation is forthcoming. llvm-svn: 121012
* Add BlocksAttr assert on __block specificFariborz Jahanian2010-12-062-2/+6
| | | | | | routines. llvm-svn: 121007
* Un-templatetize this method. It's definition is out of line in the .cpp file,Chandler Carruth2010-12-062-56/+53
| | | | | | | | | | | | | so that's not a valid thing to do at all. Instead, switch to a ValueDecl argument, the template isn't really necessary here. When handling the types explicitly in the code, it becomes awkward to cerate the CXXBaseOrMemberInitializer object in so many places. Re-flow the code to calculate the Init expression first, and then create the initializer. If this is too gross, we can factor the init expression logic into helper functions, but it's not past my threshold yet. llvm-svn: 120997
* Rename CXXExprWithTemporaries -> ExprWithCleanups; there's no theoreticalJohn McCall2010-12-0640-138/+136
| | | | | | reason this is limited to C++, and it's certainly not limited to temporaries. llvm-svn: 120996
* __block variables require us to evaluate the RHS of an assignment beforeJohn McCall2010-12-064-5/+7
| | | | | | | | | | the LHS, or else the pointer might be invalid. This is kindof dumb, but go ahead and make sure we're doing that for l-value scalar assignment, which fixes a miscompile of obj-c++.dg/block-seq.mm. Leave a FIXME for how to solve this problem for agg __blocks. llvm-svn: 120992
* Clarify the logic for when to build an overloaded binop. In particular,John McCall2010-12-064-19/+44
| | | | | | | | | build one when either of the operands calls itself type-dependent; previously we were building when one of the operand types was dependent, which is not always the same thing and which can lead to unfortunate inconsistencies later. Fixes PR8739. llvm-svn: 120990
* Mark SVal constructors 'explicit'.Ted Kremenek2010-12-052-16/+16
| | | | llvm-svn: 120970
* Rename Environment::LookupExpr() toTed Kremenek2010-12-052-5/+12
| | | | | | | Environment::lookupExpr() and move its implementation out-of-line. llvm-svn: 120969
* Remove unused method GRState::LookupExpr().Ted Kremenek2010-12-051-4/+0
| | | | llvm-svn: 120968
* Fix a bug in the emission of __real/__imag l-values on scalar operands.John McCall2010-12-059-76/+79
| | | | | | | | | Fix a bug in the emission of complex compound assignment l-values. Introduce a method to emit an expression whose value isn't relevant. Make that method evaluate its operand as an l-value if it is one. Fixes our volatile compliance in C++. llvm-svn: 120931
* Put each test in class-layout.cpp into a separate namespace.Anders Carlsson2010-12-051-9/+15
| | | | llvm-svn: 120925
* Add a LayoutBase member function. No functionality change.Anders Carlsson2010-12-041-15/+22
| | | | llvm-svn: 120924
* Replace calls to AppendBytes with calls to AppendPadding when the bytes ↵Anders Carlsson2010-12-042-11/+7
| | | | | | appended are padding. llvm-svn: 120922
* Fix rewriter to match recent changes in property refFariborz Jahanian2010-12-043-12/+14
| | | | | | AST. llvm-svn: 120919
* Silly special case: never load when dereferencing void*.John McCall2010-12-042-13/+17
| | | | llvm-svn: 120905
* First pass at implementing the intent of ANSI C DR106.John McCall2010-12-043-4/+26
| | | | llvm-svn: 120904
OpenPOWER on IntegriCloud