diff --git a/include/llvm/CodeGen/MachineCodeForInstruction.h b/include/llvm/CodeGen/MachineCodeForInstruction.h index 5d0cdd91330..03e02501cb9 100644 --- a/include/llvm/CodeGen/MachineCodeForInstruction.h +++ b/include/llvm/CodeGen/MachineCodeForInstruction.h @@ -36,6 +36,13 @@ public: static MachineCodeForInstruction &get(const Instruction *I); static void destroy(const Instruction *I); + // dropAllReferences() - This function drops all references within + // temporary (hidden) instructions created in implementing the original + // VM intruction. This ensures there are no remaining "uses" within + // these hidden instructions, before the values of a method are freed. + // + void dropAllReferences(); + const std::vector &getTempValues() const { return tempVec; } std::vector &getTempValues() { return tempVec; } diff --git a/lib/Target/SparcV9/MachineCodeForInstruction.h b/lib/Target/SparcV9/MachineCodeForInstruction.h index 5d0cdd91330..03e02501cb9 100644 --- a/lib/Target/SparcV9/MachineCodeForInstruction.h +++ b/lib/Target/SparcV9/MachineCodeForInstruction.h @@ -36,6 +36,13 @@ public: static MachineCodeForInstruction &get(const Instruction *I); static void destroy(const Instruction *I); + // dropAllReferences() - This function drops all references within + // temporary (hidden) instructions created in implementing the original + // VM intruction. This ensures there are no remaining "uses" within + // these hidden instructions, before the values of a method are freed. + // + void dropAllReferences(); + const std::vector &getTempValues() const { return tempVec; } std::vector &getTempValues() { return tempVec; }