History log of /openjdk10/hotspot/src/share/vm/opto/phaseX.cpp
Revision Date Author Comments
# 13254:c044f8d03932 05-Jul-2017 jwilhelm

8182299: Enable disabled clang warnings, build on OSX 10 + Xcode 8
8182656: Make the required changes in GC code to build on OSX 10 + Xcode 8
8182657: Make the required changes in Runtime code to build on OSX 10 + Xcode 8
8182658: Make the required changes in Compiler code to build on OSX 10 + Xcode 8
Reviewed-by: jwilhelm, ehelin, phh
Contributed-by: phh <hohensee@amazon.com>, jwilhelm <jesper.wilhelmsson@oracle.com>


# 11894:2629b100a7e3 23-Aug-2016 thartmann

8038348: Instance field load is replaced by wrong data Phi
Summary: Store additional information in PhiNodes corresponding to known instance field values to avoid incorrect reusage.
Reviewed-by: kvn, vlivanov


# 10762:ea81fe138932 03-Apr-2016 jprovino

8132524: Missing includes to resourceArea.hpp
Summary: Files that use ResourceMark are missing the include of resourceArea.hpp
Reviewed-by: tschatzl, jwilhelm


# 10321:db7934bcad3b 17-Feb-2016 roland

8148786: xml.tranform fails on x86-64
Summary: CCP computes wrong type for CountedLoop iv Phi
Reviewed-by: kvn


# 10029:bfb7a8a004de 18-Jan-2016 thartmann

6675699: need comprehensive fix for unconstrained ConvI2L with narrowed type
Summary: Emit CastII to make narrow ConvI2L dependent on the corresponding range check.
Reviewed-by: kvn, roland


# 10000:9e17d9e4b59f 11-Dec-2015 roland

8139771: Eliminating CastPP nodes at Phis when they all come from a unique input may cause crash
Summary: Lost dependency when CastPP at Phis are eliminate
Reviewed-by: kvn


# 9615:da497ea6c120 01-Dec-2015 zmajo

8129847: Compiling methods generated by Nashorn triggers high memory usage in C2
Summary: Add a new compiler phase, PhaseRenumberLive, that renumbers live nodes.
Reviewed-by: kvn, thartmann, vlivanov, shade


# 8829:af60f1cb36f2 10-Aug-2015 kvn

8011858: Use Compile::live_nodes() instead of Compile::unique() in appropriate places
Reviewed-by: kvn, vlivanov
Contributed-by: vlad.ureche@gmail.com


# 8486:53707cf9a443 21-May-2015 aeriksso

8060036: C2: CmpU nodes can end up with wrong type information
Summary: CmpU needs to be reprocessed by CCP when an AddI/SubI input's input type change
Reviewed-by: mcberg, kvn, roland
Contributed-by: andreas.eriksson@oracle.com


# 8285:d11fb4e8a82e 24-Mar-2015 roland

8069191: moving predicate out of loops may cause array accesses to bypass null check
Summary: Remove CastPP nodes only during final graph reshape
Reviewed-by: kvn, jrose


# 7492:8394c315d83a 27-Nov-2014 roland

8066045: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1
Summary: code in PhaseIterGVN::add_users_to_worklist() from 8054478 makes incorrect assumption about graph shape
Reviewed-by: iveresov


# 7449:49dd956bc8c0 13-Nov-2014 roland

8054478: C2: Incorrectly compiled char[] array access crashes JVM
Summary: dead backbranch in main loop results in erroneous array access
Reviewed-by: kvn, iveresov


# 6992:949cc7926b7e 29-Aug-2014 thartmann

8056067: NodeHash debug variables are available in product build
Summary: Make NodeHash debug variables only available in debug/optimized build.
Reviewed-by: kvn, roland


# 6837:ae45df3285c9 05-Aug-2014 thartmann

8054033: Remove unused references to Compile*
Summary: Removed unused references to Compile* missed by JDK-8034812.
Reviewed-by: kvn, roland


# 6820:c1d7ba5b5d45 25-Jul-2014 thartmann

8040213: C2 does not put all modified nodes on IGVN worklist
Summary: Verification code is added that checks if modified nodes are put on the IGVN worklist and modified nodes are processed by 'PhaseIterGVN::transform_old()'
Reviewed-by: kvn, jrose


# 6784:0dd7b1ca3bca 21-Jul-2014 anoll

