Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Prevent accidental copying of CodeGenFunction and CodeGenModule. | Anders Carlsson | 2009-02-24 | 1 | -0/+2 |
| | | | | llvm-svn: 65372 | ||||
* | Add low level support for generating invoke instead of calls. | Daniel Dunbar | 2009-02-23 | 1 | -0/+11 |
| | | | | | | - No functionality change. llvm-svn: 65325 | ||||
* | Copy some clenaups from Eli to code that I copied. :-) | Mike Stump | 2009-02-22 | 1 | -6/+1 |
| | | | | llvm-svn: 65286 | ||||
* | Cleanp code with some recent suggestions. | Mike Stump | 2009-02-22 | 1 | -5/+10 |
| | | | | llvm-svn: 65285 | ||||
* | Add CodeGen support for the helper for BlockDeclRefExprs. The easier | Mike Stump | 2009-02-21 | 1 | -4/+36 |
| | | | | | | stuff is mostly done. Move BlockHasCopyDispose up. llvm-svn: 65242 | ||||
* | Set call attribute for direct calls (i.e. noreturn). | Daniel Dunbar | 2009-02-20 | 1 | -5/+8 |
| | | | | | | - Remove an unused variant of EmitCallExpr overload. llvm-svn: 65130 | ||||
* | Deox and Capitolize. | Mike Stump | 2009-02-20 | 1 | -3/+3 |
| | | | | llvm-svn: 65093 | ||||
* | Fixup spacing a little. | Mike Stump | 2009-02-17 | 1 | -6/+6 |
| | | | | llvm-svn: 64768 | ||||
* | Support IRgen of sqrt -> llvm.sqrt, pow -> llvm.pow. | Daniel Dunbar | 2009-02-16 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | - Define pow[lf]?, sqrt[lf]? as builtins. - Add -fmath-errno option which binds to LangOptions.MathErrno - Add new builtin flag Builtin::Context::isConstWithoutErrno for functions which can be marked as const if errno isn't respected for math functions. Sema automatically marks these functions as const when they are defined, if MathErrno=0. - IRgen uses const attribute on sqrt and pow library functions to decide if it can use the llvm intrinsic. llvm-svn: 64689 | ||||
* | Use getNameAsCString instead of getNameAsString and reflow the type. | Mike Stump | 2009-02-14 | 1 | -3/+3 |
| | | | | | | Thanks Anders. llvm-svn: 64571 | ||||
* | Generate the helper function for blocks. Now basic codegen is | Mike Stump | 2009-02-14 | 1 | -5/+8 |
| | | | | | | starting to work for blocks. llvm-svn: 64570 | ||||
* | Condense all the blocks code into CGBlocks.cpp. | Mike Stump | 2009-02-13 | 1 | -0/+3 |
| | | | | llvm-svn: 64457 | ||||
* | Add CodeGen support for the nodebug attribute. | Anders Carlsson | 2009-02-13 | 1 | -0/+4 |
| | | | | llvm-svn: 64445 | ||||
* | Add a very basic implemenation of global blocks. This needs to be cleaned up. | Anders Carlsson | 2009-02-12 | 1 | -0/+12 |
| | | | | llvm-svn: 64387 | ||||
* | Add support for generating block call expressions. | Anders Carlsson | 2009-02-12 | 1 | -0/+2 |
| | | | | llvm-svn: 64346 | ||||
* | Support IRgen of va_arg of structure as l-value. | Daniel Dunbar | 2009-02-11 | 1 | -1/+3 |
| | | | | llvm-svn: 64325 | ||||
* | Remove the last remnants of the Obj-C EH stack code. | Anders Carlsson | 2009-02-10 | 1 | -76/+2 |
| | | | | llvm-svn: 64205 | ||||
* | Start removing the old Obj-C EH stack now that the cleanup stack is used ↵ | Anders Carlsson | 2009-02-10 | 1 | -28/+3 |
| | | | | | | instead. llvm-svn: 64203 | ||||
* | Add util Emit{LoadOf,StoreTo}Scalar methods to encapsulate conversion | Daniel Dunbar | 2009-02-10 | 1 | -0/+12 |
| | | | | | | | from LLVM memory type to/from LLVM temporary type. - No intended functionality change. llvm-svn: 64191 | ||||
* | Add DidCallStackSave variable to CodeGenFunction. | Anders Carlsson | 2009-02-09 | 1 | -0/+4 |
| | | | | llvm-svn: 64156 | ||||
* | Add some more documentation. Also reflowed comments to 80 col. | Mike Stump | 2009-02-08 | 1 | -226/+214 |
| | | | | llvm-svn: 64105 | ||||
* | Add a simplified EmitJumpThroughFinally and use it in CGObjC in preparation ↵ | Anders Carlsson | 2009-02-08 | 1 | -2/+3 |
| | | | | | | of making it use the cleanup stack. llvm-svn: 64098 | ||||
* | Wire up break and continue processing to the new stack depth adjuster. | Mike Stump | 2009-02-08 | 1 | -3/+19 |
| | | | | | | | | If people could beat on it and let me know if there are any new semantics required by newer language standards or DRs or any little details I goofed on, I'd be happy to fix any issues found. llvm-svn: 64079 | ||||
* | More cleanup stack work, PopCleanupBlock now returns a struct with the ↵ | Anders Carlsson | 2009-02-08 | 1 | -12/+24 |
| | | | | | | switch block and end block. llvm-svn: 64072 | ||||
* | Split some functions up | Anders Carlsson | 2009-02-08 | 1 | -3/+12 |
| | | | | llvm-svn: 64069 | ||||
* | CleanupScope needs to push the cleanup block in its destructor | Anders Carlsson | 2009-02-08 | 1 | -6/+8 |
| | | | | llvm-svn: 64068 | ||||
* | More cleanup stack work. | Anders Carlsson | 2009-02-08 | 1 | -0/+11 |
| | | | | llvm-svn: 64059 | ||||
* | When emitting blocks, keep track of which cleanup scope they have. Minor ↵ | Anders Carlsson | 2009-02-08 | 1 | -0/+11 |
| | | | | | | fixes and cleanup. llvm-svn: 64053 | ||||
* | Add support for emitting cleanup blocks. Make EmitCompoundStatement emit ↵ | Anders Carlsson | 2009-02-07 | 1 | -0/+7 |
| | | | | | | cleanup blocks if necessary llvm-svn: 64051 | ||||
* | Add a simple RAII object, to be used for pushing a cleanup entry and make ↵ | Anders Carlsson | 2009-02-07 | 1 | -0/+19 |
| | | | | | | the insertion point be the cleanup block. llvm-svn: 64048 | ||||
* | Ensure we track all the stack depths for all break and continue points | Mike Stump | 2009-02-07 | 1 | -4/+11 |
| | | | | | | | correctly. This should lay the ground work to throw the big switch and start code gening break and continue in the presense of vlas. llvm-svn: 64046 | ||||
* | Add plumbing for the cleanup stack. | Anders Carlsson | 2009-02-07 | 1 | -0/+22 |
| | | | | llvm-svn: 64043 | ||||
* | Split the exception object out into its own stack. | Anders Carlsson | 2009-02-07 | 1 | -5/+5 |
| | | | | llvm-svn: 64032 | ||||
* | Simplify the Objective-C exception handling. | Anders Carlsson | 2009-02-07 | 1 | -7/+2 |
| | | | | llvm-svn: 64031 | ||||
* | Arrange to have the correct StackDepth for while statements. | Mike Stump | 2009-02-07 | 1 | -1/+4 |
| | | | | llvm-svn: 64021 | ||||
* | Fixup goto codegen in and around VLAs. | Mike Stump | 2009-02-07 | 1 | -5/+32 |
| | | | | llvm-svn: 64014 | ||||
* | Pull CodeGenFunction::GetUndefRValue() out of EmitUnsupportedRValue. | Daniel Dunbar | 2009-02-05 | 1 | -0/+3 |
| | | | | llvm-svn: 63845 | ||||
* | Add CodeGenFunction::ConvertTypeForMem forwarding function. | Daniel Dunbar | 2009-02-03 | 1 | -0/+1 |
| | | | | llvm-svn: 63678 | ||||
* | ir-gen for nonfragile ivar bitfield access (objc2 nonfragile abi). | Fariborz Jahanian | 2009-02-03 | 1 | -1/+1 |
| | | | | llvm-svn: 63644 | ||||
* | Targets that don't have stack use global address space for parameters. | Sanjiv Gupta | 2009-02-03 | 1 | -3/+5 |
| | | | | | | | Specify external linkage for such globals so that llvm optimizer do not assume there values initialized as zero. llvm-svn: 63636 | ||||
* | Fixed the typo in comment. | Sanjiv Gupta | 2009-02-03 | 1 | -1/+1 |
| | | | | llvm-svn: 63634 | ||||
* | objc2's ir-gen for nonfragile ivar access. | Fariborz Jahanian | 2009-02-03 | 1 | -1/+6 |
| | | | | llvm-svn: 63578 | ||||
* | More ABI API cleanup. | Daniel Dunbar | 2009-02-02 | 1 | -5/+6 |
| | | | | | | | - Lift CGFunctionInfo creation above ReturnTypeUsesSret and EmitFunction{Epi,Pro}log. llvm-svn: 63553 | ||||
* | ABI handling API changes. | Daniel Dunbar | 2009-02-02 | 1 | -1/+2 |
| | | | | | | | | | | | - Lift CGFunctionInfo creation up to callers of EmitCall. - Move isVariadic bit out of CGFunctionInfo, take as argument to GetFunctionType instead. No functionality change. llvm-svn: 63550 | ||||
* | Pull EmitReturnBlock out of FinishFunction and catch unified return | Daniel Dunbar | 2009-01-26 | 1 | -0/+4 |
| | | | | | | case correctly. llvm-svn: 63068 | ||||
* | Slight cleanup, and fix for va_arg on architectures where va_list is a | Eli Friedman | 2009-01-20 | 1 | -0/+5 |
| | | | | | | struct. llvm-svn: 62585 | ||||
* | Forgot to commit this | Anders Carlsson | 2009-01-11 | 1 | -0/+5 |
| | | | | llvm-svn: 62042 | ||||
* | This patch fixes the code gen failures which was a fallout from | Fariborz Jahanian | 2009-01-10 | 1 | -1/+3 |
| | | | | | | | | not merging protocol properties into the classes which use those protocols. With this patch, all my exceutable test pass again. llvm-svn: 62030 | ||||
* | Give "unsupported" error on calls through block pointers instead of | Daniel Dunbar | 2009-01-09 | 1 | -0/+6 |
| | | | | | | crashes. llvm-svn: 61992 | ||||
* | Change EmitVLASize to take a QualType that must be a variably modified type. | Anders Carlsson | 2008-12-20 | 1 | -3/+4 |
| | | | | | | | | | | | | Emit the size even if the declared type is a variably modified type. This lets us handle void f(int n) { int (*a)[n]; printf("size: %d\n", sizeof(*a)); } llvm-svn: 61285 |