- Nov 12, 2008
-
-
Daniel Dunbar authored
- EmitStmt is no longer required to finish with a current insertion point defined (i.e. it does not need to make dummy blocks). Instead, it can clear the insertion point in the builder which indicates that the current insertion point is unreachable. - CodeGenFunction provides HaveInsertPoint and EnsureInsertPoint which respectively test if there is an insert point and ensure an insertion point exists (by making a dummy block). - Clearly mark functions in CodeGenFunction which can be called with no insertion point defined. Currently this is a limited set, and EmitStmt simply EnsureInsertPoint()s before emitting subsequent IR. Remove EmitDummyBlock, which is no longer needed. Clients who haven't already cleared the insertion point (typically via EmitBranch) can do so by hand. Remove isDummyBlock, which has effectively been renamed to HaveInsertPoint. The main thrust of this change is that we no longer have create dummy blocks just to destroy them a short time later in EmitBlock in the common case that there is no unreachable code following something like a goto. Additionally, this means that we are not using the hokey condition in isDummyBlock that a block without a name is a dummy block. Guess how well that works when we never emit block names! llvm-svn: 59089
-
- Nov 11, 2008
-
-
Daniel Dunbar authored
invariants. llvm-svn: 59085
-
Daniel Dunbar authored
llvm-svn: 59081
-
Anton Korobeynikov authored
Patch by Ilya Okonsky! llvm-svn: 59080
-
Ted Kremenek authored
- Added support for ObjCForCollectionStmt - Fixed bug where expression values would be always set to uninitialized when loops were involved llvm-svn: 59076
-
Ted Kremenek authored
llvm-svn: 59075
-
Ted Kremenek authored
llvm-svn: 59073
-
Chris Lattner authored
llvm-svn: 59061
-
Chris Lattner authored
install directory" Patch by Lukasz Janyst! llvm-svn: 59059
-
Sebastian Redl authored
Introduce a single AST node SizeOfAlignOfExpr for all sizeof and alignof expressions, both of values and types. llvm-svn: 59057
-
Ted Kremenek authored
llvm-svn: 59053
-
Ted Kremenek authored
http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_7_section_2.html#//apple_ref/doc/uid/TP30001163-CH18-SW3 Need to modify GRExprEngine, LiveVariables, and UninitializedValues to understand this construct. llvm-svn: 59049
-
Sebastian Redl authored
llvm-svn: 59042
-
Daniel Dunbar authored
- Emits an unconditional branch, with extra logic to avoid generating spurious branches out of dummy blocks. llvm-svn: 59037
-
Daniel Dunbar authored
llvm-svn: 59036
-
Chris Lattner authored
the size of the -O0 output on some cases. For example, on expr.c from 176.gcc, it shrinks the .ll file from 43164 to 42835 lines, and removed references to two external symbols. llvm-svn: 59034
-
Chris Lattner authored
condition is a constant. This shrinks -O0 codegen by quite a bit on some cases. llvm-svn: 59033
-
Chris Lattner authored
llvm-svn: 59032
-
Chris Lattner authored
llvm-svn: 59031
-
Daniel Dunbar authored
Don't free AST consumer when --disable-free is set. llvm-svn: 59030
-
Chris Lattner authored
llvm-svn: 59029
-
Chris Lattner authored
llvm-svn: 59028
-
Chris Lattner authored
llvm-svn: 59027
-
Daniel Dunbar authored
llvm-svn: 59024
-
Daniel Dunbar authored
"dummy" blocks (blocks just used to make sure we have a place to dump code to). llvm-svn: 59022
-
Daniel Dunbar authored
- Was confusing and only used in one small part of the code. llvm-svn: 59020
-
Daniel Dunbar authored
llvm-svn: 59019
-
Daniel Dunbar authored
- No functionality change. llvm-svn: 59017
-
Zhongxing Xu authored
llvm-svn: 59015
-
Zhongxing Xu authored
llvm-svn: 59014
-
Daniel Dunbar authored
llvm-svn: 59013
-
- Nov 10, 2008
-
-
Douglas Gregor authored
llvm-svn: 59000
-
Steve Naroff authored
llvm-svn: 58996
-
Douglas Gregor authored
llvm-svn: 58990
-
Douglas Gregor authored
llvm-svn: 58989
-
Douglas Gregor authored
llvm-svn: 58988
-
Douglas Gregor authored
llvm-svn: 58987
-
Douglas Gregor authored
Some cleanups to the declaration/checking of overloaded operators in C++. Thanks to Sebastian for the review llvm-svn: 58986
-
Zhongxing Xu authored
llvm-svn: 58985
-
Zhongxing Xu authored
llvm-svn: 58983
-