diff options
| author | Vikram S. Adve <vadve@cs.uiuc.edu> | 2002-09-28 17:03:54 +0000 |
|---|---|---|
| committer | Vikram S. Adve <vadve@cs.uiuc.edu> | 2002-09-28 17:03:54 +0000 |
| commit | 8076fe87b75d64b8d853ab9a6db592957ac6cefb (patch) | |
| tree | 94f8da9bbe2bc681925105e19ea1f6f96cdaacc5 /llvm | |
| parent | 8fef3b80332e448a0f431ab755a6a51d39f8bf37 (diff) | |
| download | bcm5719-llvm-8076fe87b75d64b8d853ab9a6db592957ac6cefb.tar.gz bcm5719-llvm-8076fe87b75d64b8d853ab9a6db592957ac6cefb.zip | |
Fixed method getReturnValue(): it should return NULL if the
callee does not return a value.
llvm-svn: 3968
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/CodeGen/MachineInstrAnnot.h | 4 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/MachineInstrAnnot.cpp | 7 |
2 files changed, 9 insertions, 2 deletions
diff --git a/llvm/include/llvm/CodeGen/MachineInstrAnnot.h b/llvm/include/llvm/CodeGen/MachineInstrAnnot.h index bd3f7333e32..be3aaac299d 100644 --- a/llvm/include/llvm/CodeGen/MachineInstrAnnot.h +++ b/llvm/include/llvm/CodeGen/MachineInstrAnnot.h @@ -68,12 +68,12 @@ public: unsigned int getNumArgs() const { return argInfoVec.size(); } CallArgInfo& getArgInfo(unsigned int op) { assert(op < argInfoVec.size()); return argInfoVec[op]; } - const CallInst* getReturnValue() const { return callInstr; } + const CallInst* getReturnValue() const; const Value* getIndirectFuncPtr() const { return funcPtr; } TmpInstruction* getReturnAddrReg() const { return retAddrReg; } bool isVarArgsFunc() const { return isVarArgs; } bool hasNoPrototype() const { return noPrototype; } - + // Annotation mechanism to annotate a MachineInstr with the descriptor. // This is not demand-driven because annotations can only be created // at restricted points during code generation. diff --git a/llvm/lib/CodeGen/MachineInstrAnnot.cpp b/llvm/lib/CodeGen/MachineInstrAnnot.cpp index 960c49283e5..ef064450ed0 100644 --- a/llvm/lib/CodeGen/MachineInstrAnnot.cpp +++ b/llvm/lib/CodeGen/MachineInstrAnnot.cpp @@ -30,3 +30,10 @@ CallArgsDescriptor::CallArgsDescriptor(const CallInst* _callInstr, for (unsigned int i=1; i < numArgs; ++i) argInfoVec.push_back(CallArgInfo(callInstr->getOperand(i))); } + + +const CallInst* +CallArgsDescriptor::getReturnValue() const +{ + return (callInstr->getType() == Type::VoidTy? NULL : callInstr); +} |

