Bharadwaj Yadavalli
f8d0a6ff28
Merge
2015-04-30 18:14:58 -04:00
Roland Westrelin
3cdae26a75
8078426: mb/jvm/compiler/InterfaceCalls/testAC2 - assert(predicate_proj == 0L) failed: only one predicate entry expected
...
Split if finds predicates on several incoming paths when unswitched's loops are optimized out
Reviewed-by: kvn
2015-04-29 14:43:12 -07:00
Severin Gehwolf
add46c476a
8078666: JVM fastdebug build compiled with GCC 5 asserts with "widen increases"
...
Do the math on the unsigned type where overflows are well defined
Reviewed-by: kvn, aph
2015-04-29 12:23:48 -07:00
Zoltan Majo
a452b030ce
8068945: Use RBP register as proper frame pointer in JIT compiled code on x86
...
Introduce the PreserveFramePointer flag to control if RBP is used as the frame pointer or as a general purpose register.
Reviewed-by: kvn, roland, dlong, enevill, shade
2015-04-27 10:49:43 +02:00
Aleksey Shipilev
dc67bb0a0e
8076987: C1 should support conditional card marks (UseCondCardMark)
...
Reviewed-by: iveresov, roland
2015-04-22 19:10:03 +03:00
Daniel D. Daugherty
9b1474b512
Merge
2015-07-02 14:20:36 -07:00
Bertrand Delsart
5aec2dc9fc
8087333: Optionally Pre-Generate the HotSpot Template Interpreter
...
Optional support for pregenerated template interpreter
Reviewed-by: coleenp, dholmes, kvn
2015-07-01 10:53:26 +02:00
Calvin Cheung
7bb3af5d16
Merge
2015-04-17 14:37:20 -07:00
Daniel D. Daugherty
884f0d320f
8073165: Contended Locking fast exit bucket
...
JEP-143/JDK-8073165 Contended Locking fast exit bucket
Co-authored-by: Dave Dice <dave.dice@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Reviewed-by: dholmes, acorn, dice, dcubed
2015-04-16 08:23:26 -07:00
Roland Westrelin
cb7a08139b
8074676: java.lang.invoke.PermuteArgsTest.java fails with "assert(is_Initialize()) failed: invalid node class"
...
After guards in Arrays.copyOf() intrinsic, control may become top
Reviewed-by: kvn, vlivanov
2015-04-15 11:01:56 +02:00
Staffan Larsen
47d774ab34
8077364: "if( !this )" construct prevents build on Xcode 6.3
...
Reviewed-by: stefank, simonis
2015-04-15 09:34:46 +02:00
Vladimir Ivanov
5ff12acb9d
8062280: C2: inlining failure due to access checks being too strict
...
Reviewed-by: kvn
2015-04-14 18:11:06 +03:00
Vladimir Kozlov
81bb7521bd
8076523: assert(((ABS(iv_adjustment_in_bytes) % elt_size) == 0)) fails in superword.cpp
...
Check that offset % mem_oper_size == 0 when alignment is verified during vectorization.
Reviewed-by: iveresov
2015-04-02 17:16:39 -07: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
ef217cba65
8076094: CheckCastPPNode::Value() has outdated logic for constants
...
Outdated logic for constants in CheckCastPPNode::Value()
Reviewed-by: kvn, vlivanov
2015-03-23 14:21:17 +01:00
Michael C Berg
9e55e44c85
8074981: Integer/FP scalar reduction optimization
...
Add scalar reduction optimization to C2 to take advantage of vector instructions in modern x86 CPUs.
Reviewed-by: kvn, twisti
2015-04-01 18:07:50 -07:00
Roland Westrelin
7c5d30b0e3
8075587: Compilation of constant array containing different sub classes crashes the JVM
...
Meet of 2 constant arrays result in bottom
Reviewed-by: kvn
2015-03-27 13:47:33 +01:00
Andrew Haley
1dfbc44c1f
8026049: (bf) Intrinsify ByteBuffer.put{Int, Double, Float, ...} methods
...
Use unaligned Unsafe loads and stores for ByteBuffer access on platforms which support unaligned access. Add intrinsics for Unsafe.{get,put}-X-Unaligned methods.
Reviewed-by: dholmes, jrose, psandoz, kvn
2015-03-31 12:31:18 -07:00
Roland Westrelin
61aa1cfdef
8075921: assert assert(allocx == alloc) fails in library_call.cpp
...
Control becomes top after arraycopy guards and confuses tighly coupled allocation logic
Reviewed-by: kvn, vlivanov
2015-03-27 08:58:45 +01:00
Roland Westrelin
1c38036fd8
8075922: assert(t == t_no_spec) fails in phaseX.cpp
...
Subgraph becomes dead RegionNode::Ideal() but is not destroyed
Reviewed-by: kvn, vlivanov
2015-03-25 14:25:53 +01:00
Zoltan Majo
90e9ec4634
Merge
2015-03-27 09:02:53 +01:00
Jesper Wilhelmsson
5f5b27baba
Merge
2015-03-23 22:08:14 +01:00
Vladimir Ivanov
b64245d163
Merge
2015-03-20 20:32:07 +00:00
Vladimir Ivanov
879642dc68
8074548: Never-taken branches cause repeated deopts in MHs.GWT case
...
Reviewed-by: jrose, kvn
2015-03-20 11:41:34 -07:00
Vladimir Ivanov
43dbb43fb5
8075263: MHI::checkCustomized isn't eliminated for inlined MethodHandles
...
Reviewed-by: jrose, kvn
2015-03-20 11:41:34 -07:00
Michael Haupt
fd2f61a53f
8004073: Implement C2 Ideal node specific dump() method
...
Add Node::dump_rel() to dump a node and its related nodes (the notion of "related" depends on the node at hand); add Node::dump_comp() to dump a node in compact representation; add Node::dump_rel_comp() to dump a node and its related nodes in compact representation; add the required machinery; extend some C2 IR nodes with compact and related dumping
Reviewed-by: kvn, roland
2015-03-18 16:16:30 +01:00
Tobias Hartmann
e834a48100
8130309: Need to bailout cleanly if creation of stubs fails when codecache is out of space
...
Check for failed expansion of stub section in code buffer and bailout.
Reviewed-by: kvn, adinn, dlong, roland, twisti
2015-07-29 08:05:21 +02:00
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
0258ef4abc
8073866: Fix for 8064703 is not sufficient
...
Side effects between allocation and arraycopy can be reexecuted, unreachable uninitialized array can be seen by GCs
Reviewed-by: kvn, vlivanov
2015-03-16 12:24:06 +01:00
Igor Ignatyev
f51a895f42
Merge
2015-03-14 16:13:48 +00:00
Igor Ignatyev
140bf2be86
8073607: add trace events for inlining
...
Reviewed-by: kvn, fzhinkin, mgronlun
2015-03-13 21:53:13 +03:00
Joseph Provino
67fb17a658
8067891: Remove vestigal G1SATBCT barrier set kind
...
Remove all case statements specifying G1SATBCT
Reviewed-by: tschatzl, kbarrett
2015-03-23 12:18:20 +01:00
Dean Long
aa21fdd0c0
8072383: resolve conflicts between open and closed ports
...
Refactor close to remove references to closed ports
Reviewed-by: kvn, simonis, dholmes
2015-02-24 17:23:53 -05:00
Alejandro Murillo
cf1f3d308b
Merge
2015-03-06 04:58:52 -08:00
Zoltan Majo
78b1c29418
Merge
2015-03-06 08:53:22 +01:00
Roland Westrelin
2c277304d8
8073957: assert(ary_src != 0) failed: not an array or instance?
...
ArrayCopyNode going dead needs better validation of inputs
Reviewed-by: kvn, vlivanov
2015-03-03 12:30:07 +01:00
Kim Barrett
40d3986051
8069016: Add BarrierSet downcast support
...
Add FakeRttiSupport utility and use to provide barrier_set_cast.
Reviewed-by: jmasa, sangheki
2015-02-27 19:52:48 -05:00
Vladimir Kozlov
239370b736
Merge
2015-02-26 10:56:54 -08:00
Roland Westrelin
25a0458907
8073796: assert(check_obj_alignment(result)) failed: address not aligned: ..
...
Arrays.copyOf intrinsic can deoptimize with uninitialized new array
Reviewed-by: kvn
2015-02-25 12:33:43 +01:00
Zoltan Majo
b5f763492e
Merge
2015-02-28 12:33:50 +00:00
Stefan Anzinger
292cc73546
8073670: TypeF::eq and TypeD::eq do not handle NaNs correctly
...
Change TypeF:eq and TypeD:eq to compare NaN values using a bitwise comparison.
Reviewed-by: kvn
2015-02-27 13:21:05 +01:00
Roland Westrelin
3a627c0d83
8073792: assert((get_length_if_constant(phase) == -1) == !ary_src->size()->is_con()) failed: inconsistent
...
Assert in array copy code broken when array size becomes known during igvn
Reviewed-by: kvn, vlivanov
2015-02-25 10:44:38 +01:00
Vladimir Ivanov
24be5c951c
Merge
2015-02-24 17:14:29 +00:00
Vladimir Ivanov
dad72d8a2b
Merge
2015-02-24 07:39:22 -08:00
Roland Westrelin
f4f9769cd2
8073184: Compile of java.lang.Integer::getChars fails with LoopLimitCheck = false after 8054478
...
CastII that guards counted loops confuses range check elimination with LoopLimitCheck off
Reviewed-by: kvn, iveresov
2015-02-24 15:23:05 +01:00
Volker Simonis
3f7a17902e
8073624: Fix waring "converting to non-pointer type 'bool' from NULL" in arraycopynode.cpp
...
Reviewed-by: roland
2015-02-23 10:32:17 +01:00
Vladimir Ivanov
93f9344ff4
Merge
2015-02-19 11:12:59 -08:00
Jesper Wilhelmsson
5c18821ea5
Merge
2015-02-19 12:56:50 +01:00
Roland Westrelin
88848bd9e8
6912521: System.arraycopy works slower than the simple loop for little lengths
...
Convert small array copies to series of loads and stores
Reviewed-by: kvn, vlivanov
2015-02-18 18:14:07 +01:00
Igor Veresov
f96ca50eca
Merge
2015-02-17 21:46:39 +00:00