Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | add a new enum type for linkage, no functionality change. | Chris Lattner | 2009-04-14 | 1 | -4/+9 | |
| | | | | llvm-svn: 69028 | |||||
* | Clean up handling of visibility. | Daniel Dunbar | 2009-04-14 | 1 | -0/+8 | |
| | | | | llvm-svn: 69027 | |||||
* | Minor work related to removing the assumption that value initialization | Eli Friedman | 2009-04-13 | 1 | -0/+5 | |
| | | | | | | implies an all-zero bit pattern. llvm-svn: 68994 | |||||
* | Add a destination type argument to EmitConstantExpr. This will be used for ↵ | Anders Carlsson | 2009-04-08 | 1 | -1/+2 | |
| | | | | | | when the destination has a reference type. (No functionality change yet) llvm-svn: 68593 | |||||
* | Emit code for linkage specifications. | Anders Carlsson | 2009-04-02 | 1 | -0/+1 | |
| | | | | llvm-svn: 68300 | |||||
* | More "prep" work for handling UTF16 CFString. | Steve Naroff | 2009-04-01 | 1 | -1/+1 | |
| | | | | | | Patch by Jean-Daniel Dupas. Thanks! llvm-svn: 68203 | |||||
* | move trivial forwarding function inline. | Chris Lattner | 2009-04-01 | 1 | -1/+4 | |
| | | | | llvm-svn: 68176 | |||||
* | Implement code generation of namespaces and add mangling tests. | Anders Carlsson | 2009-04-01 | 1 | -1/+2 | |
| | | | | llvm-svn: 68170 | |||||
* | Change UsedArray to be a vector of WeakVH to fix a dangling pointer problem ↵ | Chris Lattner | 2009-03-31 | 1 | -1/+2 | |
| | | | | | | | | that occurs when attribute(used) and asm renaming are used together. llvm-svn: 68155 | |||||
* | Do not emit debug information for variables while generating optimized code. ↵ | Devang Patel | 2009-03-27 | 1 | -0/+1 | |
| | | | | | | The llvm optimizer and code generator are not yet ready to support optimized code debugging. llvm-svn: 67876 | |||||
* | most of this is plumbing to get CompileOptions down into | Chris Lattner | 2009-03-26 | 1 | -8/+7 | |
| | | | | | | | CodeGenModule. Once there, add a new NoCommon option to it and implement -fno-common. llvm-svn: 67735 | |||||
* | switch getBuiltinLibFunction to use the new GetOrCreateLLVMFunction | Chris Lattner | 2009-03-22 | 1 | -5/+0 | |
| | | | | | | | | functionality, fixing a crash on the attached testcase. Eliminate the BuiltinFunctions cache, as it can contain dangling pointers. This fixes a bunch of valgrind errors on test/CodeGen/builtins.c llvm-svn: 67484 | |||||
* | emit aliases as the definitions fly by, don't bother deferring until | Chris Lattner | 2009-03-22 | 1 | -6/+1 | |
| | | | | | | the end of the module. llvm-svn: 67482 | |||||
* | pull "runtime globals" into the same framework as other functions/global ↵ | Chris Lattner | 2009-03-22 | 1 | -16/+15 | |
| | | | | | | | | variables. No intended functionality change. llvm-svn: 67478 | |||||
* | now that all the decl reference and creation stuff is going through two | Chris Lattner | 2009-03-21 | 1 | -7/+15 | |
| | | | | | | | very simple places, reimplement the deferred decl emission logic to not be O(N^2), fixing PR3810. llvm-svn: 67447 | |||||
* | fix a crash that could occur when a variable declaration became a | Chris Lattner | 2009-03-21 | 1 | -1/+1 | |
| | | | | | | function definition. llvm-svn: 67446 | |||||
* | simplify and cleanup global variable creation stuff to all go through one | Chris Lattner | 2009-03-21 | 1 | -2/+5 | |
| | | | | | | code path. llvm-svn: 67445 | |||||
* | simplify management of llvm::Function creation to all go through | Chris Lattner | 2009-03-21 | 1 | -12/+5 | |
| | | | | | | GetAddrOfFunction. This is simpler and more efficient. llvm-svn: 67444 | |||||
* | code cleanups, rename EmitForwardFunctionDefinition -> | Chris Lattner | 2009-03-21 | 1 | -4/+4 | |
| | | | | | | | CreateFunctionPrototypeIR, though my next patch will eliminate it entirely. llvm-svn: 67443 | |||||
* | simplify some more code. | Chris Lattner | 2009-03-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 67439 | |||||
* | simplify and comment some code better. Make BindRuntimeGlobals | Chris Lattner | 2009-03-21 | 1 | -1/+4 | |
| | | | | | | more optimistic that it will work (optimizing for the common case). llvm-svn: 67438 | |||||
* | IRgen support for alias of global variable. | Daniel Dunbar | 2009-03-19 | 1 | -1/+1 | |
| | | | | | | - PR3818. llvm-svn: 67297 | |||||
* | Backout r66408, we don't want handling of globals to rely on the | Daniel Dunbar | 2009-03-09 | 1 | -16/+13 | |
| | | | | | | | module symbol table. The root problem inspiring this was fixed in r66316 (and again in r66506). llvm-svn: 66512 | |||||
* | Be sure to never create two functions with the same name, instead arrange to | Mike Stump | 2009-03-09 | 1 | -13/+16 | |
| | | | | | | reuse the prior one. llvm-svn: 66408 | |||||
* | Some struct/class mismatch fixes, to silence MSVC warnings. | Sebastian Redl | 2009-03-07 | 1 | -1/+1 | |
| | | | | llvm-svn: 66335 | |||||
* | (LLVM svn up) Generalize RuntimeFunctions to RuntimeGlobals and add | Daniel Dunbar | 2009-03-06 | 1 | -5/+10 | |
| | | | | | | | | | | | | | | CodeGenModule::CreateRuntimeVariable. - No real functionality change; although we now assert on silly things like: -- int objc_exception_throw; void f0() { @throw(@"A"); } -- instead of accepting it. llvm-svn: 66292 | |||||
* | Move more of the blocks code up and out. | Mike Stump | 2009-03-04 | 1 | -2/+0 | |
| | | | | llvm-svn: 66046 | |||||
* | Move more of blocks codegen out of CodeGenModule and into the | Mike Stump | 2009-03-04 | 1 | -24/+1 | |
| | | | | | | | | | BlockModule. No functionality change. This should help people that don't want to know anything about blocks not be confused by the overloaded use of the term block or nor want to see all the blocks goop. llvm-svn: 66042 | |||||
* | Start the migration of more of the blocks code out of sight for most | Mike Stump | 2009-03-04 | 1 | -10/+2 | |
| | | | | | | people. De-duplicates BLOCK_NEEDS_FREE and friends. llvm-svn: 66034 | |||||
* | Improved ABI compliance for __block variables. No testcases yet as we | Mike Stump | 2009-03-04 | 1 | -0/+9 | |
| | | | | | | | still give an unsupported error for them due to the fact this is a work in progress. llvm-svn: 66007 | |||||
* | Fix PR3612. We ensure that we add builtins to the GlobalDeclMap and | Mike Stump | 2009-02-27 | 1 | -2/+2 | |
| | | | | | | | | | we ensure that things added to the module can be found even when they are not in GlobalDeclMap. The later is for increased flexibility, should someone want to do something tricky like extern "Ada" in the same module. llvm-svn: 65657 | |||||
* | first wave of fixes for @encode sema support. This is part of PR3648. | Chris Lattner | 2009-02-24 | 1 | -0/+5 | |
| | | | | | | | The big difference here is that (like string literal) @encode has array type, not pointer type. llvm-svn: 65391 | |||||
* | Prevent accidental copying of CodeGenFunction and CodeGenModule. | Anders Carlsson | 2009-02-24 | 1 | -0/+3 | |
| | | | | llvm-svn: 65372 | |||||
* | Don't emit K&R unprototyped function definitions as varargs. | Daniel Dunbar | 2009-02-19 | 1 | -1/+10 | |
| | | | | | | - <rdar://problem/6584606> clang/x86-64 - too many reg saves llvm-svn: 65032 | |||||
* | More codegen for blocks. The type of block literals should be better. | Mike Stump | 2009-02-19 | 1 | -0/+2 | |
| | | | | | | The size calculation is improved. llvm-svn: 64994 | |||||
* | Address Chris's comments regarding C++ name mangling. | Douglas Gregor | 2009-02-18 | 1 | -9/+19 | |
| | | | | llvm-svn: 64984 | |||||
* | Change EmitConstantExpr to allow failure. | Daniel Dunbar | 2009-02-17 | 1 | -0/+5 | |
| | | | | | | | | | | | | | | 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 | |||||
* | Use getNameAsCString instead of getNameAsString and reflow the type. | Mike Stump | 2009-02-14 | 1 | -1/+1 | |
| | | | | | | Thanks Anders. llvm-svn: 64571 | |||||
* | Generate the helper function for blocks. Now basic codegen is | Mike Stump | 2009-02-14 | 1 | -1/+1 | |
| | | | | | | starting to work for blocks. llvm-svn: 64570 | |||||
* | IRgen support for attribute used. | Daniel Dunbar | 2009-02-13 | 1 | -0/+7 | |
| | | | | | | - PR3566 llvm-svn: 64492 | |||||
* | Pull MayDeferGeneration out of EmitGlobal. | Daniel Dunbar | 2009-02-13 | 1 | -0/+5 | |
| | | | | | | | | - Fix emission of static functions with constructor attribute while I was here. <rdar://problem/6140899> [codegen] "static" and attribute-constructor interact poorly llvm-svn: 64488 | |||||
* | Rename EmitStatics (etc) to EmitDeferred; provide basic infrastructure | Daniel Dunbar | 2009-02-13 | 1 | -7/+25 | |
| | | | | | | | for attribute used support. - No functionality change. llvm-svn: 64487 | |||||
* | Let the backend unique these. | Mike Stump | 2009-02-13 | 1 | -2/+0 | |
| | | | | llvm-svn: 64486 | |||||
* | Move DescriptorUniqueCount into CGM. | Mike Stump | 2009-02-13 | 1 | -1/+3 | |
| | | | | llvm-svn: 64481 | |||||
* | Move NSConcreteStackBlock into CGM. | Mike Stump | 2009-02-13 | 1 | -0/+5 | |
| | | | | llvm-svn: 64479 | |||||
* | Reflow to 80col. | Mike Stump | 2009-02-13 | 1 | -91/+84 | |
| | | | | llvm-svn: 64475 | |||||
* | Move GlobalUniqueCount up into CGM. | Mike Stump | 2009-02-13 | 1 | -1/+4 | |
| | | | | llvm-svn: 64473 | |||||
* | Condense NSConcreteGlobalBlock handling. | Mike Stump | 2009-02-13 | 1 | -0/+2 | |
| | | | | llvm-svn: 64461 | |||||
* | Move GenericBlockLiteralType into CGM. | Mike Stump | 2009-02-13 | 1 | -0/+3 | |
| | | | | llvm-svn: 64452 | |||||
* | Move BlockDescriptorType into CGM. | Mike Stump | 2009-02-13 | 1 | -1/+5 | |
| | | | | llvm-svn: 64451 |