src/hotspot/share/opto/parse1.cpp
changeset 51078 fc6cfe40e32a
parent 50623 5209d8a6303e
child 53469 1d953ae4d39f
equal deleted inserted replaced
51077:9baa91bc7567 51078:fc6cfe40e32a
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
  1821     if (mms.is_empty() && nophi) {
  1821     if (mms.is_empty() && nophi) {
  1822       // Trouble:  No new splits allowed after a loop body is parsed.
  1822       // Trouble:  No new splits allowed after a loop body is parsed.
  1823       // Instead, wire the new split into a MergeMem on the backedge.
  1823       // Instead, wire the new split into a MergeMem on the backedge.
  1824       // The optimizer will sort it out, slicing the phi.
  1824       // The optimizer will sort it out, slicing the phi.
  1825       if (remerge == NULL) {
  1825       if (remerge == NULL) {
  1826         assert(base != NULL, "");
  1826         guarantee(base != NULL, "");
  1827         assert(base->in(0) != NULL, "should not be xformed away");
  1827         assert(base->in(0) != NULL, "should not be xformed away");
  1828         remerge = MergeMemNode::make(base->in(pnum));
  1828         remerge = MergeMemNode::make(base->in(pnum));
  1829         gvn().set_type(remerge, Type::MEMORY);
  1829         gvn().set_type(remerge, Type::MEMORY);
  1830         base->set_req(pnum, remerge);
  1830         base->set_req(pnum, remerge);
  1831       }
  1831       }