diff options
author | Chris Lattner <sabre@nondot.org> | 2004-07-14 23:03:46 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-07-14 23:03:46 +0000 |
commit | a09000db752001220f46e7c43f02284a6761cb89 (patch) | |
tree | c3d249ee1e36de670b4fbe1d0ba626d3d4a11f99 /lib/Transforms/Utils/LowerAllocations.cpp | |
parent | f05591d35992dd22f1b5408dfa12c2da5900e6f5 (diff) |
** Finally DeclareNewGlobalValue is dead!
* Simplify a lot of code because type's cannot be in function symbol tables
* Fix memory leaks in handling of redefined function prototypes
* Don't use SymbolTable directly for stuff that we can go through the Module
for.
* Fix some minor bugs on obscure testcases like:
test/Feature/globalredefinition.ll
* Do not create GlobalVariable objects for forward referenced Functions!
* When forward referencing a function in a constant expression, do not create
a placeholder, add a bunch of references to it, then turn around and
replaceAllUsesOfWith on it with a new global, deleting the placeholder.
Instead, when we find the real definition of the global, just use the
placeholder instead of creating a new object.
This substantially simplifies the asmwriter and should even speed it up on
cases heavy in constantexprs (like C++, Java, MSIL)...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14830 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/LowerAllocations.cpp')
0 files changed, 0 insertions, 0 deletions