- Nov 13, 2009
-
-
Daniel Dunbar authored
llvm-svn: 87087
-
Anders Carlsson authored
Add a special BuildVirtualCall that's going to be used for building calls to destructors. This is needed because when compiling: struct A { virtual ~A(); }; void f(A* a) { delete a; } A's deleting destructor should be called. llvm-svn: 87083
-
- Nov 10, 2009
-
-
Fariborz Jahanian authored
global array of objects. llvm-svn: 86701
-
Mike Stump authored
being generated. Add the most derived vtable pointer to the VTT. llvm-svn: 86671
-
Mike Stump authored
Start implementing VTTs. WIP. llvm-svn: 86650
-
- Nov 07, 2009
-
-
Anders Carlsson authored
llvm-svn: 86407
-
- Nov 06, 2009
-
-
Chris Lattner authored
llvm-svn: 86256
-
- Nov 04, 2009
-
-
Fariborz Jahanian authored
of array objects on block exit. Patch is by Anders Calrsson. llvm-svn: 86032
-
Mike Stump authored
type to look at the volatile specifier. I found these all from just hand auditing the code. llvm-svn: 85967
-
- Nov 03, 2009
-
-
Mike Stump authored
llvm-svn: 85905
-
- Oct 30, 2009
-
-
Anders Carlsson authored
llvm-svn: 85560
-
- Oct 29, 2009
-
-
Chris Lattner authored
llvm-svn: 85453
-
Chris Lattner authored
using the new LLVM support for this. This is temporarily hiding behind horrible and ugly #ifdefs until the time when the optimizer is stable (hopefully a week or so). Until then, lets make it "opt in" :) llvm-svn: 85446
-
- Oct 23, 2009
-
-
Douglas Gregor authored
qualified reference to a declaration that is not a non-static data member or non-static member function, e.g., namespace N { int i; } int j = N::i; Instead, extend DeclRefExpr to optionally store the qualifier. Most clients won't see or care about the difference (since QualifierDeclRefExpr inherited DeclRefExpr). However, this reduces the number of top-level expression types that clients need to cope with, brings the implementation of DeclRefExpr into line with MemberExpr, and simplifies and unifies our handling of declaration references. Extended DeclRefExpr to (optionally) store explicitly-specified template arguments. This occurs when naming a declaration via a template-id (which will be stored in a TemplateIdRefExpr) that, following template argument deduction and (possibly) overload resolution, is replaced with a DeclRefExpr that refers to a template specialization but maintains the template arguments as written. llvm-svn: 84962
-
Fariborz Jahanian authored
both scalar and aggregates. llvm-svn: 84910
-
- Oct 21, 2009
-
-
Fariborz Jahanian authored
llvm-svn: 84771
-
Mike Stump authored
generate the debug information for the first parameter to the block invoke functions. WIP. llvm-svn: 84737
-
Fariborz Jahanian authored
as argument to a function call. Removes a FIXME. llvm-svn: 84694
-
- Oct 19, 2009
-
-
Daniel Dunbar authored
llvm-svn: 84456
-
- Oct 13, 2009
-
-
Chris Lattner authored
1. CGF now has fewer bytes of state (one pointer instead of a vector). 2. The generated code is determinstic, instead of getting labels in 'map order' based on pointer addresses. 3. Clang now emits one 'indirect goto switch' for each function, instead of one for each indirect goto. This fixes an M*N = N^2 IR size issue when there are lots of address-taken labels and lots of indirect gotos. 4. This also makes the default cause do something useful, reducing the size of the jump table needed (by one). llvm-svn: 83952
-
- Oct 07, 2009
-
-
Anders Carlsson authored
Change GetAddressCXXOfBaseClass to use CXXBasePaths for calculating base class offsets. Fix the code to handle virtual bases as well. llvm-svn: 83426
-
- Oct 03, 2009
-
-
Anders Carlsson authored
llvm-svn: 83271
-
Anders Carlsson authored
llvm-svn: 83263
-
- Sep 29, 2009
-
-
Anders Carlsson authored
llvm-svn: 83041
-
- Sep 27, 2009
-
-
Anders Carlsson authored
llvm-svn: 82910
-
- Sep 24, 2009
-
-
John McCall authored
Type hierarchy. Demote 'volatile' to extended-qualifier status. Audit our use of qualifiers and fix a few places that weren't dealing with qualifiers quite right; many more remain. llvm-svn: 82705
-
- Sep 23, 2009
-
-
Anders Carlsson authored
Add a new variant of EmitCXXAggrConstructorCall that takes a Value that holds the number of elements to construct, to be used when implementing new[]. llvm-svn: 82602
-
- Sep 15, 2009
-
-
Anders Carlsson authored
llvm-svn: 81867
-
- Sep 14, 2009
-
-
Anders Carlsson authored
llvm-svn: 81759
-
Anders Carlsson authored
llvm-svn: 81738
-
- Sep 12, 2009
-
-
Anders Carlsson authored
Rename AddressCXXOfBaseClass to GetAddressCXXOfBaseClass. Add a NullCheckValue argument (currently unused). llvm-svn: 81606
-
Anders Carlsson authored
For __block variables, cache the LLVM types as well as which LLVM field where the variable is stored. llvm-svn: 81599
-
Mike Stump authored
llvm-svn: 81585
-
- Sep 11, 2009
-
-
Anders Carlsson authored
llvm-svn: 81485
-
- Sep 09, 2009
-
-
Anders Carlsson authored
If a cast expression needs either a conversion function or a constructor to be called, generate implicit child expressions that call them. llvm-svn: 81383
-
Mike Stump authored
llvm-svn: 81346
-
Anders Carlsson authored
llvm-svn: 81315
-
- Sep 05, 2009
-
-
Mike Stump authored
offsets better for thunk refinements. Cleanups. WIP. llvm-svn: 81067
-
- Sep 04, 2009
-
-
Mike Stump authored
vtables. Add thunk generation. WIP. llvm-svn: 81014
-
- Aug 31, 2009
-
-
Fariborz Jahanian authored
API for copying GC'able aggregates (Next runtime only). llvm-svn: 80607
-