aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/MachineInstr.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-07-19 00:37:25 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-07-19 00:37:25 +0000
commit4ce1a527c1586c262bbc981101f3bfea2ed8dfd1 (patch)
treed02207b905dfe0d3f9ac61a6a93b208fdf5adc55 /lib/CodeGen/MachineInstr.cpp
parent6c4bae0a7f6a1c360aa3300a1dfb6c9c30d650c5 (diff)
downloadexternal_llvm-4ce1a527c1586c262bbc981101f3bfea2ed8dfd1.zip
external_llvm-4ce1a527c1586c262bbc981101f3bfea2ed8dfd1.tar.gz
external_llvm-4ce1a527c1586c262bbc981101f3bfea2ed8dfd1.tar.bz2
Fix a memory leak in LiveIntervalAnalysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53779 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineInstr.cpp')
-rw-r--r--lib/CodeGen/MachineInstr.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index b672cd9..65e5976 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -312,16 +312,14 @@ MachineInstr::MachineInstr(MachineBasicBlock *MBB,
/// MachineInstr ctor - Copies MachineInstr arg exactly
///
-MachineInstr::MachineInstr(MachineFunction &MF, const MachineInstr &MI) {
- TID = &MI.getDesc();
- NumImplicitOps = MI.NumImplicitOps;
+MachineInstr::MachineInstr(MachineFunction &MF, const MachineInstr &MI)
+ : TID(&MI.getDesc()), NumImplicitOps(0), Parent(0) {
Operands.reserve(MI.getNumOperands());
// Add operands
- for (unsigned i = 0; i != MI.getNumOperands(); ++i) {
- Operands.push_back(MI.getOperand(i));
- Operands.back().ParentMI = this;
- }
+ for (unsigned i = 0; i != MI.getNumOperands(); ++i)
+ addOperand(MI.getOperand(i));
+ NumImplicitOps = MI.NumImplicitOps;
// Add memory operands.
for (alist<MachineMemOperand>::const_iterator i = MI.memoperands_begin(),