Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1355)

Unified Diff: runtime/vm/flow_graph_allocator.cc

Issue 868913002: Add Zone-based handle allocation interface and reduce use of Isolate-based interfaces. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/flow_graph_allocator.cc
===================================================================
--- runtime/vm/flow_graph_allocator.cc (revision 43075)
+++ runtime/vm/flow_graph_allocator.cc (working copy)
@@ -540,7 +540,7 @@
const intptr_t block_count = postorder_.length();
ASSERT(postorder_.Last()->IsGraphEntry());
BitVector* current_interference_set = NULL;
- Isolate* isolate = flow_graph_.isolate();
+ Zone* zone = flow_graph_.zone();
for (intptr_t i = 0; i < (block_count - 1); i++) {
BlockEntryInstr* block = postorder_[i];
@@ -558,8 +558,8 @@
BlockInfo* loop_header = block_info->loop_header();
if ((loop_header != NULL) && (loop_header->last_block() == block)) {
- current_interference_set = new(isolate) BitVector(
- isolate, flow_graph_.max_virtual_register_number());
+ current_interference_set = new(zone) BitVector(
+ zone, flow_graph_.max_virtual_register_number());
ASSERT(loop_header->backedge_interference() == NULL);
// All values flowing into the loop header are live at the back-edge and
// can interfere with phi moves.
@@ -2025,9 +2025,9 @@
void ReachingDefs::AddPhi(PhiInstr* phi) {
// TODO(johnmccutchan): Fix handling of PhiInstr with PairLocation.
if (phi->reaching_defs() == NULL) {
- Isolate* isolate = Isolate::Current();
- phi->set_reaching_defs(new(isolate) BitVector(
- isolate, flow_graph_.max_virtual_register_number()));
+ Zone* zone = Thread::Current()->zone();
siva 2015/01/23 19:29:26 Zone* zone = flow_graph_.zone(); here?
koda 2015/01/23 21:09:42 Done.
+ phi->set_reaching_defs(new(zone) BitVector(
+ zone, flow_graph_.max_virtual_register_number()));
// Compute initial set reaching defs set.
bool depends_on_phi = false;

Powered by Google App Engine
This is Rietveld 408576698