summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2012-04-19 17:16:08 -0700
committerElliott Hughes <enh@google.com>2012-04-19 17:16:08 -0700
commit3897bab038a89d09c97eec00653cd3a2870d2c06 (patch)
tree56aa41d4bc72ad7aeb0db8f214ce3ca5c6edc207
parent53b07f7bc2fb344727511e3a1f7ce8f10e36e7b0 (diff)
downloadandroid_dalvik-3897bab038a89d09c97eec00653cd3a2870d2c06.tar.gz
android_dalvik-3897bab038a89d09c97eec00653cd3a2870d2c06.tar.bz2
android_dalvik-3897bab038a89d09c97eec00653cd3a2870d2c06.zip
Fix a leak in the JIT.
We should use the JIT's arena rather than explicit allocation/deallocation. Change-Id: I12b78cb1586222b082b140e4a1db00969ce23e3c
-rw-r--r--vm/compiler/Loop.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/vm/compiler/Loop.cpp b/vm/compiler/Loop.cpp
index 90c97d767..301df7a7e 100644
--- a/vm/compiler/Loop.cpp
+++ b/vm/compiler/Loop.cpp
@@ -678,7 +678,7 @@ bool dvmCompilerLoopOpt(CompilationUnit *cUnit)
cUnit->loopAnalysis = loopAnalysis;
/* Constant propagation */
- cUnit->isConstantV = dvmAllocBitVector(cUnit->numSSARegs, false);
+ cUnit->isConstantV = dvmCompilerAllocBitVector(cUnit->numSSARegs, false);
cUnit->constantValues =
(int *)dvmCompilerNew(sizeof(int) * cUnit->numSSARegs,
true);
@@ -692,7 +692,7 @@ bool dvmCompilerLoopOpt(CompilationUnit *cUnit)
loopAnalysis->ivList =
(GrowableList *)dvmCompilerNew(sizeof(GrowableList), true);
dvmInitGrowableList(loopAnalysis->ivList, 4);
- loopAnalysis->isIndVarV = dvmAllocBitVector(cUnit->numSSARegs, false);
+ loopAnalysis->isIndVarV = dvmCompilerAllocBitVector(cUnit->numSSARegs, false);
dvmCompilerDataFlowAnalysisDispatcher(cUnit,
dvmCompilerFindInductionVariables,
kAllNodes,