Andreas Eriksson
346fb9ffa7
8060036: C2: CmpU nodes can end up with wrong type information
...
CmpU needs to be reprocessed by CCP when an AddI/SubI input's input type change
Reviewed-by: mcberg, kvn, roland
2015-05-21 16:49:11 +02:00
Roland Westrelin
05ea4dbf1e
8069191: moving predicate out of loops may cause array accesses to bypass null check
...
Remove CastPP nodes only during final graph reshape
Reviewed-by: kvn, jrose
2015-03-24 10:25:09 +01:00
Roland Westrelin
6d20d3298a
8066045: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1
...
Code in PhaseIterGVN::add_users_to_worklist() from 8054478 makes incorrect assumption about graph shape
Reviewed-by: iveresov
2014-11-27 16:54:49 +01:00
Roland Westrelin
4bc2edad15
8054478: C2: Incorrectly compiled char[] array access crashes JVM
...
Dead backbranch in main loop results in erroneous array access
Reviewed-by: kvn, iveresov
2014-11-13 09:19:46 +01:00
Tobias Hartmann
79be04020a
8056067: NodeHash debug variables are available in product build
...
Make NodeHash debug variables only available in debug/optimized build.
Reviewed-by: kvn, roland
2014-08-29 14:46:35 +02:00
Tobias Hartmann
70a55eac34
8054033: Remove unused references to Compile*
...
Removed unused references to Compile* missed by JDK-8034812.
Reviewed-by: kvn, roland
2014-08-05 09:58:52 +02:00
Tobias Hartmann
11eb4553c9
8040213: C2 does not put all modified nodes on IGVN worklist
...
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
2014-07-25 10:06:17 +02:00
Zoltan Majo
33058abb3f
8051303: 'optimized' build broken by JDK-8039425
...
Changed preprocessor directive in PhaseIterGVN::optimize()
Reviewed-by: kvn, anoll
2014-07-21 10:25:58 +02:00
Tobias Hartmann
2a0815a55e
8034812: remove IDX_INIT macro hack in Node class
...
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
2014-06-02 08:07:29 +02:00
Vladimir Kozlov
6bfc0288f3
8042786: Proper fix for 8032566
...
Check for overflow cases in range checks and collapse it if we can.
Reviewed-by: jrose, iveresov
2014-05-16 12:05:14 -07:00
David Chase
305ec3bd3f
8037816: Fix for 8036122 breaks build with Xcode5/clang
...
Repaired or selectively disabled offending formats; future-proofed with additional checking
Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00
Albert Noll
bce45e9222
Merge
2014-04-14 09:04:36 +00:00
Albert Noll
e2305182b5
8039425: Code cleanup: PhaseIterGVN::optimize()
...
This code cleanup aims at improving code readability.
Reviewed-by: kvn, roland
2014-04-14 10:57:07 +02:00
Albert Noll
7e1059b62d
8034216: assert(false) failed: infinite loop in PhaseIterGVN::optimize
...
Eagerly remove all castPP nodes in PhaseCCP to get type convergence in memnode.
Reviewed-by: kvn, roland
2014-04-11 11:33:00 +02:00
Morris Meyer
6db303a301
8001532: C2 node files refactoring
...
Split C2 node files into cast, convert, countbits, intrinsic, move, narrowptr and opaquenode classes
Reviewed-by: kvn, morris
2014-04-01 09:05:20 -07:00
Roland Westrelin
fa3b0a8f47
8031755: Type speculation should be used to optimize explicit null checks
...
Feed profiling data about reference nullness to type speculation.
Reviewed-by: kvn, iveresov
2014-03-31 09:08:53 +02:00
Roland Westrelin
c19a7e0fa3
8027422: assert(_gvn.type(obj)->higher_equal(tjp)) failed: cast_up is no longer needed
...
Type methods shouldn't always operate on speculative part
Reviewed-by: kvn, twisti
2014-01-24 09:31:53 +01:00
Mikael Vidstedt
a0da47fd66
8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
...
Copyright year updated for files modified during 2013
Reviewed-by: twisti, iveresov
2013-12-24 11:48:39 -08:00
Roland Westrelin
1b5bd82335
8024070: C2 needs some form of type speculation
...
Record unused type profile information with type system, propagate and use it.
Reviewed-by: kvn, twisti
2013-10-23 12:40:23 +02:00
Niclas Adlertz
be8c8aac48
8023691: Create interface for nodes in class Block
...
Create public methods for accessing the nodes in a block
Reviewed-by: kvn, roland
2013-08-26 12:50:23 +02:00
Niclas Adlertz
a235ecb344
8023003: Cleanup the public interface to PhaseCFG
...
Public methods that don't need to be public should be private.
Reviewed-by: kvn, twisti
2013-08-16 10:23:55 +02:00
Vladimir Kozlov
b4977e887a
6934604: enable parts of EliminateAutoBox by default
...
Resurrected autobox elimination code and enabled part of it by default.
Reviewed-by: roland, twisti
2013-05-08 15:08:01 -07:00
Vladimir Kozlov
848ccdbdfe
8004640: C2 assert failure in memnode.cpp: NULL+offs not RAW address
...
Always transform AddP nodes in IdealKit by calling _gvn.transform().
Reviewed-by: roland, twisti
2013-03-26 12:55:26 -07:00
Roland Westrelin
fe92862089
8007294: ReduceFieldZeroing doesn't check for dependent load and can lead to incorrect execution
...
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
2013-02-25 14:13:04 +01:00
Roland Westrelin
c401bf065d
7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob
...
Add support for expensive nodes.
Reviewed-by: kvn
2013-02-12 12:56:11 +01:00
Roland Westrelin
73d6d417be
8005071: Incremental inlining for JSR 292
...
Post parse inlining driven by number of live nodes.
Reviewed-by: twisti, kvn, jrose
2012-12-23 17:08:22 +01:00
Bharadwaj Yadavalli
2d2532e740
7092905: C2: Keep track of the number of dead nodes
...
Keep an (almost) accurate running count of the reachable (live) flow graph nodes.
Reviewed-by: kvn, twisti, jrose, vlivanov
2012-11-27 17:24:15 -08:00
Mikael Vidstedt
769dd50182
7197424: update copyright year to match last edit in jdk8 hotspot repository
...
Update copyright year to 2012 for relevant files
Reviewed-by: dholmes, coleenp
2012-10-09 10:09:34 -07:00
Bharadwaj Yadavalli
d5d2e78faa
7193318: C2: remove number of inputs requirement from Node's new operator
...
Deleted placement new operator of Node - node(size_t, Compile *, int).
Reviewed-by: kvn, twisti
2012-09-27 09:38:42 -07:00
Dean Long
62ce00b4ca
7147464: Java crashed while executing method with over 8k of dneg operations
...
Replace recursive method with iterative
Reviewed-by: kvn, twisti
2012-07-16 15:31:18 -04:00
Vladimir Kozlov
09b7902e14
7107042: assert(no_dead_loop) failed: dead loop detected
...
Use dead nodes elimination code in PhaseIdealLoop before executing EA.
Reviewed-by: never, twisti
2011-11-09 07:25:51 -08:00
Vladimir Kozlov
a46128d0dd
7081842: assert(Compile::current()->unique() < (uint)MaxNodeLimit) failed: Node limit exceeded
...
Add missing node limit check in IGVN optimizer
Reviewed-by: iveresov, never
2011-09-20 08:39:40 -07:00
Stefan Karlsson
8006fe8f75
6989984: Use standard include model for Hospot
...
Replaced MakeDeps and the includeDB files with more standardized solutions.
Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Vladimir Kozlov
7cc55737b6
6916062: assert(_inserts <= _insert_limit,"hash table overflow") in NodeHash::hash_insert
...
Missing check for not empty worklist when puting memory node back on worklist and expecting address type update.
Reviewed-by: never
2010-09-30 18:31:45 -07:00
Vladimir Kozlov
448b83e288
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
...
Use replace_node() method instead of subsume_node().
Reviewed-by: jrose, never
2010-06-28 14:54:39 -07:00
Erik Trimble
ba7c173659
6941466: Oracle rebranding changes for Hotspot repositories
...
Change all the Sun copyrights to Oracle copyright
Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
Changpeng Fang
35ca20c546
Merge
2009-10-16 14:08:44 -07:00
Tom Rodriguez
9b306d03ee
6885584: A particular class structure causes large allocation spike for jit
...
Reviewed-by: kvn
2009-10-07 15:38:37 -07:00
Xiomara Jayasena
15f08eb80e
6884624: Update copyright year
...
Update copyright for files that have been modified in 2009 through Septermber
Reviewed-by: tbell, ohair
2009-09-22 14:06:10 -07:00
Changpeng Fang
05c34e93bd
6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59)
...
Delay dead code elimination in set_req_X to make it safe
Reviewed-by: kvn, never
2009-08-17 12:11:06 -07:00
Christian Thalinger
05d1de7727
6810672: Comment typos
...
I have collected some typos I have found while looking at the code.
Reviewed-by: kvn, never
2009-02-27 13:27:09 -08:00
Vladimir Kozlov
37306315b2
6736417: Fastdebug C2 crashes in StoreBNode::Ideal
...
The result of step_through_mergemem() and remove_dead_region() is not checked in some cases.
Reviewed-by: never
2008-08-27 09:15:46 -07:00
Xiomara Jayasena
c96a95c4b8
6719955: Update copyright year
...
Update copyright year for files that have been modified in 2008
Reviewed-by: ohair, tbell
2008-07-02 12:55:16 -07:00
Coleen Phillimore
4a831d45f0
6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
...
Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv
Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
2008-04-13 17:43:42 -04:00
Vladimir Kozlov
fc0117cb9a
6674588: (Escape Analysis) Improve Escape Analysis code
...
Current EA code has several problems which have to be fixed.
Reviewed-by: jrose, sgoldman
2008-03-14 15:26:33 -07:00
Vladimir Kozlov
9ec574b7e6
6667605: (Escape Analysis) inline java constructors when EA is on
...
Java constructors should be inlined to be able scalar replace a new object
Reviewed-by: rasbold
2008-03-07 11:09:13 -08:00
J. Duke
8153779ad3
Initial load
2007-12-01 00:00:00 +00:00