diff options
author | Nuno Lopes <nunoplopes@sapo.pt> | 2008-11-04 13:02:59 +0000 |
---|---|---|
committer | Nuno Lopes <nunoplopes@sapo.pt> | 2008-11-04 13:02:59 +0000 |
commit | 57c6594e97f3927756976bc5cdeffbb17226aa08 (patch) | |
tree | 7150b5bf828f8ab53198d826706e2bb9ddb6d201 | |
parent | 273ce56d7a4b043ccc6eb5feca1a13879b1d567a (diff) | |
download | bcm5719-llvm-57c6594e97f3927756976bc5cdeffbb17226aa08.tar.gz bcm5719-llvm-57c6594e97f3927756976bc5cdeffbb17226aa08.zip |
fix leakage of IfcvtTokens
llvm-svn: 58690
-rw-r--r-- | llvm/lib/CodeGen/IfConversion.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/IfConversion.cpp b/llvm/lib/CodeGen/IfConversion.cpp index a83d7f1fcc4..f5e5f6baafc 100644 --- a/llvm/lib/CodeGen/IfConversion.cpp +++ b/llvm/lib/CodeGen/IfConversion.cpp @@ -256,6 +256,10 @@ bool IfConverter::runOnMachineFunction(MachineFunction &MF) { Tokens.pop_back(); BBInfo &BBI = Token->BBI; IfcvtKind Kind = Token->Kind; + unsigned NumDups = Token->NumDups; + unsigned NumDups2 = Token->NumDups; + + delete Token; // If the block has been evicted out of the queue or it has already been // marked dead (due to it being predicated), then skip it. @@ -323,7 +327,7 @@ bool IfConverter::runOnMachineFunction(MachineFunction &MF) { DOUT << "Ifcvt (Diamond): BB#" << BBI.BB->getNumber() << " (T:" << BBI.TrueBB->getNumber() << ",F:" << BBI.FalseBB->getNumber() << ") "; - RetVal = IfConvertDiamond(BBI, Kind, Token->NumDups, Token->NumDups2); + RetVal = IfConvertDiamond(BBI, Kind, NumDups, NumDups2); DOUT << (RetVal ? "succeeded!" : "failed!") << "\n"; if (RetVal) NumDiamonds++; break; |