| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add code for emitting C++ destructors. Not used yet. | Anders Carlsson | 2009-05-29 | 3 | -0/+14 |
| | | | | | llvm-svn: 72591 | ||||
| * | Create a new PrintingPolicy class, which we pass down through the AST | Douglas Gregor | 2009-05-29 | 1 | -1/+3 |
| | | | | | | | | | | printing logic to help customize the output. For now, we use this rather than a special flag to suppress the "struct" when printing "struct X" and to print the Boolean type as "bool" in C++ but "_Bool" in C. llvm-svn: 72590 | ||||
| * | Re-add a slightly more general version of the check from r72578; it is | Eli Friedman | 2009-05-29 | 1 | -0/+2 |
| | | | | | | | actually necessary in some obscure cases. llvm-svn: 72585 | ||||
| * | Oops, the testcase I was thinking of is supposed to error out. I | Mike Stump | 2009-05-29 | 1 | -2/+0 |
| | | | | | | | tried other things that might trip, but they all worked. llvm-svn: 72584 | ||||
| * | Fixup codegen for composition of vla types using a normal array type. | Mike Stump | 2009-05-29 | 1 | -0/+2 |
| | | | | | llvm-svn: 72578 | ||||
| * | Fixup the rest of the trivial cases of the codegen of volatile. If | Mike Stump | 2009-05-29 | 5 | -56/+196 |
| | | | | | | | | any body can spot codegen bugs with volatile, or knows of any in the bug database, let me know. llvm-svn: 72572 | ||||
| * | PR4281: Fix bogus CodeGen assertion. The issue is that | Eli Friedman | 2009-05-28 | 1 | -8/+5 |
| | | | | | | | | getUnqualifiedType() doesn't strip off all qualifiers for non-canonical types. llvm-svn: 72552 | ||||
| * | Not setting all the fields is confusing... | Mike Stump | 2009-05-28 | 1 | -0/+3 |
| | | | | | llvm-svn: 72506 | ||||
| * | Fix a use-of-undefined, IRgen expects the RValue for "void" to be a scalar ↵ | Daniel Dunbar | 2009-05-27 | 1 | -2/+2 |
| | | | | | | | RValue. llvm-svn: 72504 | ||||
| * | No write-barrier for initializations. | Fariborz Jahanian | 2009-05-27 | 1 | -0/+2 |
| | | | | | llvm-svn: 72492 | ||||
| * | Change a confusing variable name. | Fariborz Jahanian | 2009-05-27 | 1 | -3/+3 |
| | | | | | llvm-svn: 72491 | ||||
| * | IRgen support for calls to functions that return references to aggregate ↵ | Anders Carlsson | 2009-05-27 | 1 | -0/+5 |
| | | | | | | | exressions. llvm-svn: 72479 | ||||
| * | Fix up constant expression handling to deal with the address | Eli Friedman | 2009-05-27 | 1 | -15/+3 |
| | | | | | | | of a reference correctly. llvm-svn: 72463 | ||||
| * | Add IRGen support for local variables of reference type. | Eli Friedman | 2009-05-27 | 1 | -6/+4 |
| | | | | | llvm-svn: 72462 | ||||
| * | Add IRGen support for return statements in functions with reference | Eli Friedman | 2009-05-27 | 1 | -0/+4 |
| | | | | | | | type. llvm-svn: 72459 | ||||
| * | Handle operator call expressions where the callee is a member function. | Anders Carlsson | 2009-05-27 | 3 | -0/+27 |
| | | | | | llvm-svn: 72458 | ||||
| * | Functions that return references can be rvalues as well. | Anders Carlsson | 2009-05-27 | 2 | -0/+6 |
| | | | | | llvm-svn: 72457 | ||||
| * | Add support for emitting calls to functions that return references (as ↵ | Anders Carlsson | 2009-05-27 | 1 | -1/+10 |
| | | | | | | | lvalues only for now) llvm-svn: 72449 | ||||
| * | Fix typo. I also fixed the hard to read case differences, so that no | Mike Stump | 2009-05-27 | 1 | -3/+3 |
| | | | | | | | one else is tempted to copy the style, incorrectly. llvm-svn: 72448 | ||||
| * | Rename an EmitCallExpr function to EmitCall to make it clear that it doesn't ↵ | Anders Carlsson | 2009-05-27 | 3 | -16/+14 |
| | | | | | | | emit an expr. llvm-svn: 72446 | ||||
| * | Fixup codegen for volatile structs in the trivial cases (a a=a and a=a=a). | Mike Stump | 2009-05-26 | 4 | -23/+29 |
| | | | | | llvm-svn: 72439 | ||||
| * | Use .data() instead of &...[0]. | Daniel Dunbar | 2009-05-26 | 1 | -5/+5 |
| | | | | | | | - Just SmallVectors this time. llvm-svn: 72432 | ||||
| * | Esnure that if we have a volatile structure as the destination, that | Mike Stump | 2009-05-26 | 1 | -3/+6 |
| | | | | | | | we actually have a destination. llvm-svn: 72429 | ||||
| * | When trying to pass an argument on the stack, assume LLVM will do the right | Daniel Dunbar | 2009-05-26 | 1 | -3/+19 |
| | | | | | | | | | | | | | | thing for non-aggregate types. - Otherwise we unnecessarily pin values to the stack and currently end up triggering a backend bug in one case. - This loose cooperation with LLVM to implement the ABI is pretty ugly. - <rdar://problem/6918722> [irgen] clang miscompile of many pointer varargs on x86-64 llvm-svn: 72419 | ||||
| * | Handle the edge case of a weak function with incomplete type correctly. | Eli Friedman | 2009-05-26 | 2 | -8/+12 |
| | | | | | | | Found by code inspection; I haven't seen this in real-world code. llvm-svn: 72408 | ||||
| * | Propagate volatile for implicit property refernces. | Mike Stump | 2009-05-23 | 1 | -3/+2 |
| | | | | | llvm-svn: 72353 | ||||
| * | Propagate volatile around for property references. | Mike Stump | 2009-05-23 | 1 | -3/+2 |
| | | | | | llvm-svn: 72352 | ||||
| * | Track volatile aggregate copies better. I'm hoping someone else will decide | Mike Stump | 2009-05-23 | 2 | -4/+11 |
| | | | | | | | how to get the backend to know that the operation is volatile. llvm-svn: 72348 | ||||
| * | Fix thinko, and implement aggregate volatile reads. | Mike Stump | 2009-05-23 | 1 | -4/+9 |
| | | | | | llvm-svn: 72347 | ||||
| * | More volatile fixes. Can't testcase these yet as ultimately volatile | Mike Stump | 2009-05-23 | 2 | -3/+3 |
| | | | | | | | is still ignored. llvm-svn: 72344 | ||||
| * | Collapse a few FIXMEs together and refactor to make fixing the code easier. | Mike Stump | 2009-05-23 | 1 | -46/+31 |
| | | | | | llvm-svn: 72342 | ||||
| * | Add support for volatile RValues. | Mike Stump | 2009-05-23 | 1 | -3/+8 |
| | | | | | llvm-svn: 72341 | ||||
| * | One step to fixing up codegen for a=b, where a is a volatile struct. | Mike Stump | 2009-05-23 | 1 | -1/+13 |
| | | | | | llvm-svn: 72315 | ||||
| * | Initialize Obj-C GC attributes when emitting BlockDeclRefExprs. | Daniel Dunbar | 2009-05-23 | 1 | -1/+3 |
| | | | | | | | - Otherwise we may incorrectly miss generation of some write barriers. llvm-svn: 72313 | ||||
| * | Fix typo. | Mike Stump | 2009-05-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 72308 | ||||
| * | This patch adds support for sender-aware dispatch in Objective-C for the GNU ↵ | Fariborz Jahanian | 2009-05-22 | 1 | -6/+27 |
| | | | | | | | | | | | runtime, when compiled with -fobjc-sender-dependent-dispatch. This is used in AOP, COP, implementing object planes, and a few other things. Patch by David Chisnall. llvm-svn: 72275 | ||||
| * | Fixup codegen for __block int i; i += rhs();. Should also slightly | Mike Stump | 2009-05-22 | 1 | -4/+5 |
| | | | | | | | improve codegen in some cases. llvm-svn: 72273 | ||||
| * | x86_64 ABI: Account for sret parameters consuming an integer register. | Daniel Dunbar | 2009-05-22 | 1 | -0/+5 |
| | | | | | | | - PR4242. llvm-svn: 72268 | ||||
| * | Targets like PIC16 generate Static decls for automatic variables, emit the ↵ | Sanjiv Gupta | 2009-05-22 | 1 | -1/+4 |
| | | | | | | | appropriate debug descriptor as well in that case. llvm-svn: 72261 | ||||
| * | Set correct calling convention even if there is a bitcast in the way. | Torok Edwin | 2009-05-22 | 1 | -1/+1 |
| | | | | | | | This attempts to fix PR4239. llvm-svn: 72251 | ||||
| * | Fixup blocks codegen for { __block i; i = rhs(); }, we want the rhs | Mike Stump | 2009-05-21 | 1 | -1/+3 |
| | | | | | | | | evaluated first. This can also improve codegen just a bit as we might have another register to play with for the evaluation of the rhs. llvm-svn: 72226 | ||||
| * | Use v.data() instead of &v[0] when SmallVector v might be empty. | Jay Foad | 2009-05-21 | 4 | -6/+6 |
| | | | | | llvm-svn: 72210 | ||||
| * | Minor refactoring. Uses an existing API to lookup a class method. | Fariborz Jahanian | 2009-05-21 | 1 | -11/+3 |
| | | | | | llvm-svn: 72203 | ||||
| * | This patch provides preliminary support for non-fragile instance variables ↵ | Fariborz Jahanian | 2009-05-20 | 1 | -3/+74 |
| | | | | | | | | | | | | | on the GNU runtime. It currently requires a patches to GNU libobjc (and so is not enabled by default) which are currently being tested and reviewed by GNUstep before being pushed upstream. This patch does not allow support for synthesized ivars, but does provide the infrastructure needed for supporting them. Patch by David Chisnall llvm-svn: 72175 | ||||
| * | Handle the remaining unhandled cases in EmitReferenceBindingToExpr. | Eli Friedman | 2009-05-20 | 1 | -15/+18 |
| | | | | | | | | | It would be nice if someone could write an ObjC++ testcase for the case of passing a property returning a struct to a function taking a const reference. llvm-svn: 72159 | ||||
| * | irgen for references to complex rvales (Very important...) | Anders Carlsson | 2009-05-20 | 1 | -1/+7 |
| | | | | | llvm-svn: 72157 | ||||
| * | Create a temporary if the lvalue is a bitfield. Reported by Eli. | Anders Carlsson | 2009-05-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 72155 | ||||
| * | Add support for binding references to scalar rvalues. | Anders Carlsson | 2009-05-20 | 1 | -0/+8 |
| | | | | | llvm-svn: 72153 | ||||
| * | Bind references to lvalues correctly. | Anders Carlsson | 2009-05-20 | 1 | -0/+6 |
| | | | | | llvm-svn: 72150 | ||||
| * | Add EmitReferenceBindingToExpr. Have EmitCallArg use it for now. Doesn't ↵ | Anders Carlsson | 2009-05-20 | 4 | -1/+14 |
| | | | | | | | support anything but at least we don't crash ;) llvm-svn: 72147 | ||||

