mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-04 21:30:49 +00:00
fix leakage of APFloats in getExistingVal()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58696 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1983033820
commit
b0c53da1e1
@ -152,6 +152,8 @@ struct ValID {
|
|||||||
delete IAD;
|
delete IAD;
|
||||||
else if (Type == ConstAPInt)
|
else if (Type == ConstAPInt)
|
||||||
delete ConstPoolInt;
|
delete ConstPoolInt;
|
||||||
|
else if (Type == ConstFPVal)
|
||||||
|
delete ConstPoolFP;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline ValID copy() const {
|
inline ValID copy() const {
|
||||||
|
@ -437,7 +437,11 @@ static Value *getExistingVal(const Type *Ty, const ValID &D) {
|
|||||||
D.ConstPoolFP->convert(APFloat::IEEEsingle, APFloat::rmNearestTiesToEven,
|
D.ConstPoolFP->convert(APFloat::IEEEsingle, APFloat::rmNearestTiesToEven,
|
||||||
&ignored);
|
&ignored);
|
||||||
}
|
}
|
||||||
return ConstantFP::get(*D.ConstPoolFP);
|
{
|
||||||
|
ConstantFP *tmp = ConstantFP::get(*D.ConstPoolFP);
|
||||||
|
D.destroy();
|
||||||
|
return tmp;
|
||||||
|
}
|
||||||
|
|
||||||
case ValID::ConstNullVal: // Is it a null value?
|
case ValID::ConstNullVal: // Is it a null value?
|
||||||
if (!isa<PointerType>(Ty)) {
|
if (!isa<PointerType>(Ty)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user