| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Minor optimization; emit proper unsupported messages for a couple of cases. | Eli Friedman | 2009-12-25 | 1 | -2/+1 |
| | | | | | llvm-svn: 92153 | ||||
| * | Some small improvements to dead code elimination; helps a bit on | Eli Friedman | 2009-12-25 | 1 | -0/+9 |
| | | | | | | | LLVM-Code-Symbols test. llvm-svn: 92152 | ||||
| * | Pass the return value slot to all call exprs. | Anders Carlsson | 2009-12-24 | 1 | -3/+3 |
| | | | | | llvm-svn: 92145 | ||||
| * | Fill in the return value slot in CGExprAgg::VisitCallExpr. This takes us ↵ | Anders Carlsson | 2009-12-24 | 1 | -3/+5 |
| | | | | | | | halfway towards fixing PR5824. llvm-svn: 92142 | ||||
| * | Pass ReturnValueSlot to EmitCall. No functionality change yet. | Anders Carlsson | 2009-12-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 92138 | ||||
| * | Add a ReturnValueSlot class. Change the argument order in EmitCall to match ↵ | Anders Carlsson | 2009-12-24 | 1 | -2/+2 |
| | | | | | | | the other overload better. llvm-svn: 92136 | ||||
| * | simplify my previous patch. | Chris Lattner | 2009-12-23 | 1 | -9/+2 |
| | | | | | llvm-svn: 92057 | ||||
| * | fix opencl extvector element extraction on rvalues. We previously | Chris Lattner | 2009-12-23 | 1 | -8/+30 |
| | | | | | | | error_unsupported on test10 and crashed on test11. llvm-svn: 92056 | ||||
| * | Fix for PR5524: make reference binding in default argument work correctly. | Eli Friedman | 2009-12-19 | 1 | -1/+4 |
| | | | | | llvm-svn: 91733 | ||||
| * | Implement additional undefined checks for additional loads and stores. WIP. | Mike Stump | 2009-12-16 | 1 | -1/+37 |
| | | | | | llvm-svn: 91498 | ||||
| * | Fixes a code gen bug related to accessing a now | Fariborz Jahanian | 2009-12-15 | 1 | -0/+1 |
| | | | | | | | | | | non-existing 'isa' field of a non-existing struct type all related to legacy type definition for 'id' which we have dropped in clang in favor of a built-in type. (fixes radar 7470820). llvm-svn: 91455 | ||||
| * | ShouldDestroyTemporaries? I don't think so. | Anders Carlsson | 2009-12-15 | 1 | -4/+3 |
| | | | | | llvm-svn: 91450 | ||||
| * | Fix spacing. | Mike Stump | 2009-12-15 | 1 | -1/+1 |
| | | | | | llvm-svn: 91386 | ||||
| * | Ensure we preserve line information for each trap for | Mike Stump | 2009-12-15 | 1 | -1/+9 |
| | | | | | | | -fcatch-undefined-behavior if we aren't optimizing. WIP. llvm-svn: 91382 | ||||
| * | Switch codegen for -fcatch-undefined-bahavior over to __builtin_trap | Mike Stump | 2009-12-15 | 1 | -19/+13 |
| | | | | | | | instead of abort to improve codesize and codegen. llvm-svn: 91374 | ||||
| * | We have to allow one to form an address for one past the end. WIP. | Mike Stump | 2009-12-14 | 1 | -1/+1 |
| | | | | | llvm-svn: 91347 | ||||
| * | Simplifiy. | Mike Stump | 2009-12-14 | 1 | -16/+3 |
| | | | | | llvm-svn: 91324 | ||||
| * | Implement runtime checks for undefined behavior. WIP. | Mike Stump | 2009-12-12 | 1 | -0/+61 |
| | | | | | | | | | | | | | | This implements a new flag -fcatch-undefined-behavior. The flag turns on additional runtime checks for: T a[I]; a[i] abort when i < 0 or i >= I. Future stuff includes shifts by >= bitwidth amounts. llvm-svn: 91198 | ||||
| * | Move the code for converting a member pointer to a bool so that it is usable | Eli Friedman | 2009-12-11 | 1 | -0/+15 |
| | | | | | | | for logical not. llvm-svn: 91112 | ||||
| * | When extending the lifetime of a temporary, make sure to emit a branch to ↵ | Anders Carlsson | 2009-12-11 | 1 | -1/+4 |
| | | | | | | | the cleanup exit block. This fixes a broken module error in LLVMCConfigurationEmitter.cpp. llvm-svn: 91086 | ||||
| * | Code gen for ObjCIsaExpr AST used as lvalue. | Fariborz Jahanian | 2009-12-09 | 1 | -0/+2 |
| | | | | | | | (fixes radar 7457534). llvm-svn: 90995 | ||||
| * | Add cleanups for exceptional edges. WIP. | Mike Stump | 2009-12-09 | 1 | -2/+10 |
| | | | | | llvm-svn: 90940 | ||||
| * | Fix some direct checks of expressions which might be surrounded by parentheses. | Eli Friedman | 2009-12-08 | 1 | -1/+1 |
| | | | | | llvm-svn: 90825 | ||||
| * | Make the comma operator consistently call EnsureInsertPoint. | Eli Friedman | 2009-12-07 | 1 | -0/+1 |
| | | | | | llvm-svn: 90799 | ||||
| * | use new helpers to simplify code. | Chris Lattner | 2009-12-06 | 1 | -8/+4 |
| | | | | | llvm-svn: 90709 | ||||
| * | Make EmitStoreOfScalar generate a more sane representation of boolean stores. | Eli Friedman | 2009-12-01 | 1 | -6/+1 |
| | | | | | | | "Fixes" PR5645. llvm-svn: 90272 | ||||
| * | Don't pass false (default) for isVolatile parameter to CreateLoad. | Daniel Dunbar | 2009-11-29 | 1 | -2/+5 |
| | | | | | llvm-svn: 90098 | ||||
| * | Implement IRGen for MemberExpr referring to static member function. | Eli Friedman | 2009-11-26 | 1 | -17/+24 |
| | | | | | llvm-svn: 89938 | ||||
| * | Eliminate CXXConditionDeclExpr with extreme prejudice. | Douglas Gregor | 2009-11-25 | 1 | -8/+0 |
| | | | | | | | | | | | | | | | | | | All statements that involve conditions can now hold on to a separate condition declaration (a VarDecl), and will use a DeclRefExpr referring to that VarDecl for the condition expression. ForStmts now have such a VarDecl (I'd missed those in previous commits). Also, since this change reworks the Action interface for if/while/switch/for, use FullExprArg for the full expressions in those expressions, to ensure that we're emitting Note that we are (still) not generating the right cleanups for condition variables in for statements. That will be a follow-on commit. llvm-svn: 89817 | ||||
| * | Rename CleanupScope -> DelayedCleanupBlock. No functionality change. | Douglas Gregor | 2009-11-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 89769 | ||||
| * | Handle base-to-derived casts. Will land test case shortly. | Anders Carlsson | 2009-11-23 | 1 | -5/+21 |
| | | | | | llvm-svn: 89678 | ||||
| * | Clean up EmitPointerToDataMemberBinaryExpr a bit. | Eli Friedman | 2009-11-18 | 1 | -7/+5 |
| | | | | | llvm-svn: 89197 | ||||
| * | More const is always good. | Anders Carlsson | 2009-11-17 | 1 | -4/+4 |
| | | | | | llvm-svn: 89033 | ||||
| * | Implement most of dynamic_cast. WIP. | Mike Stump | 2009-11-16 | 1 | -5/+15 |
| | | | | | llvm-svn: 88901 | ||||
| * | Some minor cleanup for EmitCastLValue. | Eli Friedman | 2009-11-16 | 1 | -11/+7 |
| | | | | | llvm-svn: 88894 | ||||
| * | Implement typeid for class types. | Mike Stump | 2009-11-15 | 1 | -0/+8 |
| | | | | | llvm-svn: 88843 | ||||
| * | Handle CK_BitCast in EmitCastLValue. | Anders Carlsson | 2009-11-14 | 1 | -3/+12 |
| | | | | | llvm-svn: 88810 | ||||
| * | Handle CXXDefaultArgExprs in EmitLValue. Fixes PR5484. | Anders Carlsson | 2009-11-14 | 1 | -2/+4 |
| | | | | | llvm-svn: 88735 | ||||
| * | 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 | ||||
| * | 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 | 1 | -4/+3 |
| | | | | | | | functionality change. llvm-svn: 86407 | ||||
| * | random tidying | Chris Lattner | 2009-10-28 | 1 | -101/+104 |
| | | | | | llvm-svn: 85408 | ||||
| * | adjust for a pending LLVM change. | Chris Lattner | 2009-10-28 | 1 | -3/+3 |
| | | | | | llvm-svn: 85373 | ||||
| * | Add Code gen support for '->*' operator which fell | Fariborz Jahanian | 2009-10-26 | 1 | -1/+4 |
| | | | | | | | through the crack. llvm-svn: 85160 | ||||
| * | Eliminate QualifiedDeclRefExpr, which captured the notion of a | Douglas Gregor | 2009-10-23 | 1 | -6/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 | ||||

