diff options
author | Chris Lattner <sabre@nondot.org> | 2002-05-09 20:39:03 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-05-09 20:39:03 +0000 |
commit | 497e19aee0eeb808fb37cf655e9afd562b921dfc (patch) | |
tree | 4a57bce73c5965935b286dbda417dcb4511c2e51 /lib | |
parent | 7683a12e2063c7226cc24a1f5cd6ce4ca99d140d (diff) |
Remove CLocalVars data structure entirely, instead of building stuff and
then printing it out, just print as we go.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2585 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/CBackend/CBackend.cpp | 31 | ||||
-rw-r--r-- | lib/Target/CBackend/Writer.cpp | 31 |
2 files changed, 6 insertions, 56 deletions
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp index a36f2aeb44..98503f3bbe 100644 --- a/lib/Target/CBackend/CBackend.cpp +++ b/lib/Target/CBackend/CBackend.cpp @@ -8,7 +8,6 @@ //===-----------------------------------------------------------------------==// #include "llvm/Assembly/CWriter.h" -#include "CLocalVars.h" #include "llvm/SlotCalculator.h" #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" @@ -32,21 +31,8 @@ #include <strstream> using std::string; using std::map; -using std::vector; using std::ostream; -//===-----------------------------------------------------------------------==// -// -// Implementation of the CLocalVars methods - -// Appends a variable to the LocalVars map if it does not already exist -// Also check that the type exists on the map. -void CLocalVars::addLocalVar(const Type *t, const string &V) { - if (!LocalVars.count(t) || - find(LocalVars[t].begin(), LocalVars[t].end(), V) == LocalVars[t].end()) - LocalVars[t].push_back(V); -} - static std::string getConstStrValue(const Constant* CPV); @@ -746,22 +732,11 @@ void CWriter::printFunction(Function *F) { printFunctionSignature(F); Out << " {\n"; - // Process each of the basic blocks, gather information and call the - // output methods on the CLocalVars and Function* objects. - - // gather local variable information for each basic block - CLocalVars CLV; + // print local variable information for the function for (inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I) - if ((*I)->getType() != Type::VoidTy) - CLV.addLocalVar((*I)->getType(), getValueName(*I)); - - // print the local variables - for (map<const Type*, VarListType>::iterator I = CLV.LocalVars.begin(), - E = CLV.LocalVars.end(); I != E; ++I) - for (VarListType::iterator TI = I->second.begin(), E = I->second.end(); - TI != E; ++TI) { + if ((*I)->getType() != Type::VoidTy) { Out << " "; - printTypeVar(I->first, *TI); + printTypeVar((*I)->getType(), getValueName(*I)); Out << ";\n"; } diff --git a/lib/Target/CBackend/Writer.cpp b/lib/Target/CBackend/Writer.cpp index a36f2aeb44..98503f3bbe 100644 --- a/lib/Target/CBackend/Writer.cpp +++ b/lib/Target/CBackend/Writer.cpp @@ -8,7 +8,6 @@ //===-----------------------------------------------------------------------==// #include "llvm/Assembly/CWriter.h" -#include "CLocalVars.h" #include "llvm/SlotCalculator.h" #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" @@ -32,21 +31,8 @@ #include <strstream> using std::string; using std::map; -using std::vector; using std::ostream; -//===-----------------------------------------------------------------------==// -// -// Implementation of the CLocalVars methods - -// Appends a variable to the LocalVars map if it does not already exist -// Also check that the type exists on the map. -void CLocalVars::addLocalVar(const Type *t, const string &V) { - if (!LocalVars.count(t) || - find(LocalVars[t].begin(), LocalVars[t].end(), V) == LocalVars[t].end()) - LocalVars[t].push_back(V); -} - static std::string getConstStrValue(const Constant* CPV); @@ -746,22 +732,11 @@ void CWriter::printFunction(Function *F) { printFunctionSignature(F); Out << " {\n"; - // Process each of the basic blocks, gather information and call the - // output methods on the CLocalVars and Function* objects. - - // gather local variable information for each basic block - CLocalVars CLV; + // print local variable information for the function for (inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I) - if ((*I)->getType() != Type::VoidTy) - CLV.addLocalVar((*I)->getType(), getValueName(*I)); - - // print the local variables - for (map<const Type*, VarListType>::iterator I = CLV.LocalVars.begin(), - E = CLV.LocalVars.end(); I != E; ++I) - for (VarListType::iterator TI = I->second.begin(), E = I->second.end(); - TI != E; ++TI) { + if ((*I)->getType() != Type::VoidTy) { Out << " "; - printTypeVar(I->first, *TI); + printTypeVar((*I)->getType(), getValueName(*I)); Out << ";\n"; } |