summaryrefslogtreecommitdiff
path: root/src/compiler/IntermediateRep.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/IntermediateRep.cc')
-rw-r--r--src/compiler/IntermediateRep.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/compiler/IntermediateRep.cc b/src/compiler/IntermediateRep.cc
index c39aed3e2d..6cb6580283 100644
--- a/src/compiler/IntermediateRep.cc
+++ b/src/compiler/IntermediateRep.cc
@@ -20,13 +20,15 @@
namespace art {
/* Allocate a new basic block */
-BasicBlock* oatNewBB(BBType blockType, int blockId)
+BasicBlock* oatNewBB(CompilationUnit* cUnit, BBType blockType, int blockId)
{
- BasicBlock* bb = (BasicBlock* )oatNew(sizeof(BasicBlock), true);
+ BasicBlock* bb = (BasicBlock* )oatNew(sizeof(BasicBlock), true, kAllocBB);
bb->blockType = blockType;
bb->id = blockId;
- bb->predecessors = oatAllocBitVector(blockId > 32 ? blockId : 32,
- true /* expandable */);
+ bb->predecessors = (GrowableList*) oatNew(sizeof(GrowableList), false,
+ kAllocPredecessors);
+ oatInitGrowableList(bb->predecessors, (blockType == kExitBlock) ? 2048 : 2,
+ kListPredecessors);
return bb;
}