summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Generate correct code for __builtin_huge_valAnders Carlsson2008-02-011-1/+1
| | | | llvm-svn: 46639
* getPrimaryDecl can return null.Anders Carlsson2008-02-011-1/+1
| | | | llvm-svn: 46638
* It is allowed to get the address of an array subscript, even if the array ↵Anders Carlsson2008-02-012-10/+21
| | | | | | has the register qualifier, if the array is really a pointer. llvm-svn: 46634
* make some diagnostics more terse, update testcases.Chris Lattner2008-02-015-18/+17
| | | | | | | | | | Fix Sema::ActOnInstanceMessage to correctly do things in terms of canonical types, fixing bogus errors like: NSDistantObject.m:10383:120: error: bad receiver type 'typeof((id<NSMutableCopying>)self)' id mess = ({ id __inv__ = ((void *)0); id __mb__ = _NSMessageBuilder((id <NSMutableCopying>)self, &__inv__); (void)[(__typeof__((id <NSMutableCopying>)self))__mb__ mutableCopyWithZone:((void *)0)]; if (!objc_collecting_enabled()) object_dispose(__mb__); __inv__; }); llvm-svn: 46633
* Sema::ActOnInstanceMessage is generally doing bad things with typedefs, butChris Lattner2008-02-011-8/+9
| | | | | | | | here I fix just one. The loop that rips through pointers should use getAsPointerType() not static_cast<PointerType*> to get the pointee. This fixes a crash on a large testcase. llvm-svn: 46632
* Added back 'CodeGen' to test suite (accidentally removed in my last patch).Ted Kremenek2008-02-011-1/+1
| | | | llvm-svn: 46631
* Implemented casts for ConcreteInt and ConcreteIntLValue.Ted Kremenek2008-02-014-15/+89
| | | | | | Implemented '==' and '!=' for ConcreteIntLValue. llvm-svn: 46630
* Fix PR1969. stdin has no FileEntry.Chris Lattner2008-02-012-8/+11
| | | | llvm-svn: 46629
* Implement __builtin_huge_val.Anders Carlsson2008-02-012-0/+2
| | | | llvm-svn: 46627
* Don't try to compile .a files.Anders Carlsson2008-01-311-2/+3
| | | | llvm-svn: 46626
* Added skeleton for new LValue class ConcereteIntLValue.Ted Kremenek2008-01-311-44/+83
| | | | llvm-svn: 46624
* add some helper methods for removing and replacing text, this makes theChris Lattner2008-01-313-57/+67
| | | | | | rewriter more robust. llvm-svn: 46622
* Add a new InsertText method that does the check to see if the insertion was ↵Chris Lattner2008-01-311-34/+40
| | | | | | | | | valid. This fixes crashes where the insertion point was in a macro. Instead of crashing, we want to emit a warning. llvm-svn: 46621
* move a large method out of lineChris Lattner2008-01-311-82/+86
| | | | llvm-svn: 46620
* Make rewriter::inserttext return a bool to indicate if it failed.Chris Lattner2008-01-314-57/+30
| | | | | | | Add a RewriteTest::ReplaceStmt method to factor the 'checking for rewrite failed + emitting diagnostic if so' code. llvm-svn: 46619
* Moved RValue code in GRConstants.cpp to RValue.[h,cpp].Ted Kremenek2008-01-314-726/+836
| | | | | | Moved ValueKey/ValueMap declaration to ValueState.h. llvm-svn: 46618
* Fix http://llvm.org/bugs/show_bug.cgi?id=1967.Steve Naroff2008-01-311-3/+1
| | | | llvm-svn: 46616
* Implement review feedback. Use getAsPointerType instead of cast<PointerType>.Lauro Ramos Venancio2008-01-311-2/+2
| | | | llvm-svn: 46613
* Fixed misspelling of "LLVM" due to some editor+Ted madness.Ted Kremenek2008-01-311-1/+1
| | | | llvm-svn: 46604
* Fix PR1965: missing diagnostics for parameters that are missingChris Lattner2008-01-313-1/+20
| | | | | | | type specifiers. This required updating some (buggy) tests, and the testcase was previously accidentally committed. llvm-svn: 46603
* Fix a bogus testChris Lattner2008-01-312-1/+11
| | | | llvm-svn: 46602
* Remainder of the __builtin_overload feedbackNate Begeman2008-01-315-23/+48
| | | | llvm-svn: 46601
* Fix a rewriter crash when the whole body of a foreach is itself Chris Lattner2008-01-312-8/+22
| | | | | | | rewritten, as in Sema/rewrite-foreach-6.m. Fariborz/Steve, please review this to see if it is sane. llvm-svn: 46600
* Fix PR1921 by promoting negative indices to intptrty.Chris Lattner2008-01-312-2/+20
| | | | llvm-svn: 46599
* Added transfer function support for unary '&' and '*', providing basicTed Kremenek2008-01-311-3/+16
| | | | | | | | | | (local) aliasing support. Modified ExplodedGraph pretty-printer (for GRConstants) to also print out the pointer value of the state associated with a node. This way one can easily see that two states are identical. llvm-svn: 46595
* Make CallExpr::isBuiltinConstantExpr slightly more efficient.Anders Carlsson2008-01-311-3/+10
| | | | llvm-svn: 46594
* Add support for CallExpr::isBuiltinConstantExpr(). For now, this hook is ↵Steve Naroff2008-01-312-0/+23
| | | | | | | | | | | | | | used to support CFConstantStrings. Can be extended to support other built-in functions. This allows the following code to compile without error... #include <CoreFoundation/CoreFoundation.h> #define CONST_STRING_DECL(S, V) const CFStringRef S = (const CFStringRef)__builtin___CFStringMakeConstantString(V); CONST_STRING_DECL(kCFTimeZoneSystemTimeZoneDidChangeNotification, "kCFTimeZoneSystemTimeZoneDidChangeNotification") llvm-svn: 46592
* Added 'SymbolicLValue' class to represent LValues whose value is symbolic.Ted Kremenek2008-01-311-15/+44
| | | | | | | Improved pretty-printing of LValues. Parameters whose values are pointers/references are now assigned SymbolicLValues. llvm-svn: 46584
* Hack Sema::MergeTypeDefDecl() to silently ignore duplicate typedef's in ↵Steve Naroff2008-01-301-0/+20
| | | | | | | | system headers files. A bizarre, non-standard hook that many compilers appear to implement (sigh:-). llvm-svn: 46583
* We now delay adding nodes created by GRBranchNodeBuilder to the analysisTed Kremenek2008-01-303-1/+19
| | | | | | | worklist until the dstor of GRBranchNodeBuilderImpl. This way clients can mark creates nodes as "sinks" before they are added to the worklist. llvm-svn: 46582
* Implemented some branch pruning in GRConstants using != and == forTed Kremenek2008-01-304-22/+154
| | | | | | constant integers. llvm-svn: 46581
* Added method "printTerminator" to CFGBlock so that external clients canTed Kremenek2008-01-302-12/+15
| | | | | | | | | | pretty-print a block's terminator. When building CFGs, for IfStmts ('if'), we no longer add the ParenExpr that is the subexpression of the IfStmt to the CFG; instead we add its first descendant subexpression that is not a ParenExpr. llvm-svn: 46580
* Fix test case and add a FIXME.Steve Naroff2008-01-301-1/+2
| | | | llvm-svn: 46577
* getLLVMFieldNo can't be called before emitting the base value.Lauro Ramos Venancio2008-01-302-1/+11
| | | | llvm-svn: 46576
* A pointer to an opaque type is an "opaque type definition".Lauro Ramos Venancio2008-01-302-2/+19
| | | | llvm-svn: 46575
* On an unexpected @foo keyword, return failure instead of a 'successful' null ↵Chris Lattner2008-01-301-3/+1
| | | | | | | | AST. This fixes a segfault on things like @foo. llvm-svn: 46574
* Implement first round of feedback on __builtin_overloadNate Begeman2008-01-307-29/+82
| | | | llvm-svn: 46572
* Typo.Fariborz Jahanian2008-01-301-1/+1
| | | | llvm-svn: 46570
* Abolish a bunch of Xcode inserted tabs.Steve Naroff2008-01-302-34/+34
| | | | llvm-svn: 46566
* Minor cosmetic cleanups: replaced some integer literals with constants andTed Kremenek2008-01-301-5/+7
| | | | | | more cleanups with pretty-printing of analysis results. llvm-svn: 46564
* Add TODO marker so that it is easier to search.Devang Patel2008-01-301-1/+1
| | | | llvm-svn: 46561
* Ignore __aligned__ with zero arguments in addition to __aligned__ with Eli Friedman2008-01-301-3/+6
| | | | | | one argument. Lets stuff using pthread.h compile. llvm-svn: 46559
* Fixed misc. issues raised by Chris L. on @synchronized implementation.Fariborz Jahanian2008-01-303-13/+20
| | | | llvm-svn: 46558
* Fix codegen for conditionals with incommpatible pointer types. Code Eli Friedman2008-01-302-1/+11
| | | | | | | that causes this isn't really correct, but if we're going to accept this, it should come up with a consistent AST. llvm-svn: 46557
* fix a problem reported by Eli, caused by not keeping bool as i1 Chris Lattner2008-01-302-2/+14
| | | | | | when in a register. llvm-svn: 46552
* make this pass by adding an expected error, add some tests.Chris Lattner2008-01-301-1/+10
| | | | llvm-svn: 46551
* Eli points out this can only happen for scalar elements.Chris Lattner2008-01-301-2/+3
| | | | llvm-svn: 46550
* Be more explicit about what flavors of initlistexpr's we can see. I don'tChris Lattner2008-01-301-1/+18
| | | | | | | know if all of this is exactly right, but it seems like the right thing to aim for. Steve, please review. llvm-svn: 46549
* move some constructors out of line and fix indentation in ↵Chris Lattner2008-01-303-52/+53
| | | | | | ObjCAtThrowStmt::getSourceRange. llvm-svn: 46547
* Make sure to emit all the arguments to a function call. This fixes the Eli Friedman2008-01-304-14/+13
| | | | | | | codegen of calls to functions without a prototype and varargs functions, including printf. llvm-svn: 46543
OpenPOWER on IntegriCloud