Abhijit Saha
19fc2d4d88
Merge
2012-10-18 21:58:55 -07:00
Vladimir Kozlov
5f132a5ec3
Merge
2012-10-12 09:22:52 -07:00
Abhijit Saha
2f3ac59e81
Merge
2012-10-10 14:28:08 -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
Vladimir Ivanov
b1d745897b
8000313: C2 should use jlong for 64bit values
...
Replace all occurrences of long with jlong in C2 code.
Reviewed-by: kvn, twisti
2012-10-08 13:02:13 -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
Vladimir Kozlov
03d65ced3e
7198606: Improve VM optimization
...
Remove incorrect code in OptimizeFill optimization.
Reviewed-by: roland, twisti
2012-09-19 13:58:31 -07:00
Vladimir Kozlov
da65cc4532
7160161: Missed safepoint in non-Counted loop
...
Do not remove safepoints during peeling optimization.
Reviewed-by: twisti
2012-08-29 13:02:40 -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
61068411fa
7054211: No loop unrolling done in jdk7b144 for a test update() while loop
...
Restore unrolling code for CaffeineMark.
Reviewed-by: never
2011-09-07 12:58:42 -07:00
Vladimir Kozlov
52f678435a
7077439: Possible reference through NULL in loopPredicate.cpp:726
...
Use cl->is_valid_counted_loop() check.
Reviewed-by: never
2011-08-10 14:06:57 -07:00
Vladimir Kozlov
df8d608ac7
7068051: SIGSEGV in PhaseIdealLoop::build_loop_late_post
...
Removed predicate cloning from loop peeling optimization and from split fall-in paths.
Reviewed-by: never
2011-07-29 09:16:29 -07:00
Vladimir Kozlov
b3505a88a4
7044738: Loop unroll optimization causes incorrect result
...
Take into account memory dependencies when clonning nodes in clone_up_backedge_goo().
Reviewed-by: never
2011-06-28 15:24:29 -07:00
Vladimir Kozlov
d19a8f6e35
7052494: Eclipse test fails on JDK 7 b142
...
Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit.
Reviewed-by: never
2011-06-20 16:45:35 -07:00
Vladimir Kozlov
0aff6e35b8
7045693: java/util/EnumSet/EnumSetBash.java still failing intermittently
...
New limit for unrolled loop should be set only for zero trip guard and loop iteration test.
Reviewed-by: never
2011-05-21 11:44:31 -07:00
Vladimir Kozlov
0e10a5ad61
7044725: -XX:-UnrollLimitCheck -Xcomp : Exception: String index out of range: 29488
...
Fix problems in new RCE code.
Reviewed-by: never
2011-05-16 14:21:16 -07:00
Vladimir Kozlov
70dfd21e87
7043552: regression after 7042327
...
Generate Opaque2 node only during first unroll.
Reviewed-by: never
2011-05-10 12:57:21 -07:00
Vladimir Kozlov
8698030a91
7042327: assert(opaq->outcnt() == 1 && opaq->in(1) == limit)
...
Separate limit by Opaque2 node when calculating new limit for unrolled loop.
Reviewed-by: never
2011-05-05 21:06:14 -07:00
Vladimir Kozlov
1ac79543d0
5091921: Sign flip issues in loop optimizer
...
Fix integer overflow problem in the code generated by loop optimizer.
Reviewed-by: never
2011-05-04 13:12:42 -07:00
Vladimir Kozlov
2683d5390b
7039652: Performance regression after 7004547 changes
...
Use unrolled_count() to limit unrolling and use the stride check only for initial stride value.
Reviewed-by: never
2011-04-28 16:40:23 -07:00
John R Rose
41745904a3
Merge
2011-04-09 21:16:12 -07:00
Vladimir Kozlov
2096fd712c
7004555: Add new policy for one iteration loops
...
Add new policy for one iteration loops (mostly formal pre- loops).
Reviewed-by: never
2011-04-08 14:56:22 -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
3151573d39
7004547: regular loop unroll should not unroll more than max unrolling
...
Take into account that after unroll conjoined heads and tails will fold.
Reviewed-by: never
2011-04-04 19:02:36 -07:00
Tom Rodriguez
774ac503d0
7026957: assert(type2aelembytes(store->as_Mem()->memory_type(), true) == 1 << shift->in(2)->get_int()) failed
...
Reviewed-by: kvn, jrose
2011-04-04 12:57:04 -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
0493606cdd
7032696: Fix for 7029152 broke VM
...
StrIntrinsicNode::Ideal() should not optimize memory during Parse.
Reviewed-by: jrose, never
2011-03-31 13:22:34 -07:00
Vladimir Kozlov
3ecb9f51df
7029152: Ideal nodes for String intrinsics miss memory edge optimization
...
In Ideal() method of String intrinsics nodes look for TypeAryPtr::CHARS memory slice if memory is MergeMem. Do not unroll a loop with String intrinsics code.
Reviewed-by: never
2011-03-30 12:08:49 -07:00
Tom Rodriguez
5387ee459e
7024475: loop doesn't terminate when compiled
...
Reviewed-by: kvn
2011-03-27 00:00:14 -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
Tom Rodriguez
39d16839d3
6980792: Crash "exception happened outside interpreter, nmethods and vtable stubs (1)"
...
Reviewed-by: kvn
2010-10-07 21:40:55 -07:00
Tom Rodriguez
2e4e2602d7
6984979: OptimizeFill misses some cases with an odd memory graph
...
Reviewed-by: kvn
2010-09-15 20:25:37 -07:00
Tom Rodriguez
cf8bea660b
6982533: Crash in ~StubRoutines::jbyte_fill with AggressiveOpts enabled
...
Reviewed-by: kvn
2010-09-07 11:31:27 -07:00
Tom Rodriguez
08d9e03b81
4809552: Optimize Arrays.fill(...)
...
Reviewed-by: kvn
2010-08-27 17:33:49 -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
Tom Rodriguez
dac78c30b9
6930043: C2: SIGSEGV in javasoft.sqe.tests.lang.arr017.arr01702.arr01702.loop_forw(II)I
...
Reviewed-by: kvn
2010-03-17 16:40:25 -07:00
Vladimir Kozlov
667e7ff0c0
6930116: loop predication code does not handle If nodes with only one projection
...
Add check for iff->outcnt() < 2.
Reviewed-by: never
2010-02-25 22:58:43 -08:00
Tom Rodriguez
fbd5ca617d
6927049: assert(is_Loop(),"invalid node class")
...
Reviewed-by: kvn
2010-02-19 13:06:11 -08:00
Changpeng Fang
815db4fcba
6894779: Loop Predication for Loop Optimizer in C2
...
Loop predication implementation
Reviewed-by: never, kvn
2010-01-12 14:37:35 -08: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
Changpeng Fang
f981546f2d
6837146: Should perform unswitch before maximally unroll in loop transformation
...
Move loop unswitch before maximally unroll
Reviewed-by: never
2009-05-28 09:37:18 -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
7aae40a95f
6462850: generate biased locking code in C2 ideal graph
...
Inline biased locking code in C2 ideal graph during macro nodes expansion
Reviewed-by: never
2008-11-07 09:29:38 -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
Vladimir Kozlov
adce6fc49a
6667595: Set probability FAIR for pre-, post- loops and ALWAYS for main loop
...
Fix loop's probability. Add optimizations to avoid spilling. Change InlineSmallCode to product flag.
Reviewed-by: never
2008-10-02 08:37:44 -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
Erik Trimble
2d6f42d18c
Merge
2008-07-11 01:14:44 -07:00