hotspot/src/share/vm/opto/compile.cpp
changeset 12158 f24f2560da32
parent 11435 3fde349bcbcf
child 12161 081f2b3f1823
equal deleted inserted replaced
12112:56e3093129dc 12158:f24f2560da32
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2012, 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.
  1705       TracePhase t2("idealLoop", &_t_idealLoop, true);
  1705       TracePhase t2("idealLoop", &_t_idealLoop, true);
  1706       PhaseIdealLoop ideal_loop( igvn, false, true );
  1706       PhaseIdealLoop ideal_loop( igvn, false, true );
  1707       if (major_progress()) print_method("PhaseIdealLoop before EA", 2);
  1707       if (major_progress()) print_method("PhaseIdealLoop before EA", 2);
  1708       if (failing())  return;
  1708       if (failing())  return;
  1709     }
  1709     }
  1710     TracePhase t2("escapeAnalysis", &_t_escapeAnalysis, true);
       
  1711     ConnectionGraph::do_analysis(this, &igvn);
  1710     ConnectionGraph::do_analysis(this, &igvn);
  1712 
  1711 
  1713     if (failing())  return;
  1712     if (failing())  return;
  1714 
  1713 
  1715     // Optimize out fields loads from scalar replaceable allocations.
  1714     // Optimize out fields loads from scalar replaceable allocations.
  1717     print_method("Iter GVN after EA", 2);
  1716     print_method("Iter GVN after EA", 2);
  1718 
  1717 
  1719     if (failing())  return;
  1718     if (failing())  return;
  1720 
  1719 
  1721     if (congraph() != NULL && macro_count() > 0) {
  1720     if (congraph() != NULL && macro_count() > 0) {
       
  1721       NOT_PRODUCT( TracePhase t2("macroEliminate", &_t_macroEliminate, TimeCompiler); )
  1722       PhaseMacroExpand mexp(igvn);
  1722       PhaseMacroExpand mexp(igvn);
  1723       mexp.eliminate_macro_nodes();
  1723       mexp.eliminate_macro_nodes();
  1724       igvn.set_delay_transform(false);
  1724       igvn.set_delay_transform(false);
  1725 
  1725 
  1726       igvn.optimize();
  1726       igvn.optimize();