Roland Westrelin
71e31ee0b9
8073480: C2 should optimize explicit range checks
...
Explicit range checks should be recognized by C2
Reviewed-by: kvn, vlivanov
2015-03-17 10:06:31 +01:00
Roland Westrelin
07537703cc
8048170: Test closed/java/text/Normalizer/ConformanceTest.java failed
...
PhaseIdealLoop::split_if_with_blocks_post() shoulnd't reorder range checks adjusted by range check smearing
Reviewed-by: kvn, jrose
2014-12-04 14:34:11 +01:00
Vladimir Ivanov
5a00d5f6b5
8058148: MaxNodeLimit and LiveNodeCountInliningCutoff
...
Reviewed-by: kvn, roland
2014-11-24 07:29:03 -08: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
Vladimir Kozlov
b571b4214a
8046516: Segmentation fault in JVM (easily reproducible)
...
Place new nodes on the previous loop exit in reorg_offsets().
Reviewed-by: roland
2014-06-12 10:15:43 -07:00
Vladimir Kozlov
0853423f46
8046275: Fastdebug build failing on jdk9/hs/ control jobs after pulling some hs-comp changes
...
Add missing check for Opaque nodes from loop predicates in clone_loop().
Reviewed-by: iveresov
2014-06-09 15:42:31 -07: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
8badeecc2c
8039050: Crash in C2 compiler at Node::rematerialize
...
Added missing calls to record_for_igvn() in loop opts. Added verification of def-use domination.
Reviewed-by: iveresov
2014-04-15 14:34:48 -07: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
Rickard Bäckman
0b85ee832e
8027754: Enable loop optimizations for loops with MathExact inside
...
Reviewed-by: kvn, iveresov
2014-01-23 12:08:28 +01: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
Rickard Bäckman
0ef4539a9f
8028198: SIGSEGV in PhaseIdealLoop::build_loop_late_post
...
Reviewed-by: iveresov, kvn
2013-11-12 13:47:57 +01:00
Roland Westrelin
3f8ae3e9b9
8024069: replace_in_map() should operate on parent maps
...
Type information gets lost because replace_in_map() doesn't update parent maps
Reviewed-by: kvn, twisti
2013-10-19 12:16:43 +02:00
Rickard Bäckman
441f1d74cf
8024924: Intrinsify java.lang.Math.addExact
...
Reviewed-by: kvn, twisti
2013-09-27 08:39:19 +02:00
Vladimir Kozlov
ea54d8f3f0
8014811: loopTransform.cpp assert(cmp_end->in(2) == limit) failed
...
Stop current iteration of loop opts if partial_peel() failed and it created node clones outside processed loop.
Reviewed-by: roland
2013-05-22 09:02:43 -07:00
Morris Meyer
25c4a7fccd
8008811: [parfait] Null pointer deference in hotspot/src/share/vm/opto/loopopts.cpp
...
Add guarantee() checks
Reviewed-by: kvn
2013-03-19 12:15:35 -07: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
Vladimir Kozlov
5f132a5ec3
Merge
2012-10-12 09:22:52 -07: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
Roland Westrelin
61eb5a0549
7054512: Compress class pointers after perm gen removal
...
Support of compress class pointers in the compilers.
Reviewed-by: kvn, twisti
2012-10-09 10:11:38 +02: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
Vlaidmir Ivanov
dd85e2f356
7173340: C2: code cleanup: use PhaseIterGVN::replace_edge(Node*, int, Node*) where applicable
...
Replace frequent C2 optimizer code patterns with new methods calls
Reviewed-by: kvn, twisti
2012-06-12 16:23:31 -07:00
Vladimir Kozlov
f3f36ae094
7064302: JDK7 build 147 crashed after testing my java 6-compiled web app
...
Don't split CMove node if it's control edge is different from split region.
Reviewed-by: never
2012-01-12 12:28:59 -08: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
669fa7396d
7097546: Optimize use of CMOVE instructions
...
Avoid CMove in a loop if possible. May generate CMove if it could be moved outside a loop.
Reviewed-by: never
2011-10-26 06:08:56 -07:00
Vladimir Kozlov
dd43791e4a
7070134: Hotspot crashes with sigsegv from PorterStemmer
...
Do not move data nodes which are attached to a predicate test to a dominating test.
Reviewed-by: never
2011-07-26 19:35:23 -07:00
Vladimir Kozlov
6c8fc4b347
7039586: test/java/util/Collections/Rotate.java failing with hs21-b09
...
A predicate should not be moved in partial peel optimization since it will invalidate jvm state of its uncommon trap.
Reviewed-by: never
2011-04-26 12:14:22 -07:00
John R Rose
41745904a3
Merge
2011-04-09 21:16:12 -07:00
Erik Trimble
c9e484d473
7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass
...
Update the copyright to be 2010 on all changed files in OpenJDK
Reviewed-by: ohair
2011-04-05 14:12:31 -07:00
Vladimir Kozlov
00eca5e982
7004535: Clone loop predicate during loop unswitch
...
Clone loop predicate for clonned loops
Reviewed-by: never
2011-04-02 10:54:15 -07:00
Vladimir Kozlov
3de260da41
7008866: Missing loop predicate for loop with multiple entries
...
Add predicates when loop head bytecode is parsed instead of when back branch bytecode is parsed.
Reviewed-by: never
2011-03-21 11:28:14 -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
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
Vladimir Kozlov
1a1e145498
6924097: assert((_type == Type::MEMORY) == (_adr_type != 0),"adr_type for memory phis only")
...
Use PhiNode::make_blank(r, n) method to construct the phi.
Reviewed-by: never
2010-02-09 10:21:06 -08:00
Erik Trimble
e846382e12
Merge
2009-07-29 16:00:35 -07:00
Xiomara Jayasena
a63ef10004
6862919: Update copyright year
...
Update copyright for files that have been modified in 2009, up to 07/09
Reviewed-by: tbell, ohair
2009-07-28 12:12:40 -07:00
Hiroshi Yamauchi
a24ea182cc
6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post
...
Co-authored-by: Chuck Rasbold <rasbold@google.com>
Reviewed-by: never, kvn
2009-07-15 13:37:35 -07:00
Changpeng Fang
7a36ade1ec
6855164: SIGSEGV during compilation of method involving loop over CharSequence
...
Don not split a block if it contains a FastLockNode with a PhiNode input.
Reviewed-by: kvn, never
2009-07-02 16:18:19 -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
Tom Rodriguez
043fde10e5
6743188: incomplete fix for 6700047 C2 failed in idom_no_update
...
Reviewed-by: rasbold, kvn
2008-10-03 13:58:20 -07:00
Tom Rodriguez
4b1e242299
6384206: Phis which are later unneeded are impairing our ability to inline based on static types
...
Reviewed-by: rasbold, jrose
2008-09-17 12:59:52 -07:00
Tom Rodriguez
3d9b153464
6738933: assert with base pointers must match with compressed oops enabled
...
Reviewed-by: kvn, rasbold
2008-09-02 15:03:05 -07:00
Vladimir Kozlov
897278fce0
6731641: assert(m->adr_type() == mach->adr_type(),"matcher should not change adr type")
...
Fixed few addP node type and narrow oop type problems.
Reviewed-by: rasbold, never
2008-08-01 10:06:45 -07:00
Vladimir Kozlov
50c4a23cac
6726999: nsk/stress/jck12a/jck12a010 assert(n != null,"Bad immediate dominator info.")
...
Escape Analysis fixes.
Reviewed-by: never, rasbold
2008-07-28 17:12:52 -07:00
Tom Rodriguez
20de63f383
6700047: C2 failed in idom_no_update
...
Partial peeling shouldn't place clones into loop
Reviewed-by: kvn
2008-07-25 15:54:23 -07:00
Erik Trimble
2d6f42d18c
Merge
2008-07-11 01:14:44 -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