1465 Commits

Author SHA1 Message Date
Tobias Hartmann
66fb50e7a2 8180617: Null pointer dereference in InitializeNode::complete_stores
Fixed a missing null check on the return value of InitializeNode::allocation() found by Parfait.

Reviewed-by: zmajo
2017-05-22 09:16:46 +02:00
Roland Westrelin
aa386ac45b 8179070: nashorn+octane's box2d causes c2 to crash with "Bad graph detected in compute_lca_of_uses"
CiTypeFlow speculates field is null but parsing uses non null constant because of concurrent class initialization

Reviewed-by: thartmann
2017-04-25 09:37:24 +02:00
Igor Veresov
34dec39bc2 8178047: Aliasing problem with raw memory accesses
Require equal bases when unaliasing offsets for raw accesses

Reviewed-by: kvn
2017-04-19 18:02:26 -07:00
Coleen Phillimore
1457155505 8168699: Validate special case invocations
Reviewed-by: acorn, kvn, lfoltan, ctornqvi, ahgross, vlivanov
2016-12-01 14:21:31 -05:00
Dean Long
f274b01820 8158168: Missing bounds checks for some String intrinsics
Reviewed-by: vlivanov, thartmann, sherman
2017-04-12 16:36:13 -04:00
Jesper Wilhelmsson
aa49aa7eab Merge 2017-03-30 19:55:04 +02:00
Tobias Hartmann
3e59334eef 8177095: Range check dependent CastII/ConvI2L is prematurely eliminated
Disabled narrowing of range check dependent CastIIs (either through the CastII(AddI) optimization or through CastIINode::Ideal).

Reviewed-by: vlivanov, kvn
2017-03-27 10:12:29 +02:00
Phil Race
5506a3b126 8177346: hotspot change for 8176513 breaks jdk9 build on Ubuntu 16.04
Reviewed-by: dholmes, kvn, vlivanov
2017-03-24 08:56:04 -07:00
Martin Doerr
16a222c4ff 8176518: C2: Invalid ImplicitNullChecks with non-protected heap base
Avoid generating implicit null checks if heap base is not protected

Reviewed-by: zmajo
2017-03-20 11:32:30 +01:00
Roland Westrelin
23ef045ab2 8176513: Poor code quality for ByteBuffers
Relaxes the condition under which MemBarCPUOrder nodes are added around unsafe accesses.

Reviewed-by: vlivanov, kvn, jrose
2017-03-15 18:18:04 -07:00
Volker Simonis
1cd78903a8 8176505: Wrong assertion 'should be an array copy/clone' in arraycopynode.cpp
Reviewed-by: thartmann, roland
2017-03-13 16:07:17 +01:00
Zoltan Majo
b3914e7e21 8175340: Possible invalid memory accesses due to ciMethodData::bci_to_data() returning NULL
Check values returned by ciMethodData::bci_to_data() where necessary.

Reviewed-by: kvn
2017-03-09 14:27:21 +01:00
Rahul Raghavan
b2783bb80a 8175345: Reported null pointer dereference defect groups
Added required explicit NULL checks

Reviewed-by: thartmann, kvn
2017-03-09 00:16:51 -08:00
Nils Eliasson
de10f56d52 8164954: split_if creates empty phi and region nodes
Don't split if all edges will be moved to new phi

Reviewed-by: kvn, vlivanov
2017-03-06 14:08:52 +01:00
Roland Westrelin
6a5e6f2ae1 8174164: SafePointNode::_replaced_nodes breaks with irreducible loops
Reviewed-by: kvn
2017-02-15 17:26:37 -08:00
Roman Kennke
96846a4105 8172434: CompareAndExchangeObject inserts two pre-barriers
Reviewed-by: kvn
2017-02-14 12:31:11 -08:00
Vladimir Ivanov
19f9a33953 8174721: C1: Inlining through MH invokers/linkers in unreachable code is unsafe
Reviewed-by: iveresov
2017-02-10 20:45:39 +03:00
Dmitry Chuyko
1acb306859 8166110: Inlining through MH invokers/linkers in unreachable code is unsafe
Reviewed-by: vlivanov
2017-02-09 19:00:48 +03:00
Rahul Raghavan
a44e07e4b3 8144484: assert(no_dead_loop) failed: dead loop detected
Bailout early without splitting Phi through memory merges if TOP inputs present for Phi Nodes

Reviewed-by: thartmann, kvn
2017-02-03 00:46:58 -08:00
Vladimir Ivanov
81e25c58fb 8173404: C2: wrong nmethod dependency can be recorded for CallSite.target
Reviewed-by: kvn
2017-01-30 16:04:22 +03:00
Roland Westrelin
9b352ebabe 8173147: [ctw] fails during compilation of sun.security.krb5.internal.crypto.RsaMd5DesCksumType::calculateKeyedChecksum with " graph should be schedulable"
Loads generated at uncommon trap from eliminated arraycopy have incorrect memory state

Reviewed-by: thartmann
2017-01-24 09:40:05 +01:00
Tobias Hartmann
a84b66b517 8172850: Anti-dependency on membar causes crash in register allocator due to invalid instruction scheduling
Regression test and additional asserts. The problem is fixed by 8087341.

Reviewed-by: kvn
2017-01-25 07:05:38 +01:00
Tobias Hartmann
0917fde85d 8173195: [BACKOUT] 8087341: C2 doesn't optimize redundant memory operations with G1
Backing out 8087341 due to 8172850. Will be re-implemented with 8173196.

