diff options
author | Vikram S. Adve <vadve@cs.uiuc.edu> | 2001-10-22 13:51:33 +0000 |
---|---|---|
committer | Vikram S. Adve <vadve@cs.uiuc.edu> | 2001-10-22 13:51:33 +0000 |
commit | cc80b02834507be2116e4d8d86dd92cf6cbc090a (patch) | |
tree | 66a27dd38206edbad949efca05b542344440182e /llvm/lib/CodeGen/MachineInstr.cpp | |
parent | 3686293bd26db41efc97d813b1704da703398e65 (diff) | |
download | bcm5719-llvm-cc80b02834507be2116e4d8d86dd92cf6cbc090a.tar.gz bcm5719-llvm-cc80b02834507be2116e4d8d86dd92cf6cbc090a.zip |
Added class MachineCodeForMethod.
llvm-svn: 947
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineInstr.cpp | 40 |
1 files changed, 39 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index 2ec791f11b6..b4f275db38c 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -176,7 +176,45 @@ operator<<(ostream &os, const MachineOperand &mop) void -PrintMachineInstructions(const Method *const method) +MachineCodeForMethod::putLocalVarAtOffsetFromFP(const Value* local, + int offset, + unsigned int size) +{ + offsetsFromFP[local] = offset; + incrementAutomaticVarsSize(size); +} + + +void +MachineCodeForMethod::putLocalVarAtOffsetFromSP(const Value* local, + int offset, + unsigned int size) +{ + offsetsFromSP[local] = offset; + incrementAutomaticVarsSize(size); +} + + +int +MachineCodeForMethod::getOffsetFromFP(const Value* local) const +{ + hash_map<const Value*, int>::const_iterator pair = offsetsFromFP.find(local); + assert(pair != offsetsFromFP.end() && "Offset from FP unknown for Value"); + return (*pair).second; +} + + +int +MachineCodeForMethod::getOffsetFromSP(const Value* local) const +{ + hash_map<const Value*, int>::const_iterator pair = offsetsFromSP.find(local); + assert(pair != offsetsFromSP.end() && "Offset from SP unknown for Value"); + return (*pair).second; +} + + +void +MachineCodeForMethod::dump() const { cout << "\n" << method->getReturnType() << " \"" << method->getName() << "\"" << endl; |