aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/IPO/FunctionResolution.cpp
AgeCommit message (Collapse)Author
2002-11-20 - Eliminated the deferred symbol table stuff in Module & Function, it reallyChris Lattner
wasn't an optimization and it was causing lots of bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-10Fix testcase: FunctionResolve/2002-11-09-ExternFn.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4668 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-08Fix bug: FunctionResolve/2002-11-07-RetMismatch.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4618 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-13Account for global variables resolved more accurately.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4143 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-09Almost a complete rewrite of FunctionResolution to now resolve functionsChris Lattner
and global variables. This fixes bug: FuncResolve/2002-08-19-ResolveGlobalVarsEasier.ll And bug: SingleSource/UnitTests/2002-10-09-ArrayResolution.c Note that this does not fix bug: FunctionResolve/2002-08-19-ResolveGlobalVars.ll because replaceAllUsesWith breaks when a constantexpr is pointing to the thing being replaced. This is more of an infrastructure problem than anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4099 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-01Updates to work with recent Statistic's changes:Chris Lattner
* Renamed StatisticReporter.h/cpp to Statistic.h/cpp * Broke constructor to take two const char * arguments instead of one, so that indendation can be taken care of automatically. * Sort the list by pass name when printing * Make sure to print all statistics as a group, instead of randomly when the statistics dtors are called. * Updated ProgrammersManual with new semantics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4002 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10Simplify code (somtimes dramatically), by using the new "auto-insert" featureChris Lattner
of instruction constructors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3655 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-01Remove unneccesary #inlcudeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3200 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-30Fix bug with last patch which would occur when a call returned void and weChris Lattner
attempted to assign it a name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3142 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-30* Make sure the resolved function call instructions get the name from theChris Lattner
old call instruction * Implement conversion of return values for calls. This fixes bug: test/Regression/Transforms/FunctionResolve/retmismatch3.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3140 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-26* Add support for different "PassType's"Chris Lattner
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Add support for different "PassType's" * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Remove getPassName implementations from various subclasses git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3112 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-23Rename headerChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3037 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-23* Remove getPassName implementationChris Lattner
* Register all Passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3015 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18Only functions with external linkage can be resolved to function declarations.Chris Lattner
This change fixes programs that have multiple functions named the same thing, where are least one of them is static/internal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2954 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25MEGAPATCH checkin.Chris Lattner
For details, See: docs/2002-06-25-MegaPatchInfo.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-24Fix "unimplemented features":Chris Lattner
test/Regression/Transforms/FunctionResolve/retmismatch[12].ll This makes it much more useful for running benchmarks that are missing prototypes for some functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2745 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-24Split the FunctionResolution pass out of CleanGCCOutput.cpp.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2742 91177308-0d34-0410-b5e6-96231b3b80d8