Reviewed-by: kvn
2017-01-25 07:03:26 +01:00
Tobias Hartmann
a6092584f9 8172884: TraceOptoPipelining and TraceOptoOutput are broken
Compiler Control code needs not set the default values for the directive according to the flag value.

Reviewed-by: neliasso, redestad
2017-01-18 08:54:29 +01:00
Claes Redestad
450472a24a 8172169: Re-examine String field optionality
Reviewed-by: kvn, thartmann
2017-01-03 21:36:05 +01:00
Martin Doerr
2e0248d2fc 8172199: s390: Use same get_key_start_from_aescrypt_object implementation as PPC64
Reviewed-by: kvn
2017-01-03 17:17:14 +01:00
Dmitry Samersoff
c105d10fb0 8165496: assert(_exception_caught == false) failed: _exception_caught is out of phase
Two separate flags, exception_detected and exception_caught, replaced with one.

Reviewed-by: sspitsyn, coleenp, dholmes
2016-12-20 15:40:01 +03:00
Bharadwaj Yadavalli
2841c5eb2b 8171008: Integrate AOT compiler into JDK
Co-authored-by: Christian Thalinger <cthalinger@twitter.com>
Co-authored-by: Dean Long <dean.long@oracle.com>
Co-authored-by: Dmitrij Pochepko <dmitrij.pochepko@oracle.com>
Co-authored-by: Dmitry Chuyko <dmitry.chuyko@oracle.com>
Co-authored-by: Doug Simon <doug.simon@oracle.com>
Co-authored-by: Eric Caspole <eric.caspole@oracle.com>
Co-authored-by: Igor Ignatyev <igor.ignatyev@oracle.com>
Co-authored-by: Igor Veresov <igor.veresov@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Morris Meyer <morris.meyer@oracle.com>
Co-authored-by: Niclas Adlertz <niclas.adlertz@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Reviewed-by: erikj, mchung, psandoz, coleenp, iklam, stefank, simonis
2016-12-11 19:07:04 -08:00
Shrinivas Joshi
985cf43c19 8158012: Use SW prefetch instructions instead of BIS for allocation prefetches on SPARC Core S4
Reviewed-by: kvn
2016-12-07 09:29:28 -08:00
Roland Westrelin
96be8c0cc8 8170470: superword may miss reductions
Reviewed-by: kvn
2016-11-30 12:07:17 -08:00
Tobias Hartmann
5e29b0af21 8168996: C2 crash at postaloc.cpp:140 : assert(false) failed: unexpected yanked node
Prevent MemBarAcquire from keeping a LoadNNode alive by adding it to the worklist if it is the only user of a DecodeNNode.

Reviewed-by: kvn
2016-11-29 08:16:15 +01:00
Rahul Raghavan
c5b56dab55 8169201: Montgomery multiply intrinsic should use correct name
Corrected stubName to montgomery_multiply for inline_montgomeryMultiply()

Reviewed-by: aph, thartmann, zmajo
2016-11-10 23:26:56 -08:00
Volker Simonis
fcdc3eac28 8159611: C2: ArrayCopy elimination skips required parameter checks
Reviewed-by: kvn, zmajo, thartmann
2016-10-06 18:51:24 +02:00
Roland Westrelin
bedfd21b60 8167300: Scheduling failures during gcm should be fatal
Reviewed-by: kvn, mcberg
2016-10-10 17:04:42 +02:00
Tobias Hartmann
dd45be3f41 8168770: Fix for 8151988 causes performance regression on SPARC
Reversed and re-implemented fix for 8151988 to eagerly cut off control input of Div and Mod nodes.

Reviewed-by: kvn
2016-10-31 09:50:12 +01:00
Markus Grönlund
5ce7a44cf0 8168662: Intrinsic support for event based tracing needs explicit control dependency
Reviewed-by: kvn, rehn
2016-10-27 11:14:30 +02:00
Goetz Lindenmaier
da8430daf1 8166561: [s390] Adaptions needed for s390 port in C1 and C2
Reviewed-by: kvn
2016-09-22 18:29:15 +02:00
Rahul Raghavan
0520f59743 8165661: SPECjvm2008-crypto.signverify regression in 9-b105
Reverted part change done earlier for 8145322 -  removed the (CastII (AddI x const)) -> (AddI (CastII x) const) transformation

Reviewed-by: roland, kvn, thartmann
2016-10-21 13:07:32 -07:00
Nils Eliasson
1134c66f5e 8166377: is_compiled_by_jvmci hot in some profiles - improve nmethod compiler type detection
Refactor code removing virtual call

Reviewed-by: kvn, twisti
2016-10-21 20:12:47 +02:00
Markus Grönlund
1175b7f1c8 8166806: Add intrinsic support for writer used in event based tracing
Reviewed-by: kvn, egahlin
2016-10-21 16:20:18 +02:00
Vladimir Kozlov
28c75424e3 Merge 2016-10-14 08:54:02 -07:00
Roland Westrelin
a8c02b10fd 8166836: Elimination of clone's ArrayCopyNode may make compilation fail silently
Reviewed-by: vlivanov
2016-09-28 11:17:51 +02:00
Chuck Rasbold
f99a7c05c4 8166742: SIGFPE in C2 Loop IV elimination
Reviewed-by: kvn
2016-09-28 10:11:40 -07:00
Goetz Lindenmaier
969358fbb3 8166562: C2: Suppress relocations in scratch emit
Reviewed-by: kvn
2016-09-22 18:33:47 +02:00
Dean Long
e2e8ee17d0 Merge 2016-09-20 16:34:45 -04:00
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