| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | PR3247: Handle a couple of cases where we weren't emitting VLA sizes (and | Eli Friedman | 2009-04-20 | 1 | -0/+4 |
| | | | | | | | subsequently crashed). llvm-svn: 69567 | ||||
| * | PR3853: Add CodeGen support for __thread. | Eli Friedman | 2009-04-19 | 1 | -6/+3 |
| | | | | | llvm-svn: 69545 | ||||
| * | Audit __private_extern__ handling. | Daniel Dunbar | 2009-04-14 | 1 | -6/+7 |
| | | | | | | | | | | | | | | | - Exposed quite a few Sema issues and a CodeGen crash. - See FIXMEs in test case, and in SemaDecl.cpp (PR3983). I'm skeptical that __private_extern__ should actually be a storage class value. I think that __private_extern__ basically amounts to extern A __attribute__((visibility("hidden"))) and would be better off handled (a) as that, or (b) with an extra bit in the VarDecl. llvm-svn: 69020 | ||||
| * | Update to use hasAttr() instead of getAttr(). | Daniel Dunbar | 2009-04-13 | 1 | -3/+3 |
| | | | | | | | - No functionality change. llvm-svn: 68987 | ||||
| * | Make messages consistent. | Chris Lattner | 2009-04-10 | 1 | -1/+1 |
| | | | | | llvm-svn: 68756 | ||||
| * | reject codegen of __thread variables as unimplemented, rdar://6775265 | Chris Lattner | 2009-04-10 | 1 | -0/+4 |
| | | | | | llvm-svn: 68755 | ||||
| * | Add a destination type argument to EmitConstantExpr. This will be used for ↵ | Anders Carlsson | 2009-04-08 | 1 | -1/+1 |
| | | | | | | | when the destination has a reference type. (No functionality change yet) llvm-svn: 68593 | ||||
| * | Don't use static globals for params as it confuses the optimzer that their ↵ | Sanjiv Gupta | 2009-04-02 | 1 | -6/+0 |
| | | | | | | | values are never being used in the function. llvm-svn: 68328 | ||||
| * | When compiling C++ code, always mangle the names of static block var decls. | Anders Carlsson | 2009-04-02 | 1 | -10/+16 |
| | | | | | llvm-svn: 68280 | ||||
| * | Code gen does not yet supports __asm__ on a variable | Fariborz Jahanian | 2009-03-30 | 1 | -0/+3 |
| | | | | | | | declaration. Reject it. llvm-svn: 68058 | ||||
| * | don't set the name of a call instruction to "call" in release-asserts | Chris Lattner | 2009-03-22 | 1 | -1/+1 |
| | | | | | | | build. This shaves another 3% off. llvm-svn: 67460 | ||||
| * | fix CreateTempAlloca to not set a name on the alloca for temporaries | Chris Lattner | 2009-03-22 | 1 | -3/+5 |
| | | | | | | | | | | in release-assert builds. For automatic variables, explicitly set a name with setName that does not make a temporary std::string. This speeds up -emit-llvm-only -disable-free on PR3810 by 4.6% llvm-svn: 67459 | ||||
| * | Fixup codegen for nested block literals so that we generate | Mike Stump | 2009-03-21 | 1 | -2/+0 |
| | | | | | | | copy_helpers and dispose_helpers as necessary for them. llvm-svn: 67453 | ||||
| * | Fix codegen for support for super inside block literal expressions. | Mike Stump | 2009-03-20 | 1 | -4/+0 |
| | | | | | llvm-svn: 67406 | ||||
| * | Mangle param names with .arg. only. | Sanjiv Gupta | 2009-03-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 66343 | ||||
| * | Remove some FIXMEs for block literals that should be close to working. | Mike Stump | 2009-03-07 | 1 | -2/+5 |
| | | | | | llvm-svn: 66322 | ||||
| * | Complete __Block_byref_id_object_copy cogegen for block literals. | Mike Stump | 2009-03-06 | 1 | -1/+2 |
| | | | | | llvm-svn: 66257 | ||||
| * | Finish off __Block_byref_id_object_dispose codegen for block literals. | Mike Stump | 2009-03-06 | 1 | -5/+7 |
| | | | | | llvm-svn: 66247 | ||||
| * | Remove extra arg. | Mike Stump | 2009-03-06 | 1 | -1/+1 |
| | | | | | llvm-svn: 66243 | ||||
| * | More codegen support for the copy/dispose helpers for block literals. | Mike Stump | 2009-03-06 | 1 | -2/+2 |
| | | | | | llvm-svn: 66241 | ||||
| * | Framework for codegen for copy/dispose helpers. | Mike Stump | 2009-03-06 | 1 | -2/+2 |
| | | | | | llvm-svn: 66231 | ||||
| * | Don't mangle names of local variables. | Daniel Dunbar | 2009-03-05 | 1 | -2/+2 |
| | | | | | | | | | - For one thing, this adds unneeded overhead; for another, this routine can be used to emit unnamed decls which we shouldn't try to mangle. llvm-svn: 66212 | ||||
| * | prep work for copy/destroy helpers for block literals. | Mike Stump | 2009-03-05 | 1 | -2/+9 |
| | | | | | llvm-svn: 66159 | ||||
| * | Avoid dispose calls when only doing gc. | Mike Stump | 2009-03-05 | 1 | -1/+1 |
| | | | | | llvm-svn: 66126 | ||||
| * | Add codegen support for __block variables to call _Block_object_dispose as ↵ | Mike Stump | 2009-03-05 | 1 | -0/+7 |
| | | | | | | | necessary. llvm-svn: 66117 | ||||
| * | Continuation of PR3687: fix more places to use the right type for | Eli Friedman | 2009-03-04 | 1 | -5/+5 |
| | | | | | | | booleans. llvm-svn: 66012 | ||||
| * | Comment fix: change a question to an answer. | Eli Friedman | 2009-03-04 | 1 | -5/+3 |
| | | | | | llvm-svn: 66010 | ||||
| * | Improved ABI compliance for __block variables. No testcases yet as we | Mike Stump | 2009-03-04 | 1 | -5/+106 |
| | | | | | | | | still give an unsupported error for them due to the fact this is a work in progress. llvm-svn: 66007 | ||||
| * | First cut CodeGen support for __block variables. | Mike Stump | 2009-02-28 | 1 | -0/+4 |
| | | | | | llvm-svn: 65688 | ||||
| * | Allow constant initializers to reference their defining decl. | Daniel Dunbar | 2009-02-25 | 1 | -0/+9 |
| | | | | | | | - PR3662. llvm-svn: 65472 | ||||
| * | Fold GeneraticStaticBlockVarDecl into callers. | Daniel Dunbar | 2009-02-25 | 1 | -26/+14 |
| | | | | | | | - No functionality change. llvm-svn: 65470 | ||||
| * | Pull COdeGenFunction::CreateStaticBlockVarDecl (just for creating the | Daniel Dunbar | 2009-02-25 | 1 | -31/+59 |
| | | | | | | | | | global variable) out of GenerateStaticBlockVarDecl. - No intended functionality change. - Prep for some mild cleanups and PR3662. llvm-svn: 65466 | ||||
| * | Last part of PR3254: use the same alignment computation in Sema and | Eli Friedman | 2009-02-22 | 1 | -4/+1 |
| | | | | | | | | CodeGen. I'm not sure whether this actually makes any visible difference, but it's better to be consistent anyway. llvm-svn: 65259 | ||||
| * | Fix spacing. | Mike Stump | 2009-02-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 65089 | ||||
| * | Address Chris's comments regarding C++ name mangling. | Douglas Gregor | 2009-02-18 | 1 | -2/+2 |
| | | | | | llvm-svn: 64984 | ||||
| * | Change EmitConstantExpr to allow failure. | Daniel Dunbar | 2009-02-17 | 1 | -6/+11 |
| | | | | | | | | | | | | | | | IRgen no longer relies on isConstantInitializer, instead we just try to emit the constant. If that fails then in C we emit an error unsupported (this occurs when Sema accepted something that it doesn't know how to fold, and IRgen doesn't know how to emit) and in C++ we emit a guarded initializer. This ends up handling a few more cases, because IRgen was actually able to emit some of the constants Sema accepts but can't Evaluate(). For example, PR3398. llvm-svn: 64780 | ||||
| * | Set constant bit on static block vars as well. Patch by Anders Johnson!q | Daniel Dunbar | 2009-02-13 | 1 | -1/+1 |
| | | | | | llvm-svn: 64502 | ||||
| * | IRgen support for attribute used. | Daniel Dunbar | 2009-02-13 | 1 | -1/+3 |
| | | | | | | | - PR3566 llvm-svn: 64492 | ||||
| * | Add CodeGen support for the nodebug attribute. | Anders Carlsson | 2009-02-13 | 1 | -3/+3 |
| | | | | | llvm-svn: 64445 | ||||
| * | Add basic support for C++ name mangling according to the Itanium C++ | Douglas Gregor | 2009-02-13 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | ABI to the CodeGen library. Since C++ code-generation is so incomplete, we can't exercise much of this mangling code. However, a few smoke tests show that it's doing the same thing as GCC. When C++ codegen matures, we'll extend the ABI tester to verify name-mangling as well, and complete the implementation here. At this point, the major client of name mangling is in the uses of the new "overloadable" attribute in C, which allows overloading. Any "overloadable" function in C (or in an extern "C" block in C++) will be mangled the same way that the corresponding C++ function would be mangled. llvm-svn: 64413 | ||||
| * | Honor attribute section on static block var decls. | Daniel Dunbar | 2009-02-12 | 1 | -0/+4 |
| | | | | | llvm-svn: 64411 | ||||
| * | Function parameters for PIC16 are like local variables. So use the keyword ↵ | Sanjiv Gupta | 2009-02-10 | 1 | -1/+1 |
| | | | | | | | ".auto." to mangle their names. The working of PIC16AsmPrinter relies on that keyword currently. llvm-svn: 64198 | ||||
| * | Use the new cleanup infrastructure for VLAs. The next iteration of patches ↵ | Anders Carlsson | 2009-02-09 | 1 | -2/+12 |
| | | | | | | | will remove the old Obj-C EH cleanup code. llvm-svn: 64161 | ||||
| * | Emit a cleanup block for the cleanup attribute | Anders Carlsson | 2009-02-07 | 1 | -0/+16 |
| | | | | | llvm-svn: 64052 | ||||
| * | Fixup goto codegen in and around VLAs. | Mike Stump | 2009-02-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 64014 | ||||
| * | Follow Eli's advice and store the VLA size with the native size_t type. ↵ | Anders Carlsson | 2009-02-05 | 1 | -0/+3 |
| | | | | | | | Fixes PR3491. llvm-svn: 63879 | ||||
| * | Targets that don't have stack use global address space for parameters. | Sanjiv Gupta | 2009-02-03 | 1 | -5/+15 |
| | | | | | | | | Specify external linkage for such globals so that llvm optimizer do not assume there values initialized as zero. llvm-svn: 63636 | ||||
| * | Rename Expr::isConstantExpr to Expr::isConstantInitializer; this more | Eli Friedman | 2009-01-25 | 1 | -1/+1 |
| | | | | | | | | | accurately states what the function is trying to do and how it is different from Expr::isEvaluatable. Also get rid of a parameter that is both unused and inaccurate. llvm-svn: 62951 | ||||
| * | more SourceLocation lexicon change: instead of referring to the | Chris Lattner | 2009-01-16 | 1 | -1/+2 |
| | | | | | | | "logical" location, refer to the "instantiation" location. llvm-svn: 62316 | ||||
| * | Make VLAs usable, and make basic usage work correctly. Also, add a | Eli Friedman | 2008-12-20 | 1 | -10/+2 |
| | | | | | | | | | | | simple test that actually does VLA codegen. Note that despite the fact that the alloca isn't in the entry block, it should dominate all uses; this is guaranteed by the restrictions on goto into VLA scope in C99. llvm-svn: 61291 | ||||

