- Dec 20, 2008
-
-
Anders Carlsson authored
llvm-svn: 61284
-
- Dec 12, 2008
-
-
Anders Carlsson authored
llvm-svn: 60939
-
- Dec 01, 2008
-
-
Anders Carlsson authored
llvm-svn: 60324
-
- Nov 24, 2008
-
-
Chris Lattner authored
assert if the name is not an identifier. Update callers to do the right thing and avoid this method in unsafe cases. This also fixes an objc warning that was missing a space, and migrates a couple more to taking IdentifierInfo and QualTypes instead of std::strings. llvm-svn: 59936
-
- Nov 22, 2008
-
-
Anders Carlsson authored
llvm-svn: 59887
-
- Nov 17, 2008
-
-
Douglas Gregor authored
representing the names of declarations in the C family of languages. DeclarationName is used in NamedDecl to store the name of the declaration (naturally), and ObjCMethodDecl is now a NamedDecl. llvm-svn: 59441
-
- Nov 16, 2008
-
-
Chris Lattner authored
llvm-svn: 59426
-
- Nov 13, 2008
-
-
Daniel Dunbar authored
- Use dotted notation for blocks related to a particular statement type. - Use .end for landing pads. No functionality change in NDEBUG mode. :) llvm-svn: 59210
-
- Nov 12, 2008
-
-
Daniel Dunbar authored
something that is not an int. - Ignore these cases for now, added FIXME that we should also boolize them. llvm-svn: 59184
-
Daniel Dunbar authored
llvm-svn: 59129
-
Chris Lattner authored
codegen stuff like "if (!(X && Y))" llvm-svn: 59115
-
Chris Lattner authored
CodeGenFunction.cpp. Change VisitConditionalOperator to use constant fold instead of codegen'ing a constant conditional. Change ForStmt to use EmitBranchOnBoolExpr, this shrinks expr.c very slightly to 40239 lines. llvm-svn: 59113
-
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
llvm-svn: 59081
-
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
-
Daniel Dunbar authored
- Was confusing and only used in one small part of the code. llvm-svn: 59020
-
Daniel Dunbar authored
- No functionality change. llvm-svn: 59017
-
- Nov 04, 2008
-
-
Anders Carlsson authored
llvm-svn: 58681
-
- Oct 28, 2008
-
-
Daniel Dunbar authored
in the driver (this means we no longer run the verifier per function, however). llvm-svn: 58307
-
- Oct 18, 2008
-
-
Daniel Dunbar authored
for Obj-C methods. llvm-svn: 57769
-
- Oct 17, 2008
-
-
Daniel Dunbar authored
simplifies clients. Also, add assert that RegionStack is empty when the CGDebugInfo is destroyed. llvm-svn: 57684
-
- Sep 27, 2008
-
-
Daniel Dunbar authored
of the function. llvm-svn: 56752
-
- Sep 17, 2008
-
-
Daniel Dunbar authored
llvm-svn: 56291
-
- Sep 11, 2008
-
-
Anders Carlsson authored
llvm-svn: 56102
-
- Sep 10, 2008
-
-
Daniel Dunbar authored
- Factor out EmitFunction{Pro,Epi}log llvm-svn: 56031
-
Daniel Dunbar authored
StartObjCMethod. llvm-svn: 56030
-
- Sep 09, 2008
-
-
Daniel Dunbar authored
- For the time being this means our emitted code is somewhat worse, especially for aggregates. This will be fixed. llvm-svn: 56013
-
- Sep 04, 2008
-
-
Daniel Dunbar authored
llvm-svn: 55759
-
- Aug 30, 2008
-
-
Anders Carlsson authored
Add CodeGenFunction::EmitMemSetToZero and make AggExprEmitter::EmitAggregateClear use it. llvm-svn: 55573
-
- Aug 26, 2008
-
-
Daniel Dunbar authored
- Only supports simple assignment and atomic semantics are ignored. - Not quite usable yet because the methods do not actually get added to the class metadata. - Added ObjCPropertyDecl::getSetterKind (one of Assign, Copy, Retain). - Rearrange CodeGenFunction so synthesis can reuse function prolog / epilog code. llvm-svn: 55365
-
- Aug 25, 2008
-
-
Eli Friedman authored
correctly. Not a regression, but made more obvious by my recent fix which made function type compatibility checking a bit more strict. llvm-svn: 55339
-
- Aug 16, 2008
-
-
Daniel Dunbar authored
- We are beyond the point where this shows up often and when it does generating miscompiled files is bad. llvm-svn: 54836
-
- Aug 11, 2008
-
-
Daniel Dunbar authored
- Kill unnecessary #includes in .cpp files. This is an automatic sweep so some things removed are actually used, but happen to be included by a previous header. I tried to get rid of the obvious examples and this was the easiest way to trim the #includes in one fell swoop. - We now return to regularly scheduled development. llvm-svn: 54632
-
Daniel Dunbar authored
- Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h - Moved Sema::getCurMethodDecl() out of line (dependent on ObjCMethodDecl via dyn_cast). llvm-svn: 54629
-
Daniel Dunbar authored
- Remove internal uses of AST.h llvm-svn: 54628
-
- Aug 04, 2008
-
-
Daniel Dunbar authored
llvm-svn: 54322
-
Daniel Dunbar authored
- Follows emission scheme used by llvm-gcc, i.e. invent an id for each label whose address is taken and replace each indirect goto by a switch to each possible target. - Currently we emit a switch for each indirect goto instead of merging them as llvm-gcc does. llvm-svn: 54318
-
- Jul 30, 2008
-
-
Daniel Dunbar authored
- No (intended) functionality change. - Primary purpose is to clearly separate (lazy) construction of globals that are a forward declaration or tentative definition from those that are the final definition. - Lazy construction is now encapsulated in GetAddrOf{Function,GlobalVar} while final definitions are constructed in EmitGlobal{Function,Var}Definition. - External interface for dealing with globals is now limited to EmitGlobal and GetAddrOf{Function,GlobalVar}. - Also updated helper functions dealing with statics, annotations, and ctors to be private. llvm-svn: 54179
-
- Jul 26, 2008
-
-
rdar://6103124Chris Lattner authored
are important part of control flow structures. llvm-svn: 54078
-
- Jul 04, 2008
-
-
Sanjiv Gupta authored
This was broken when the GenerateCode function was splitted to use GenerateFunction. llvm-svn: 53136
-