- Feb 08, 2009
-
-
Anders Carlsson authored
llvm-svn: 64052
-
Anders Carlsson authored
Add support for emitting cleanup blocks. Make EmitCompoundStatement emit cleanup blocks if necessary llvm-svn: 64051
-
Anders Carlsson authored
Add a simple RAII object, to be used for pushing a cleanup entry and make the insertion point be the cleanup block. llvm-svn: 64048
-
Anders Carlsson authored
llvm-svn: 64047
-
Mike Stump authored
correctly. This should lay the ground work to throw the big switch and start code gening break and continue in the presense of vlas. llvm-svn: 64046
-
- Feb 07, 2009
-
-
Ted Kremenek authored
llvm-svn: 64044
-
Anders Carlsson authored
llvm-svn: 64043
-
Ted Kremenek authored
For retain/release leaks, have the BugReport description indicate the allocation site and initial bindings. llvm-svn: 64041
-
Ted Kremenek authored
llvm-svn: 64039
-
Ted Kremenek authored
llvm-svn: 64038
-
Chris Lattner authored
for pointing this out! llvm-svn: 64037
-
Ted Kremenek authored
Determining the allocation site for a leak when constructing a CFRefLeakReport. This avoids repeated calls to GetAllocationSite when Profiling a CFRefLeakReport object. llvm-svn: 64036
-
Ted Kremenek authored
llvm-svn: 64034
-
Ted Kremenek authored
llvm-svn: 64033
-
Anders Carlsson authored
llvm-svn: 64032
-
Anders Carlsson authored
llvm-svn: 64031
-
Mike Stump authored
llvm-svn: 64030
-
Sebastian Redl authored
llvm-svn: 64029
-
Mike Stump authored
This will allow us to generate break and continue even if vlas are involved without worry that we'll silently generate bad code. llvm-svn: 64028
-
Sebastian Redl authored
llvm-svn: 64027
-
Mike Stump authored
llvm-svn: 64021
-
Mike Stump authored
llvm-svn: 64020
-
Sebastian Redl authored
llvm-svn: 64015
-
Mike Stump authored
llvm-svn: 64014
-
Chris Lattner authored
for pointing this out. llvm-svn: 64011
-
Chris Lattner authored
llvm-svn: 64010
-
Chris Lattner authored
Obviously I make a miserable header developer :) llvm-svn: 64009
-
Chris Lattner authored
llvm-svn: 64008
-
Chris Lattner authored
uintmax_t is unsigned long long, which is not optimal, but is assumed elsewhere already. llvm-svn: 64007
-
Chris Lattner authored
Thanks to Eli for pointing this out. llvm-svn: 64006
-
Mike Stump authored
llvm-svn: 64004
-
Daniel Dunbar authored
- Currently, this is producing poor code, but we prefer correctness to performance for now. Eventually we should be able to generally avoid having to set the alignment when we control the alignment of the alloca. - This knocks out 33/1000 failures on my single argument ABI tests, down to 22/1000 and 18 of these appear to be gcc bugs. Woot. llvm-svn: 64001
-
Ted Kremenek authored
llvm-svn: 63998
-
Ted Kremenek authored
- Made allocation of Stmt objects using vanilla new/delete a *compiler error* by making this new/delete "protected" within class Stmt. - Now the only way to allocate Stmt objects is by using the new operator that takes ASTContext& as an argument. This ensures that all Stmt nodes are allocated from the same (pool) allocator. - Naturally, these two changes required that *all* creation sites for AST nodes use new (ASTContext&). This is a large patch, but the majority of the changes are just this mechanical adjustment. - The above changes also mean that AST nodes can no longer be deallocated using 'delete'. Instead, one most do StmtObject->Destroy(ASTContext&) or do ASTContextObject.Deallocate(StmtObject) (the latter not running the 'Destroy' method). Along the way I also... - Made CompoundStmt allocate its array of Stmt* using the allocator in ASTContext (previously it used std::vector). There are a whole bunch of other Stmt classes that need to be similarly changed to ensure that all memory allocated for ASTs comes from the allocator in ASTContext. - Added a new smart pointer ExprOwningPtr to Sema.h. This replaces the uses of llvm::OwningPtr within Sema, as llvm::OwningPtr used 'delete' to free memory instead of a Stmt's 'Destroy' method. Big thanks to Doug Gregor for helping with the acrobatics of making 'new/delete' private and the new smart pointer ExprOwningPtr! llvm-svn: 63997
-
Ted Kremenek authored
GRExprEngine: When processing compound assignments, do a switch table lookup to get the non-compound opcode from the compound opcode instead of relying on the order of BinaryOperator::opcode values. This unbreaks the misc-ps.c test. llvm-svn: 63991
-
Chris Lattner authored
llvm-svn: 63990
-
Sebastian Redl authored
llvm-svn: 63987
-
Daniel Dunbar authored
non-empty. llvm-svn: 63986
-
Chris Lattner authored
long instead of int. This is because system heaers like to redefine typedefs and that is an error if they don't exactly match. Use long for intptr_t on all systems where long is the right size. llvm-svn: 63984
-
Sebastian Redl authored
llvm-svn: 63983
-