Jesper Wilhelmsson
51e14f2e2a
Merge
2021-01-14 01:29:47 +00:00
Nils Eliasson
5567530916
8258272: LoadVectorMaskedNode can't be replaced by zero con
...
Reviewed-by: chagedorn, vlivanov
2021-01-13 09:16:08 +00:00
Roberto Castañeda Lozano
417e1d1a4e
8259061: C2: assert(found) failed: memory-writing node is not placed in its original loop or an ancestor of it
...
Remove assertion that is too general, that is, it can fail on compilations where
C2 generates correct code otherwise.
Reviewed-by: chagedorn, thartmann, kvn
2021-01-13 07:22:30 +00:00
Xiaohong Gong
1cf2378bda
8259353: VectorReinterpretNode is incorrectly optimized out
...
Reviewed-by: vlivanov, njian
2021-01-13 05:48:08 +00:00
Aleksey Shipilev
4697cfa4b0
8259576: Misplaced curly brace in Matcher::find_shared_post_visit
...
Reviewed-by: lucy, thartmann
2021-01-12 10:52:36 +00:00
Christian Hagedorn
a3561ae8a4
8258243: C2: assert failed ("Bad derived pointer") with -XX:+VerifyRegisterAllocator
...
Reviewed-by: kvn, thartmann
2021-01-12 08:18:45 +00:00
Harold Seigel
cf3e4bfdb5
8258838: Remove JVM option UseStackBanging
...
Reviewed-by: dholmes, coleenp, kvn
2021-01-11 18:18:13 +00:00
Jesper Wilhelmsson
56a354eb55
Merge
2021-01-07 23:51:21 +00:00
Jesper Wilhelmsson
555641ede5
Merge
2021-01-07 21:17:35 +00:00
Roberto Castañeda Lozano
bc56541424
8256535: C2: randomize CCP processing order for stress testing
...
Add 'StressCCP' option to randomize the selection of the node to be examined in
each CCP iteration.
Reviewed-by: chagedorn, kvn, thartmann
2021-01-07 20:43:48 +00:00
Roberto Castañeda Lozano
d8ad63019a
8258772: Some runtime/cds tests fail with +LogCompilation or +StressX
...
Emit warning about TraceDependencies results in
ClassHierarchyWalker::count_find_witness_calls() only if TraceDependencies is
actually enabled. Use standard warning() function instead of ad hoc printing.
Remove warning about using Stress(LCM|GCM|IGVN) without LogCompilation in
Compile::Compile(), and add the information to the description of the StressSeed
option instead. These changes prevent false test failures when using
LogCompilation or Stress(LCM|GCM|IGVN).
Reviewed-by: chagedorn, kvn, thartmann
2021-01-07 18:57:58 +00:00
Christian Hagedorn
c1fb521694
8259227: C2 crashes with SIGFPE due to a division that floats above its zero check
...
Reviewed-by: kvn, thartmann
2021-01-07 15:02:45 +00:00
Tobias Hartmann
0e6de4eb57
8259339: AllocateUninitializedArray C2 intrinsic fails with void.class input
...
Reviewed-by: kvn, chagedorn
2021-01-07 12:15:23 +00:00
Aleksey Shipilev
ad45678719
8258558: Revert changes for JDK-8252505 and related issues
...
Reviewed-by: kvn
2021-01-06 13:27:57 +00:00
Wang Huang
554e60c400
8258989: JVM is failed to inline in jdk.internal.vm.vector.VectorSupport::convert
...
Co-authored-by: He Xuejin <hexuejin2@huawei.com>
Reviewed-by: vlivanov, thartmann
2021-01-06 01:49:15 +00:00
Roland Westrelin
6775113ce8
8258393: Shenandoah: "graph should be schedulable" assert failure
...
Reviewed-by: rkennke, thartmann
2021-01-05 13:06:54 +00:00
Christian Hagedorn
9f1516492c
8259049: Uninitialized variable after JDK-8257513
...
Reviewed-by: kvn, thartmann
2021-01-05 09:54:18 +00:00
Hao Sun
dd8996c5f5
8258946: Fix optimization-unstable code involving signed integer overflow
...
Reviewed-by: thartmann, kvn
2021-01-05 07:31:44 +00:00
Ioi Lam
5ea960728c
8258459: Decouple gc_globals.hpp from globals.hpp
...
Reviewed-by: lfoltan, coleenp
2021-01-05 05:57:08 +00:00
Claes Redestad
9d160aa1b7
8257815: Replace global log2 functions with efficient implementations
...
Reviewed-by: kbarrett, stefank
2021-01-04 21:01:25 +00:00
Jesper Wilhelmsson
f2bad3a0be
Merge
2020-12-22 21:16:59 +00:00
Vladimir Ivanov
772addfd24
8258790: C2: Crash on empty macro node list
...
Reviewed-by: kvn, chagedorn
2020-12-22 12:12:21 +00:00
Xin Liu
30b9ff660f
8258653: CallJavaNode::_bci is not in use
...
Reviewed-by: kvn, vlivanov
2020-12-21 23:27:33 +00:00
Roberto Castañeda Lozano
4e8338eb13
8255763: C2: OSR miscompilation caused by invalid memory instruction placement
...
Disable GCM hoisting of memory-writing nodes for irreducible CFGs. This prevents
GCM from wrongly "hoisting" stores into descendants of their original loop. Such
an "inverted hoisting" can happen due to CFGLoop::compute_freq()'s inaccurate
estimation of frequencies for irreducible CFGs.
Extend CFG verification code by checking that memory-writing nodes are placed in
either their original loop or an ancestor.
Add tests for the reducible and irreducible cases. The former was already
handled correctly before the change (the frequency estimation model prevents
"inverted hoisting" for reducible CFGs), and is just added for coverage.
This change addresses the specific miscompilation issue in a conservative way,
for simplicity and safety. Future work includes investigating if only the
illegal blocks can be discarded as candidates for GCM hoisting, and refining
frequency estimation for irreducible CFGs.
Reviewed-by: kvn, chagedorn
2020-12-21 13:04:24 +00:00
Christian Hagedorn
8e42efaada
8257513: C2: assert((constant_addr - _masm.code()->consts()->start()) == con.offset())
...
Reviewed-by: kvn, thartmann
2020-12-21 08:06:48 +00:00
Igor Veresov
7f92d187b1
8258553: Limit number of fields in instance to be considered for scalar replacement
...
Reviewed-by: kvn, vlivanov
2020-12-18 21:08:04 +00:00
Jatin Bhateja
c11525a45e
8257772: Vectorizing clear memory operation using AVX-512 masked operations
...
Reviewed-by: thartmann, kvn
2020-12-17 04:42:19 +00:00
Jesper Wilhelmsson
11bd7a814f
Merge
2020-12-17 03:04:19 +00:00
Ioi Lam
59f4c4aad5
8258075: Use auto variable declarations for enum iteration
...
Reviewed-by: jrose, ccheung
2020-12-16 19:39:24 +00:00
Christian Hagedorn
ce36aeaac3
8257822: C2 crashes with SIGFPE due to a division that floats above its zero check
...
Reviewed-by: kvn, thartmann
2020-12-15 15:14:34 +00:00
Ioi Lam
1d15ebe19e
8243205: Modularize JVM flags declaration
...
Reviewed-by: kvn, coleenp, stefank
2020-12-11 04:18:54 +00:00
Ioi Lam
d4282b0cfc
8257731: Remove excessive include of stubRoutines.hpp
...
Reviewed-by: coleenp, kvn
2020-12-10 23:57:35 +00:00
Ioi Lam
80dac5a87c
8257912: Convert enum iteration to use range-based for loops
...
Reviewed-by: kbarrett, tschatzl, gziemski
2020-12-10 20:33:13 +00:00
Claes Redestad
f57405617e
8256424: Move ciSymbol::symbol_name() to ciSymbols::symbol_name()
...
Reviewed-by: kvn, iklam
2020-12-10 17:22:48 +00:00
Dong Bo
026b09cf64
8257483: C2: Split immediate vector rotate from RotateLeftV and RotateRightV nodes
...
Reviewed-by: vlivanov
2020-12-10 12:26:04 +00:00
Roland Westrelin
d93293f31b
8256730: Code that uses Object.checkIndex() range checks doesn't optimize well
...
Reviewed-by: vlivanov, thartmann
2020-12-10 08:09:08 +00:00
Christian Hagedorn
1d0adbb812
8253644: C2: assert(skeleton_predicate_has_opaque(iff)) failed: unexpected
...
Reviewed-by: roland, kvn
2020-12-08 08:48:58 +00:00
Roland Westrelin
0b6b6eb59a
8257813: [redo] C2: Filter type in PhiNode::Value() for induction variables of trip-counted integer loops
...
Reviewed-by: chagedorn, kvn
2020-12-08 08:30:18 +00:00
Vladimir Ivanov
62c7788b29
8257211: C2: Enable call devirtualization during post-parse phase
...
Reviewed-by: kvn, neliasso, thartmann
2020-12-07 22:50:38 +00:00
Roland Westrelin
f5a582c287
8257575: C2: "failed: only phis" assert failure in loop strip mining verification
...
Reviewed-by: thartmann, neliasso
2020-12-07 09:38:22 +00:00
Aleksey Shipilev
e590618962
8252505: C1/C2 compiler support for blackholes
...
Reviewed-by: vlivanov, aph
2020-12-06 17:43:34 +00:00
Vladimir Kozlov
dd0b9454a2
8257531: Super word not applied to a loop of simple Buffer operations
...
Reviewed-by: roland, psandoz
2020-12-04 19:23:52 +00:00
Roland Westrelin
86b65756cb
8257574: C2: "failed: parsing found no loops but there are some" assert failure
...
Reviewed-by: thartmann, neliasso, chagedorn
2020-12-04 12:01:53 +00:00
Vladimir Ivanov
fbdc1877e2
8257624: C2: PhaseMacroExpand::eliminate_macro_nodes() crashes on out-of-bounds access into macro node array
...
Reviewed-by: neliasso, kvn
2020-12-04 09:37:18 +00:00
Vladimir Ivanov
fd6756ee2b
8257634: C2: Introduce IncrementalInliningForceCleanup diagnostic flag
...
Reviewed-by: kvn, adityam, thartmann
2020-12-04 09:24:08 +00:00
Christian Hagedorn
4a85514963
8257182: JCK test failures in integer / long rotation tests
...
Reviewed-by: mdoerr, vlivanov, thartmann, kvn
2020-12-04 08:10:31 +00:00
Vladimir Ivanov
f33808ffc9
8257631: C2: Assertion failure in ArrayCopyNode::get_count() during late inlining
...
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:55:40 +00:00
Vladimir Ivanov
417e7e6317
8257632: C2: Late inlining attempt on a call with a dead memory crashes
...
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:55:04 +00:00
Vladimir Ivanov
6845fee905
8257625: C2: Harden input checks in vector intrinsics
...
Reviewed-by: thartmann
2020-12-04 07:54:24 +00:00
Vladimir Ivanov
4390f2c8c3
8257630: C2: ReplacedNodes doesn't handle non-CFG multi nodes
...
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:53:17 +00:00