Displaying 1 result from an estimated 1 matches for "recordschedule".
2005 Sep 27
1
[LLVMdev] How does the memory of MachineInstr objects are managed?
...ineBasicBlock in the scheduled
order.
The question is: isn't the memory of MachineInstr* "released/freed"
when it's removed from the MachineBasicBlock?
vector<MachineInstr*> S; // the schedule;
// reference implementation: SparcV9/InstrSched/InstructionScheduling.cpp
void recordSchedule(MachineBasicBlock &MBB) {
...
while (I != MBB.end())
MBB.remove(I++); // **** Q: Doesn't it invalidate the pointers in
'S' ?? ****
vector<MachineInstr*>::iterator I = S.begin(); S.end() != I; ++ I) {
MBB.push_back(*I);
}
}
--
Tzu-Chien Chiu - XGI Technology,...