8051303: 'optimized' build broken by JDK-8039425
Summary: Changed preprocessor directive in PhaseIterGVN::optimize()
Reviewed-by: kvn, anoll
Contributed-by: Zoltan Majo <zoltan.majo@oracle.com>


# 6546:3533da0f7728 02-Jun-2014 thartmann

8034812: remove IDX_INIT macro hack in Node class
Summary: The IDX_INIT macro used by Node::Node(...) to retrieve the Compile object is removed and replaced by a call to Compile::current(). The Node constructor, new operator and all calls to it are adapted accordingly.
Reviewed-by: kvn, jrose, iveresov, goetz


# 6467:13818eb5243c 16-May-2014 kvn

8042786: Proper fix for 8032566
Summary: Check for overflow cases in range checks and collapse it if we can.
Reviewed-by: jrose, iveresov


# 6412:53a41e7cbe05 09-May-2014 drchase

8037816: Fix for 8036122 breaks build with Xcode5/clang
Summary: Repaired or selectively disabled offending formats; future-proofed with additional checking
Reviewed-by: kvn, jrose, stefank


# 6305:330a735e73b8 14-Apr-2014 anoll

Merge


# 6304:f51ce1a6b08b 14-Apr-2014 anoll

8039425: Code cleanup: PhaseIterGVN::optimize()
Summary: This code cleanup aims at improving code readability.
Reviewed-by: kvn, roland


# 6298:34829a112d52 11-Apr-2014 anoll

8034216: assert(false) failed: infinite loop in PhaseIterGVN::optimize
Summary: Eagerly remove all castPP nodes in PhaseCCP to get type convergence in memnode.
Reviewed-by: kvn, roland


# 6219:12cd03f831d8 01-Apr-2014 morris

8001532: C2 node files refactoring
Summary: Split C2 node files into cast, convert, countbits, intrinsic, move, narrowptr and opaquenode classes
Reviewed-by: kvn, morris


# 6216:37023a7f1e1b 31-Mar-2014 roland

8031755: Type speculation should be used to optimize explicit null checks
Summary: feed profiling data about reference nullness to type speculation.
Reviewed-by: kvn, iveresov


# 5937:5ec7dace41a6 24-Jan-2014 roland

8027422: assert(_gvn.type(obj)->higher_equal(tjp)) failed: cast_up is no longer needed
Summary: type methods shouldn't always operate on speculative part
Reviewed-by: kvn, twisti


# 5776:de6a9e811145 24-Dec-2013 mikael

8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
Summary: Copyright year updated for files modified during 2013
Reviewed-by: twisti, iveresov


# 5556:b2ee5dc63353 22-Oct-2013 roland

8024070: C2 needs some form of type speculation
Summary: record unused type profile information with type system, propagate and use it.
Reviewed-by: kvn, twisti


# 5200:650868c062a9 25-Aug-2013 adlertz

8023691: Create interface for nodes in class Block
Summary: Create public methods for accessing the nodes in a block
Reviewed-by: kvn, roland


# 5104:adb9a7d94cb5 16-Aug-2013 adlertz

8023003: Cleanup the public interface to PhaseCFG
Summary: public methods that don't need to be public should be private.
Reviewed-by: kvn, twisti


# 4675:6f3fd5150b67 08-May-2013 kvn

6934604: enable parts of EliminateAutoBox by default
Summary: Resurrected autobox elimination code and enabled part of it by default.
Reviewed-by: roland, twisti


# 4433:30f42e691e70 26-Mar-2013 kvn

8004640: C2 assert failure in memnode.cpp: NULL+offs not RAW address
Summary: always transform AddP nodes in IdealKit by calling _gvn.transform().
Reviewed-by: roland, twisti


# 4222:6931f425c517 25-Feb-2013 roland

8007294: ReduceFieldZeroing doesn't check for dependent load and can lead to incorrect execution
Summary: InitializeNode::can_capture_store() must check that the captured store doesn't overwrite a memory location that is loaded before the store.
Reviewed-by: kvn


# 4154:8b3da8d14c93 11-Feb-2013 roland

7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob
Summary: Add support for expensive nodes.
Reviewed-by: kvn


# 3974:d092d1b31229 23-Dec-2012 roland

8005071: Incremental inlining for JSR 292
Summary: post parse inlining driven by number of live nodes.
Reviewed-by: twisti, kvn, jrose


