Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Do not use StringRef while using DebugInfo interface. | Devang Patel | 2009-11-12 | 1 | -37/+30 |
| | | | | llvm-svn: 86915 | ||||
* | Fix ctor vtable name. WIP. | Mike Stump | 2009-11-11 | 1 | -1/+1 |
| | | | | llvm-svn: 86879 | ||||
* | Push ctor vtable construction down further. WIP. | Mike Stump | 2009-11-11 | 3 | -11/+22 |
| | | | | llvm-svn: 86878 | ||||
* | Do not eagerly set stop point for arguments. This misleads the debugger in ↵ | Devang Patel | 2009-11-11 | 1 | -4/+19 |
| | | | | | | identifying beginning of function body. Instead, create new location to attach with llvm.dbg.declare. This location is only used to find the context of the variable by the code generator, and it is not used to emit line number info. llvm-svn: 86862 | ||||
* | Value initialize non-class array members in ctor's | Fariborz Jahanian | 2009-11-11 | 1 | -1/+8 |
| | | | | | | initializer list. Fixes PR5463. llvm-svn: 86849 | ||||
* | More VTT work. We now track offsets and use the ctor vtable builder | Mike Stump | 2009-11-11 | 2 | -11/+27 |
| | | | | | | interface. WIP. llvm-svn: 86793 | ||||
* | Avoid generating additional destructor(s) for initialized constructed | Fariborz Jahanian | 2009-11-11 | 1 | -0/+3 |
| | | | | | | objects. llvm-svn: 86778 | ||||
* | Stub out most of the VTT building code. WIP. | Mike Stump | 2009-11-11 | 1 | -2/+83 |
| | | | | llvm-svn: 86772 | ||||
* | Attach location info with llvm.dbg.declare. | Devang Patel | 2009-11-10 | 1 | -1/+4 |
| | | | | llvm-svn: 86750 | ||||
* | Revert r86741; it doesn't handle virtual bases correctly. | Eli Friedman | 2009-11-10 | 1 | -11/+9 |
| | | | | llvm-svn: 86745 | ||||
* | Minor optimization to skip null check in generated code where it isn't | Eli Friedman | 2009-11-10 | 1 | -9/+11 |
| | | | | | | necessary. llvm-svn: 86741 | ||||
* | Fix for PR5454: make sure to use the right block as the predecessor in the | Eli Friedman | 2009-11-10 | 1 | -0/+1 |
| | | | | | | generated PHI node for the null check of a new operator. llvm-svn: 86738 | ||||
* | This patch implements Code gen. for destruction of | Fariborz Jahanian | 2009-11-10 | 2 | -8/+68 |
| | | | | | | global array of objects. llvm-svn: 86701 | ||||
* | Only generate a VTT for classes that need a VTT. | Mike Stump | 2009-11-10 | 1 | -0/+4 |
| | | | | llvm-svn: 86699 | ||||
* | Add vtable caching to prevent multiple vtables for the same class from | Mike Stump | 2009-11-10 | 5 | -24/+41 |
| | | | | | | | | being generated. Add the most derived vtable pointer to the VTT. llvm-svn: 86671 | ||||
* | Be sure to clear out VCall when we clear out VCalls. | Mike Stump | 2009-11-10 | 2 | -0/+42 |
| | | | | | | Start implementing VTTs. WIP. llvm-svn: 86650 | ||||
* | Finish off mangling for the VTT. | Mike Stump | 2009-11-10 | 1 | -0/+8 |
| | | | | llvm-svn: 86647 | ||||
* | Add mangling for the construction vtable. | Mike Stump | 2009-11-10 | 2 | -0/+25 |
| | | | | llvm-svn: 86643 | ||||
* | Fix clang's use of DenseMap iterators after r86636 fixed their constness. | Jeffrey Yasskin | 2009-11-10 | 1 | -1/+1 |
| | | | | | | Patch by Victor Zverovich! llvm-svn: 86638 | ||||
* | Enable the use of the new llvm objectsize intrinsic. | Mike Stump | 2009-11-09 | 1 | -4/+2 |
| | | | | llvm-svn: 86607 | ||||
* | Make sure that Type::getAs<ArrayType>() (or Type::getAs<subclass of | Douglas Gregor | 2009-11-09 | 1 | -1/+1 |
| | | | | | | | ArrayType>()) does not instantiate. Update all callers that used this unsafe feature to use the appropriate ASTContext::getAs*ArrayType method. llvm-svn: 86596 | ||||
* | Rearrange function to avoid recursive use-after-free. | Eli Friedman | 2009-11-09 | 1 | -17/+18 |
| | | | | llvm-svn: 86516 | ||||
* | Explicitly note that pre-inc/dec lvalues are not supported yet, so that it | Eli Friedman | 2009-11-09 | 1 | -1/+5 |
| | | | | | | doesn't crash. (Such expressions are valid in C++, but not in C.) llvm-svn: 86513 | ||||
* | Rename areAllFields32Or64BitBasicType to canExpandIndirectArgument to closer ↵ | Daniel Dunbar | 2009-11-09 | 1 | -10/+29 |
| | | | | | | | | match what it is semantically used for. Also, fix a major bug where fields from a C++ struct might be dropped -- the expand action doesn't handle them correctly yet. llvm-svn: 86502 | ||||
* | Unify the codepaths used to verify base and member initializers for explicitly | Eli Friedman | 2009-11-09 | 1 | -58/+0 |
| | | | | | | | | | | | | | | | | and implicitly defined constructors. This has a number of benefits: 1. Less code. 2. Explicit and implicit constructors get the same diagnostics. 3. The AST explicitly contains constructor calls from implicit default constructors. This allows handing some cases that previously weren't handled correctly in IRGen without any additional code. Specifically, implicit default constructors containing calls to constructors with default arguments are now handled correctly. llvm-svn: 86500 | ||||
* | Add clarifying parens. | Daniel Dunbar | 2009-11-08 | 1 | -1/+1 |
| | | | | llvm-svn: 86457 | ||||
* | Handle member expressions where the member declaration is actually a static ↵ | Anders Carlsson | 2009-11-07 | 1 | -0/+3 |
| | | | | | | variable. Fixes PR5392. llvm-svn: 86414 | ||||
* | More LValue related code cleanup. | Anders Carlsson | 2009-11-07 | 1 | -18/+27 |
| | | | | llvm-svn: 86413 | ||||
* | More cleanup, the code is much easier to follow now. | Anders Carlsson | 2009-11-07 | 1 | -24/+11 |
| | | | | llvm-svn: 86412 | ||||
* | Reduce nesting, no functionality change. | Anders Carlsson | 2009-11-07 | 1 | -18/+20 |
| | | | | llvm-svn: 86411 | ||||
* | We only need to call SetObjCNonGC for local variables. No functionality change. | Anders Carlsson | 2009-11-07 | 1 | -3/+3 |
| | | | | llvm-svn: 86410 | ||||
* | Change EmitPointerToDataMemberLValue to take a FieldDecl. No intended ↵ | Anders Carlsson | 2009-11-07 | 2 | -5/+5 |
| | | | | | | functionality change. llvm-svn: 86407 | ||||
* | add missing #include | Chris Lattner | 2009-11-07 | 1 | -0/+1 |
| | | | | llvm-svn: 86368 | ||||
* | Always mangle functions with special names. Fixes PR5420. | Anders Carlsson | 2009-11-07 | 1 | -3/+5 |
| | | | | llvm-svn: 86350 | ||||
* | When looking up and adding substitutions to the substitution table, make ↵ | Anders Carlsson | 2009-11-07 | 1 | -0/+3 |
| | | | | | | sure to always use the canonical declaration. With tihs change, FileCheck compiles and links but crashes during startup. llvm-svn: 86339 | ||||
* | Revert r86315 and add Type::FixedWidthInt to the FIXME cases. | Anders Carlsson | 2009-11-07 | 1 | -0/+2 |
| | | | | llvm-svn: 86320 | ||||
* | Do not assert if debug info for certain type is not generated. | Devang Patel | 2009-11-07 | 1 | -1/+0 |
| | | | | llvm-svn: 86315 | ||||
* | Do not emit linkage name for global variables. It confuses gdb, because it ↵ | Devang Patel | 2009-11-07 | 1 | -1/+3 |
| | | | | | | picks up AT_MIPS_linkage_name and ignores AT_name. llvm-svn: 86308 | ||||
* | Refine the non-virtual this adjustment. Optimize out virtual this | Mike Stump | 2009-11-06 | 1 | -43/+57 |
| | | | | | | adjustments of zero. llvm-svn: 86300 | ||||
* | Prevent a code gen. crash on empty unions - pr5408. | Fariborz Jahanian | 2009-11-06 | 1 | -1/+5 |
| | | | | llvm-svn: 86287 | ||||
* | Simplify the debug info code, handle lvalue references and template ↵ | Anders Carlsson | 2009-11-06 | 2 | -13/+35 |
| | | | | | | specializations. llvm-svn: 86277 | ||||
* | This patch fixes code gen. part of pr5333 (Conversion | Fariborz Jahanian | 2009-11-06 | 1 | -1/+3 |
| | | | | | | using elipsis conversion). llvm-svn: 86276 | ||||
* | Handle QualifiedNameType and SubstTemplateTypeParmType types in ↵ | Anders Carlsson | 2009-11-06 | 1 | -0/+11 |
| | | | | | | CGDebugInfo::CreateTypeNode. llvm-svn: 86274 | ||||
* | Don't assert when trying to generate debug info for vector types. This needs ↵ | Anders Carlsson | 2009-11-06 | 1 | -0/+4 |
| | | | | | | to be fixed eventually... llvm-svn: 86268 | ||||
* | update comment, pointed out by Gabor | Chris Lattner | 2009-11-06 | 1 | -3/+1 |
| | | | | llvm-svn: 86263 | ||||
* | indirectbr seems to work! Rip out the old code. | Chris Lattner | 2009-11-06 | 5 | -140/+0 |
| | | | | llvm-svn: 86256 | ||||
* | Instead of returning a null DIType for unhandled types, assert. | Anders Carlsson | 2009-11-06 | 1 | -9/+1 |
| | | | | llvm-svn: 86254 | ||||
* | If a member variable of reference type is bound to a temporary in its member ↵ | Anders Carlsson | 2009-11-06 | 1 | -0/+5 |
| | | | | | | initializer it needs to be destroyed at the end of the constructor. llvm-svn: 86230 | ||||
* | If a member initializer create temporaries we need to destroy them. Fixes ↵ | Anders Carlsson | 2009-11-06 | 1 | -0/+7 |
| | | | | | | PR5077. llvm-svn: 86225 | ||||
* | More cleanup. | Anders Carlsson | 2009-11-06 | 1 | -73/+94 |
| | | | | llvm-svn: 86224 |