1418 Commits

Author SHA1 Message Date
Dean Long
45204fc0bf Merge 2016-09-08 23:43:45 -04:00
Tobias Hartmann
d98c766949 Merge 2016-08-30 13:51:56 +00:00
Tobias Hartmann
97391177a8 8164480: Crash with assert(handler_address == SharedRuntime::compute_compiled_exc_handler(..) failed: Must be the same
Exception checking code needs to handle pre-allocated exceptions.

Reviewed-by: dnsimon, kvn
2016-08-30 13:24:26 +02:00
Zoltan Majo
00c9b389f6 8161720: Better byte behavior for off-heap data
Normalize boolean values read with Unsafe.

Reviewed-by: aph, simonis, jrose, psandoz
2016-08-30 09:30:16 +02:00
Igor Veresov
2b1aa4e8ae Merge 2016-08-26 14:47:52 -07:00
Jamsheed Mohammed C M
1f57e15997 8158639: C2 compilation fails with SIGSEGV
Fixed the jvms for callsite traps based on declared signature.

Reviewed-by: kvn, vlivanov, dlong
2016-08-25 02:10:03 -07:00
Vladimir Ivanov
d536ff4377 8155635: C2: Mixed unsafe accesses break alias analysis
Reviewed-by: jrose, kvn
2016-08-25 12:52:18 +03:00
Vladimir Ivanov
bf0209ffa9 8162101: C2: Handle "wide" aliases for unsafe accesses
Reviewed-by: kvn
2016-08-25 12:51:10 +03:00
Vivek Deshpande
82de2bf10e 8151988: Hotspot deoptimizes div/mod pair usage
Don't remove control edge of Mod node until DivMod node matching

Reviewed-by: kvn
2016-08-23 12:26:05 -07:00
Erik Gahlin
c98e599afa 8164523: Clean up metadata for event based tracing
Reviewed-by: mlarsson, mgronlun
2016-08-23 19:21:48 +02:00
Tobias Hartmann
913622a641 8038348: Instance field load is replaced by wrong data Phi
Store additional information in PhiNodes corresponding to known instance field values to avoid incorrect reusage.

Reviewed-by: kvn, vlivanov
2016-08-23 13:44:26 +02:00
Vladimir Kozlov
c6d82df571 8162496: missing precedence edge for anti_dependence
Fix Implicit Null Check optimization code.

Reviewed-by: roland, aph
2016-08-18 14:31:02 -07:00
Robbin Ehn
d67d71f44c 8163589: Add back class id intrinsic method for event based tracing
Reviewed-by: kvn, mgronlun
2016-09-01 08:30:17 +02:00
Tobias Hartmann
af8e1270cb 8136818: Test compiler/arraycopy/TestEliminatedArrayCopyDeopt.java fails with "m1 failed"
Added missing Op_StoreB check to ArrayCopyNode::may_modify_helper().

Reviewed-by: kvn
2016-08-04 10:34:34 +02:00
Vladimir Kozlov
7ffefd9bf6 Merge 2016-08-01 22:34:23 -07:00
Roland Westrelin
d9e45ac1ac 8161652: Crash with assert(ft == _type) failed in PhiNode::Value()
Use CastPP and CheckCastPP when NotNull and klass have to be casted on Phi with unique input.

Reviewed-by: kvn
2016-07-30 04:05:28 -07:00
Rickard Bäckman
a3cd491780 Merge 2016-07-29 08:17:43 +00:00
Rickard Bäckman
5ce5d9f4cc Merge 2016-07-29 09:23:05 +02:00
Tobias Hartmann
d50a3f5680 8162540: Crash in C2 escape analysis with assert: "node should be registered"
GetAndSet, CompareAndExchange and CompareAndSwap intrinsics emit unsafe accesses to oop fields.

Reviewed-by: kvn
2016-07-29 08:36:13 +02:00
Zoltan Majo
4f2663284a Merge 2016-07-28 08:19:35 +00:00
Dean Long
6376361bc9 8160742: Node::operator new invokes undefined behavior
Remove obsolete asserts

Reviewed-by: kvn
2016-07-27 10:56:01 -07:00
Roland Westrelin
8d9c39fa52 8162384: Performance regression: bimorphic inlining may be bypassed by type speculation
When speculation fails at a call fallback to profile data at the call site

Reviewed-by: kvn
2016-07-27 12:33:33 +02:00
Roland Westrelin
3636d8f3d5 8161147: jvm crashes when -XX:+UseCountedLoopSafepoints is enabled
Don't convert loop with safepoint on the backedge to Counted loop

Reviewed-by: kvn
2016-07-25 14:31:42 -07:00
David Holmes
5f1f4489ac 8157907: Incorrect inclusion of atomic.hpp instead of atomic.inline.hpp
Remove atomic.inline.hpp and move the contents back into atomic.hpp

Reviewed-by: stefank, pliden, simonis
2016-08-21 20:56:37 -04:00
Goetz Lindenmaier
da3339948e 8161258: Simplify including platform files
Include patform files with macros cpu_header() etc. Do various cleanups of macro usages. Remove _64/_32 from adlc generated files and platform .hpp files. Merge stubRoutines_x86*.hpp. Remove empty mutex_<os>* files.

Reviewed-by: dholmes, coleenp, kbarrett
2016-07-13 12:23:05 +02:00
Alejandro Murillo
ff1f1235ab Merge 2016-07-21 19:50:41 -07:00
Vladimir Ivanov
1208854be7 8155781: C2: opaque unsafe access triggers an assert
Reviewed-by: kvn, lmesnik, ppunegov
2016-07-21 20:18:11 +03:00
Patric Hedlin
eb9fccdfd7 8160942: Unused code in GraphKit::record_profiled_receiver_for_speculation
Fixed logic error; locally scoped 'maybe_null' w/initialiser is unused/dead

Reviewed-by: kvn
2016-07-13 12:10:22 +02:00
Richard Reingruber
aa7a85dcbf 8134434: JVM_DoPrivileged() fires assert(_exception_caught == false) failed: _exception_caught is out of phase
Explicitly set exception detected inside rethrow_C

Reviewed-by: goetz, sspitsyn
2016-07-13 10:51:19 +03:00
Andrew Haley
eded7ae794 8157306: Random infrequent null pointer exceptions in javac
Reviewed-by: kvn
2016-06-23 17:58:59 +00:00
Roland Westrelin
c52af628ab 8161651: Logic in ConnectionGraph::split_unique_types() wrongly assumes node always have memory input
Reviewed-by: thartmann, kvn
2016-07-18 20:45:51 +02:00
Rickard Bäckman
3d15529c03 Merge 2016-07-19 13:15:46 +02:00
Vladimir Ivanov
4c31d5f745 8160360: Mismatched field loads are folded in LoadNode::Value
Reviewed-by: kvn, thartmann
2016-07-06 15:05:28 +03:00
Tobias Hartmann
b64a4110b3 8159129: TestStringIntrinsicRangeChecks fails w/ No exception thrown for compressByte/inflateByte
Need to convert char offsets to byte offsets before range check.

Reviewed-by: vlivanov
2016-07-05 07:57:09 +02:00
Tobias Hartmann
9ab5f632b5 8160651: StubRoutines::_dtan does not restore callee save register rbx
Pop rbx before leaving stub.

Reviewed-by: vlivanov, vdeshpande
2016-07-04 09:14:02 +02:00
Tobias Hartmann
d99ab903b7 8160425: Vectorization with signalling NaN returns wrong result
Should not use doubles/floats for vector constants in the C code.

Reviewed-by: kvn, vlivanov
2016-06-30 08:24:51 +02:00
Dmitrij Pochepko
490625cd8b 8132318: -XX:TraceJumps is broken on Sparc
Reviewed-by: kvn, thartmann
2016-06-27 17:23:15 +03:00
Tobias Hartmann
4ab4c66c41 8159016: Over-unrolled loop is partially removed
Prevent over-unrolling of loops by computing upper bound for trip count.

Reviewed-by: kvn
2016-06-27 10:10:11 +02:00
Vladimir Kozlov
634a7fdebc Merge 2016-06-24 15:09:00 -07:00
Alejandro Murillo
f7095d870c Merge 2016-06-23 17:07:27 -07:00
Aleksey Shipilev
f6c1efe6ac 8156803: Turn StressLCM/StressGCM flags to diagnostic
Reviewed-by: kvn, ctornqvi
2016-06-22 13:29:09 +03:00
Carsten Varming
cc10eca0b0 8159720: Failure of C2 compilation with tiered prevents some C1 compilations
If C2 fails to compile a method with tiered compilation, then it should mark the method as not compileable on the C2 tier only.

Reviewed-by: twisti, thartmann
2016-06-20 08:11:22 -04:00
Tobias Hartmann
6294f0770b 8159715: Fix for 8072422 is incorrect
Fixed several issues introduced by 8072422.

Reviewed-by: zmajo, kvn
2016-06-20 09:32:44 +02:00
Zoltan Majo
cdc436922a 8157181: Compilers accept modification of final fields outside initializer methods
Track initialized final field updates; disable constant folding if an update is detected. Enforce final field update rules introduced by JVMS-7 (but only for JDK 9).

Reviewed-by: vlivanov, dnsimon, forax, never, kvn, coleenp
2016-06-15 14:27:58 +02:00
Aleksey Shipilev
c6c73deca4 8157726: VarHandles/Unsafe should support sub-word atomic ops
Reviewed-by: psandoz, vlivanov, lagergren
2016-06-15 11:21:36 +03:00
Tobias Hartmann
3fddb36924 8159244: Partially initialized string object created by C2's string concat optimization may escape
Emit release barrier after String creation to prevent partially initialized object from escaping.

Reviewed-by: kvn
2016-06-15 07:58:56 +02:00
Tobias Hartmann
35f9db149b 8156760: VM crashes if -XX:-ReduceInitialCardMarks is set
Fixed several compiler crashes with disabled ReduceInitialCardMarks.

Reviewed-by: roland, minqi, dlong, tschatzl, kvn
2016-06-02 08:46:52 +02:00
Tobias Hartmann
d1cfec7f7e 8155046: Parse::Block construction using undefined behavior
Blocks should be created via constructor and placement new.

Reviewed-by: kvn
2016-06-01 14:22:18 +02:00
Kim Barrett
83dbb0faba 8156548: gc/gctests/StringInternSyncWithGC2 fails with Test level exit status: 151
Avoid repeated verification.

Reviewed-by: jmasa, drwhite
2016-05-25 13:46:05 -04:00
Gerard Ziemski
f1c490f5fa 8152856: Xcode 7.3 -Wshift-negative-value compile failure on Mac OS X
Implement _lh_array_tag_type_value as const, not enum.

Reviewed-by: vlivanov, minqi
2016-05-24 12:42:43 -05:00