# 3880:2aff40cb4703 27-Nov-2012 bharadwaj

7092905: C2: Keep track of the number of dead nodes
Summary: keep an (almost) accurate running count of the reachable (live) flow graph nodes.
Reviewed-by: kvn, twisti, jrose, vlivanov


# 3718:b9a9ed0f8eeb 09-Oct-2012 mikael

7197424: update copyright year to match last edit in jdk8 hotspot repository
Summary: Update copyright year to 2012 for relevant files
Reviewed-by: dholmes, coleenp


# 3680:e626685e9f6c 27-Sep-2012 kvn

7193318: C2: remove number of inputs requirement from Node's new operator
Summary: Deleted placement new operator of Node - node(size_t, Compile *, int).
Reviewed-by: kvn, twisti
Contributed-by: bharadwaj.yadavalli@oracle.com


# 3512:611e8a669a2c 16-Jul-2012 dlong

7147464: Java crashed while executing method with over 8k of dneg operations
Summary: replace recursive method with iterative
Reviewed-by: kvn, twisti
Contributed-by: dean.long@oracle.com


# 2825:670a74b863fc 09-Nov-2011 kvn

7107042: assert(no_dead_loop) failed: dead loop detected
Summary: Use dead nodes elimination code in PhaseIdealLoop before executing EA.
Reviewed-by: never, twisti


# 2719:075ea0ed9e7c 20-Sep-2011 kvn

7081842: assert(Compile::current()->unique() < (uint)MaxNodeLimit) failed: Node limit exceeded
Summary: Add missing node limit check in IGVN optimizer
Reviewed-by: iveresov, never


# 1879:f95d63e2154a 23-Nov-2010 stefank

6989984: Use standard include model for Hospot
Summary: Replaced MakeDeps and the includeDB files with more standardized solutions.
Reviewed-by: coleenp, kvn, kamg


# 1746:56601ef83436 30-Sep-2010 kvn

6916062: assert(_inserts <= _insert_limit,"hash table overflow") in NodeHash::hash_insert
Summary: Missing check for not empty worklist when puting memory node back on worklist and expecting address type update.
Reviewed-by: never


# 1541:6027dddc26c6 28-Jun-2010 kvn

6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
Summary: Use replace_node() method instead of subsume_node().
Reviewed-by: jrose, never


# 1472:c18cbe5936b8 27-May-2010 trims

6941466: Oracle rebranding changes for Hotspot repositories
Summary: Change all the Sun copyrights to Oracle copyright
Reviewed-by: ohair


# 1017:e715b51789d8 16-Oct-2009 cfang

Merge


# 1009:03b336640699 07-Oct-2009 never

6885584: A particular class structure causes large allocation spike for jit
Reviewed-by: kvn


# 948:89e0543e1737 22-Sep-2009 xdono

6884624: Update copyright year
Summary: Update copyright for files that have been modified in 2009 through Septermber
Reviewed-by: tbell, ohair


# 927:662f330d7275 17-Aug-2009 cfang

6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59)
Summary: delay dead code elimination in set_req_X to make it safe
Reviewed-by: kvn, never


# 605:98cb887364d3 27-Feb-2009 twisti

6810672: Comment typos
Summary: I have collected some typos I have found while looking at the code.
Reviewed-by: kvn, never


# 305:ab075d07f1ba 27-Aug-2008 kvn

6736417: Fastdebug C2 crashes in StoreBNode::Ideal
Summary: The result of step_through_mergemem() and remove_dead_region() is not checked in some cases.
Reviewed-by: never


# 196:d1605aabd0a1 02-Jul-2008 xdono

6719955: Update copyright year
Summary: Update copyright year for files that have been modified in 2008
Reviewed-by: ohair, tbell


# 113:ba764ed4b6f2 13-Apr-2008 coleenp

6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
Summary: Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv
Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold


# 65:99269dbf4ba8 14-Mar-2008 kvn

6674588: (Escape Analysis) Improve Escape Analysis code
Summary: Current EA code has several problems which have to be fixed.
Reviewed-by: jrose, sgoldman


# 41:874b2c4f43d1 07-Mar-2008 kvn

6667605: (Escape Analysis) inline java constructors when EA is on
Summary: java constructors should be inlined to be able scalar replace a new object
Reviewed-by: rasbold


# 0:a61af66fc99e 30-Nov-2007 duke

Initial load