Tom Rodriguez
852a41d718
8258625: [JVMCI] refactor and unify JVMCI readFieldValue path
...
Reviewed-by: kvn
2021-04-26 20:00:23 +00:00
Doug Simon
7df0c10a4d
8265480: add basic JVMCI support for JEP 309: Dynamic Class-File Constants
...
Reviewed-by: kvn, psandoz
2021-04-22 15:59:12 +00:00
Roberto Castañeda Lozano
d81b0461b7
8263227: C2: inconsistent spilling due to dead nodes in exception block
...
Eliminate dead nodes created by call-catch cleanup even if they have multiple
projections. Assert that definitions dominate uses and projections are scheduled
next to their parent nodes.
Reviewed-by: neliasso, kvn
2021-04-20 10:06:49 +00:00
Jie Fu
b64a3fb946
8265325: Optimize StubRoutines::dpow() for Math.pow(x, 0.5)
...
Reviewed-by: kvn, neliasso
2021-04-19 10:45:20 +00:00
Evgeny Nikitin
694e1cdcb8
8262060: compiler/whitebox/BlockingCompilation.java timed out
...
Reviewed-by: iignatyev
2021-04-16 14:33:27 +00:00
Roland Westrelin
7137328006
8264958: C2 compilation fails with assert "n is later than its clone"
...
Reviewed-by: neliasso, thartmann
2021-04-16 11:34:45 +00:00
Vladimir Ivanov
b3782ead36
8264918: [JVMCI] getVtableIndexForInterfaceMethod doesn't check that type and method are related
...
Reviewed-by: kvn
2021-04-09 10:46:12 +00:00
Wang Huang
eab84554e8
8261137: Optimization of Box nodes in uncommon_trap
...
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Reviewed-by: kvn, vlivanov, thartmann
2021-04-07 10:48:17 +00:00
Hui Shi
011f6d13ab
8264223: CodeHeap::verify fails extra_hops assertion in fastdebug test
...
Reviewed-by: lucy, shade
2021-04-01 10:43:45 +00:00
Christian Hagedorn
ab6faa607b
8263582: WB_IsMethodCompilable ignores compiler directives
...
Reviewed-by: iveresov, kvn, neliasso
2021-03-31 06:33:45 +00:00
Hui Shi
21e7402b04
8263707: C1 RangeCheckEliminator support constant array and NewMultiArray
...
Reviewed-by: thartmann, neliasso
2021-03-30 16:04:59 +00:00
Roland Westrelin
d2a63f259e
8264360: Loop strip mining verification fails with "should be on the backedge"
...
Reviewed-by: kvn, thartmann
2021-03-30 07:58:49 +00:00
Roland Westrelin
8100a20e98
8263971: C2 crashes with SIGFPE with -XX:+StressGCM and -XX:+StressIGVN
...
Reviewed-by: chagedorn, thartmann
2021-03-30 07:40:49 +00:00
Tobias Hartmann
3caea470e1
8262739: String inflation C2 intrinsic prevents insertion of anti-dependencies
...
Reviewed-by: neliasso, chagedorn
2021-03-29 12:40:11 +00:00
Christian Hagedorn
aefc1560b5
8264179: [TESTBUG] Some compiler tests fail when running without C2
...
Reviewed-by: kvn, jiefu
2021-03-29 08:03:47 +00:00
Pengfei Li
2fa6a3c47c
8264006: Fix AOT library loading on CPUs with 256-byte dcache line
...
Reviewed-by: kvn, dholmes, aph
2021-03-29 01:09:43 +00:00
Doug Simon
5a930c42de
8264135: UnsafeGetStableArrayElement should account for different JIT implementation details
...
Reviewed-by: vlivanov, never
2021-03-26 10:11:02 +00:00
Richard Reingruber
9689863ac0
8262295: C2: Out-of-Bounds Array Load from Clone Source
...
Reviewed-by: kvn, roland, neliasso, thartmann
2021-03-25 06:52:03 +00:00
Wang Huang
6e3a158a65
8263352: assert(use == polladr) failed: the use should be a safepoint polling
...
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Reviewed-by: kvn
2021-03-24 06:30:50 +00:00
Roland Westrelin
fd3a33a856
8263189: C2: assert(!had_error) failed: bad dominance
...
Reviewed-by: kvn, thartmann
2021-03-23 08:15:47 +00:00
Evgeny Nikitin
0b03d04792
8167015: compiler/codecache/jmx/PoolsIndependenceTest.java timeout
...
Reviewed-by: kvn, thartmann
2021-03-23 06:55:05 +00:00
Marcus G K Williams
7b6efd3b86
8263904: compiler/intrinsics/bmi/verifycode/BzhiTestI2L.java fails on x86_32
...
Reviewed-by: kvn, thartmann
2021-03-23 06:51:12 +00:00
Jie Fu
a5e7a890fe
8263904: compiler/intrinsics/bmi/verifycode/BzhiTestI2L.java fails on x86_32
...
Reviewed-by: kvn
2021-03-22 23:14:07 +00:00
Vladimir Kozlov
f84b52b84d
8263897: compiler/c2/aarch64/TestVolatilesSerial.java failed with "java.lang.RuntimeException: Wrong method"
...
Reviewed-by: roland
2021-03-22 17:03:12 +00:00
Jamsheed Mohammed C M
ff52f2989f
8260716: Assert in MacroAssembler::clear_mem with -XX:-IdealizeClearArrayNode
...
Reviewed-by: kvn, thartmann
2021-03-18 09:22:17 +00:00
Vladimir Kozlov
83a49ef845
8263753: two new tests from JDK-8261671 fail with "Error. can not find ClassFileInstaller in test directory or libraries"
...
Reviewed-by: dcubed
2021-03-17 20:00:31 +00:00
Marcus G K Williams
4f4ca0e705
8261671: X86 I2L conversion can be skipped for certain masked positive values
...
Reviewed-by: kvn, neliasso, vlivanov
2021-03-17 16:19:06 +00:00
Igor Ignatyev
a7aba2b61c
8263549: 8263412 can cause jtreg testlibrary split
...
Reviewed-by: iklam, dcubed
2021-03-13 14:51:53 +00:00
Jie Fu
bf9b5fa753
8263501: compiler/oracle/TestInvalidCompileCommand.java fails with release VMs
...
Reviewed-by: kvn
2021-03-12 22:56:47 +00:00
Jie Fu
ad1f605419
8263353: assert(CompilerOracle::option_matches_type(option, value)) failed: Value must match option type
...
Reviewed-by: neliasso, kvn
2021-03-12 02:22:34 +00:00
Rahul Raghavan
4b5be40ab9
8238812: assert(false) failed: bad AD file
...
Reviewed-by: thartmann, chagedorn, roland
2021-03-10 15:59:38 +00:00
Jie Fu
e5ce97b12d
8263206: assert(*error_msg != '\0') failed: Must have error_message while parsing -XX:CompileCommand=unknown
...
Reviewed-by: neliasso
2021-03-09 23:32:18 +00:00
Igor Veresov
1f9ed9059f
8219555: compiler/jvmci/compilerToVM/IsMatureTest.java fails with Unexpected isMature state for multiple times invoked method: expected false to equal true
...
Reviewed-by: kvn
2021-03-08 18:01:27 +00:00
Igor Ignatyev
3844ce400d
8261247: some compiler/whitebox/ tests fail w/ DeoptimizeALot
...
Reviewed-by: kvn
2021-03-06 21:08:20 +00:00
Roland Westrelin
2c0507ecd6
8261812: C2 compilation fails with assert(!had_error) failed: bad dominance
...
Reviewed-by: kvn, thartmann
2021-03-05 15:43:24 +00:00
Jie Fu
d91550efad
8262998: Vector API intrinsincs should not modify IR when bailing out
...
Reviewed-by: thartmann, vlivanov
2021-03-05 05:57:30 +00:00
Jie Fu
351889f1b5
8262508: Vector API's ergonomics is incorrect
...
Reviewed-by: vlivanov
2021-03-04 23:04:28 +00:00
Roberto Castañeda Lozano
4cfecceb04
8261730: C2 compilation fails with assert(store->find_edge(load) != -1) failed: missing precedence edge
...
Relax assertion in PhaseCFG::verify() to accept the case where a store is used
to implement an implicit null check and a load is placed in the null block.
Reviewed-by: thartmann, kvn
2021-03-04 07:48:51 +00:00
Aleksey Shipilev
7915a1fc4c
8262950: Restructure compiler/intrinsics/TestRotate.java for easier compilation
...
Reviewed-by: kvn
2021-03-04 07:41:22 +00:00
Dong Bo
c15801e98c
8261142: AArch64: Incorrect instruction encoding when right-shifting vectors with shift amount equals to the element width
...
Reviewed-by: njian, aph
2021-03-03 06:43:25 +00:00
Roland Westrelin
ddd550ae84
8261308: C2: assert(inner->is_valid_counted_loop(T_INT) && inner->is_strip_mined()) failed: OuterStripMinedLoop should have been removed
...
Reviewed-by: chagedorn, kvn
2021-03-01 08:42:10 +00:00
Eric Liu
382e38dd24
8256438: AArch64: Implement match rules with ROR shift register value
...
Reviewed-by: aph, roland
2021-02-24 09:49:53 +00:00
Doug Simon
d2b9c227e5
8262011: [JVMCI] allow printing to tty from unattached libgraal thread
...
Reviewed-by: kvn, never
2021-02-23 17:01:11 +00:00
Igor Veresov
977a21add8
8261225: TieredStopAtLevel should have no effect if TieredCompilation is disabled
...
Reviewed-by: kvn
2021-02-19 19:44:58 +00:00
Christian Hagedorn
8418285530
8261235: C1 compilation fails with assert(res->vreg_number() == index) failed: conversion check
...
Reviewed-by: thartmann, kvn
2021-02-17 09:00:39 +00:00
Hui Shi
95d73129ce
8261585: Restore HandleArea used in Deoptimization::uncommon_trap
...
Reviewed-by: coleenp, jiefu
2021-02-13 02:47:33 +00:00
Christian Hagedorn
0a89987a96
8240281: Remove failing assertion code when selecting first memory state in SuperWord::co_locate_pack
...
Reviewed-by: roland, kvn, thartmann
2021-02-11 13:00:10 +00:00
Igor Veresov
0e18634b6a
8261270: MakeMethodNotCompilableTest fails with -XX:TieredStopAtLevel={1,2,3}
...
Reviewed-by: kvn
2021-02-07 02:24:15 +00:00
Pengfei Li
7a2db858e0
8261022: Fix incorrect result of Math.abs() with char type
...
Reviewed-by: thartmann, neliasso
2021-02-07 01:15:24 +00:00
Jesper Wilhelmsson
d7acfae3d2
Merge
2021-02-06 00:29:45 +00:00
Roland Westrelin
3495febf51
8260296: SA's dumpreplaydata fails
...
Reviewed-by: kvn, cjplummer, iignatyev
2021-02-05 09:33:54 +00:00
Roland Westrelin
4de3a6be9e
8260709: C2: assert(false) failed: unscheduable graph
...
Reviewed-by: thartmann, chagedorn
2021-02-04 15:11:25 +00:00
Jesper Wilhelmsson
9b7a8f1982
Merge
2021-02-04 02:06:33 +00:00
Dong Bo
5307afa9e7
8260585: AArch64: Wrong code generated for shifting right and accumulating four unsigned short integers
...
Reviewed-by: iveresov, dlong, njian, aph
2021-02-03 21:40:33 +00:00
Nils Eliasson
472bf629cd
8258799: [Testbug] RandomCommandsTest must check if tested directive is added via jcmd
...
Reviewed-by: kvn, iignatyev
2021-02-03 16:01:59 +00:00
Tobias Hartmann
fe407cf1b6
8260420: C2 compilation fails with assert(found_sfpt) failed: no node in loop that's not input to safepoint
...
Reviewed-by: kvn, roland, chagedorn
2021-02-02 07:23:55 +00:00
bobpengxie
54e7a642bb
8260576: Typo in compiler/runtime/safepoints/TestRegisterRestoring.java
...
Reviewed-by: thartmann, jiefu
2021-02-02 02:16:46 +00:00
Vladimir Kozlov
02d586e13e
8259398: Super word not applied to a loop with byteArrayViewVarHandle
...
Reviewed-by: vlivanov, thartmann, chagedorn
2021-02-01 15:48:10 +00:00
casparcwang
0fdf9cdd3a
8260473: [vector] ZGC: VectorReshape test produces incorrect results with ZGC enabled
...
Co-authored-by: Stuart Monteith <smonteith@openjdk.org>
Co-authored-by: Wang Chao <casparcwang@tencent.com>
Reviewed-by: vlivanov, neliasso
2021-02-01 01:28:31 +00:00
Wang Huang
a117e11524
8260339: JVM crashes when executing PhaseIdealLoop::match_fill_loop
...
Co-authored-by: He Xuejin <hexuejin2@huawei.com>
Reviewed-by: neliasso, kvn, iignatyev
2021-01-29 08:07:21 +00:00
Igor Ignatyev
8ffdbcebad
8260608: add a regression test for 8260370
...
Reviewed-by: kvn
2021-01-29 04:04:23 +00:00
Igor Veresov
1519632597
8251462: Simplify compilation policy
...
Reviewed-by: cjplummer, kvn
2021-01-28 20:51:12 +00:00
Vladimir Kozlov
1926765f5e
8253353: Crash in C2: guarantee(n != NULL) failed: No Node
...
Co-authored-by: Fei Yang <fyang@openjdk.org>
Reviewed-by: vlivanov, neliasso
2021-01-28 16:16:51 +00:00
Roland Westrelin
11d6467c50
8260407: cmp != __null && cmp->Opcode() == Op_CmpL failure with -XX:StressLongCountedLoop=200000000 in lucene
...
Reviewed-by: thartmann, kvn
2021-01-28 12:27:40 +00:00
Jesper Wilhelmsson
c52212b146
Merge
2021-01-27 20:56:26 +00:00
Roberto Castañeda Lozano
f353fcf256
8258894: C2: Forbid GCM to move stores into loops
...
Prevent GCM from placing memory-writing nodes (such as stores) into loops deeper
than their home loop (determined by their control input). Such placements are
invalid, as they cause memory definitions to interfere, and risk causing
miscompilations. This change complements JDK-8255763, which only addresses
invalid placements in irreducible CFGs.
Add control input to stores in generated stubs to ensure that all memory-writing
nodes have control inputs from which their home block can be derived.
Add a battery of simplified fuzzer test cases where, before this change, GCM
moves stores into deeper loops.
Reviewed-by: thartmann, kvn
2021-01-27 15:08:39 +00:00
Christian Hagedorn
c5ab7c3214
8260284: C2: assert(_base == Int) failed: Not an Int
...
Reviewed-by: thartmann, kvn
2021-01-25 17:09:52 +00:00
Jesper Wilhelmsson
6f2a394314
Merge
2021-01-23 03:15:43 +00:00
Jie Fu
d90e06af7b
8259775: [Vector API] Incorrect code-gen for VectorReinterpret operation
...
Reviewed-by: rbackman, neliasso, kvn
2021-01-22 00:13:58 +00:00
Jesper Wilhelmsson
133bcb0995
Merge
2021-01-21 05:23:42 +00:00
Igor Ignatyev
0408b23bcf
8259757: add a regression test for 8259353 and 8259601
...
Co-authored-by: Xiaohong Gong <xgong@openjdk.org>
Co-authored-by: Igor Ignatyev <iignatyev@openjdk.org>
Reviewed-by: kvn, jiefu
2021-01-20 18:48:10 +00:00
Jesper Wilhelmsson
a1a851b6db
Merge
2021-01-19 05:43:27 +00:00
Roland Westrelin
d5ca3b3fd5
8259641: C2: assert(early->dominates(LCA)) failed: early is high enough
...
Reviewed-by: chagedorn, thartmann
2021-01-18 07:54:48 +00:00
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
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
Aleksey Shipilev
9d4e84fd41
8259565: Zero: compiler/runtime/criticalnatives fails because CriticalJNINatives is not supported
...
Reviewed-by: coleenp, zgu
2021-01-12 07:49:21 +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
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
Aleksey Shipilev
db6f39302b
8251944: Add Shenandoah test config to compiler/gcbarriers/UnsafeIntrinsicsTest.java
...
Reviewed-by: rkennke, adityam
2021-01-05 08:37:06 +00:00
Jesper Wilhelmsson
f2bad3a0be
Merge
2020-12-22 21:16:59 +00:00
Roberto Castañeda Lozano
3df6ec2fbc
8258682: compiler/intrinsics/mathexact/sanity tests fail with RepeatCompilation
...
Normalize match and suspect counts in the verify() method by the number of
compilation repetitions, if the RepeatCompilation option is used.
Reviewed-by: kvn, chagedorn
2020-12-22 10:04:00 +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
Jesper Wilhelmsson
d234388042
Merge
2020-12-21 09:09:05 +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
Mikael Vidstedt
64644a1072
8253881: Hotspot/Serviceability Terminology Refresh
...
Reviewed-by: kbarrett, tschatzl, dholmes, lfoltan, dcubed
2020-12-19 02:47:28 +00:00
Xin Liu
adf0e23aa2
8257800: CompileCommand TypedMethodOptionMatcher::parse_method_pattern() may over consume
...
Reviewed-by: thartmann, chagedorn, phh
2020-12-18 20:35:38 +00:00
Nils Eliasson
7320e051ea
8258647: TestCharVect2 is very slow
...
Reviewed-by: vlivanov, kvn
2020-12-17 22:43:00 +00:00
Jesper Wilhelmsson
f15528eb64
Merge
2020-12-17 20:41:37 +00:00
Nils Eliasson
cb5a6b1a7d
8258225: compiler/c2/cr6340864/TestIntVect.java runs faster in interpreter
...
Reviewed-by: vlivanov, thartmann, kvn
2020-12-17 17:50:53 +00:00
Xin Liu
83be8a902c
8247732: validate user-input intrinsic_ids in ControlIntrinsic
...
renew webrev to the latest jdk. fixed a typo and a bug. Add constraints for both DisableIntrinsic and ControlIntrinsics. Add tests to cover different use cases of them.
Reviewed-by: neliasso, thartmann
2020-12-17 10:05:09 +00:00
Christian Hagedorn
04a1e5b75b
8258505: [TESTBUG] TestDivZeroWithSplitIf.java fails due to missing UnlockDiagnosticVMOptions
...
Reviewed-by: thartmann, kvn, dcubed
2020-12-17 08:09:19 +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
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
Aleksey Shipilev
35e81536e7
8257848: -XX:CompileCommand=blackhole,* should be diagnostic
...
Reviewed-by: vlivanov
2020-12-08 10:11:01 +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
Jie Fu
c43c224ef9
8257796: [TESTBUG] TestUseSHA512IntrinsicsOptionOnSupportedCPU.java fails on x86_32
...
Reviewed-by: kvn
2020-12-07 22:59:51 +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
05dac03f36
8257803: Add -Xbatch to compiler/blackhole tests
...
Reviewed-by: dholmes
2020-12-07 06:43:34 +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
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
Volker Simonis
d3f3c32282
8255742: PrintInlining as compiler directive doesn't print virtual calls
...
Reviewed-by: thartmann, kvn
2020-12-03 18:02:05 +00:00
Tobias Hartmann
129c37700f
8257594: C2 compiled checkcast of non-null object triggers endless deoptimization/recompilation cycle
...
Reviewed-by: roland, vlivanov
2020-12-03 13:42:19 +00:00
Nick Gasson
4169d96e24
8257143: Enable JVMCI code installation tests on AArch64
...
Reviewed-by: burban, kvn
2020-12-03 07:26:10 +00:00
Doug Simon
7e37c7c544
8257471: fatal error: Fatal exception in JVMCI: Exception during JVMCI compiler initialization
...
Reviewed-by: kvn, never
2020-12-02 10:14:46 +00:00
Vladimir Kozlov
816e8f83b8
8256999: Add C2 intrinsic for Reference.refersTo and PhantomReference::refersTo
...
Reviewed-by: pliden, vlivanov, rkennke, eosterlund, shade
2020-11-29 20:27:01 +00:00
Doug Simon
c5d95071df
8257220: [JVMCI] option validation should not result in a heavy-weight VM crash
...
Reviewed-by: kvn
2020-11-29 16:52:14 +00:00
Aleksey Shipilev
a14f02d8e5
8256267: Relax compiler/floatingpoint/NaNTest.java for x86_32 and lower -XX:+UseSSE
...
Reviewed-by: kvn, iignatyev
2020-11-25 20:01:00 +00:00
Nils Eliasson
cfb175dfdf
8256508: Improve CompileCommand flag
...
Reviewed-by: redestad, kvn
2020-11-25 14:20:35 +00:00
Tobias Hartmann
1c4c99eae2
8256823: C2 compilation fails with "assert(isShiftCount(imm8 >> 1)) failed: illegal shift count"
...
Reviewed-by: vlivanov, kvn, chagedorn
2020-11-24 16:52:13 +00:00
jasontatton-aws
b99fd4c7d6
8033441: print line numbers with -XX:+PrintOptoAssembly
...
Reviewed-by: jiefu, thartmann
2020-11-20 12:51:47 +00:00
Roberto Castañeda Lozano
eb35ade9a0
6232281: -XX:-UseLoopSafepoints causes assert(v_false,"Parse::remove_useless_nodes missed this node")
...
Check for nodes missed by remove_useless_nodes() only if PhaseRemoveUseless has
actually been run. This makes it possible to use -XX:-UseLoopSafepoints without
crashing trivially, although implicit assumptions in other parts of C2 about the
existence of loop safepoints might lead to more subtle failures for more complex
methods.
Reviewed-by: neliasso, thartmann, kvn
2020-11-20 12:06:36 +00:00
Tobias Hartmann
f504f419d3
8256385: C2: fatal error: modified node is not on IGVN._worklist
...
Reviewed-by: chagedorn, roland
2020-11-18 11:53:25 +00:00
Dong Bo
b0b9dd27b8
8256318: AArch64: Add support for floating-point absolute difference
...
Reviewed-by: aph
2020-11-18 10:14:20 +00:00
Roland Westrelin
a7422ac2f4
8255150: Add utility methods to check long indexes and ranges
...
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Reviewed-by: jvernee, dlong, vlivanov
2020-11-17 10:37:27 +00:00
Christian Hagedorn
5dbfae0176
8255058: C1: assert(is_virtual()) failed: type check
...
Reviewed-by: neliasso, kvn
2020-11-17 09:16:06 +00:00
Boris Ulasevich
f611fdfee8
8254016: Test8237524 fails with -XX:-CompactStrings option
...
Reviewed-by: shade
2020-11-16 14:58:14 +00:00
Roland Westrelin
ea576ddbd4
8254887: C2: assert(cl->trip_count() > 0) failed: peeling a fully unrolled loop
...
Reviewed-by: chagedorn, thartmann
2020-11-13 08:19:33 +00:00
Corey Ashford
ccb48b7203
8248188: Add IntrinsicCandidate and API for Base64 decoding
...
8248188: Add IntrinsicCandidate and API for Base64 decoding, add Power64LE intrinsic implementation.
This patch set encompasses the following commits:
Adds a new intrinsic candidate to the java.lang.Base64 class - decodeBlock(), and provides a flexible API for the intrinsic. The API is similar to the existing encodeBlock intrinsic.
Adds the code in HotSpot to check and martial the new intrinsic's arguments to the arch-specific intrinsic implementation.
Adds a Power64LE-specific implementation of the decodeBlock intrinsic.
Adds a JMH microbenchmark for both Base64 encoding and encoding.
Enhances the JTReg hotspot intrinsic "TestBase64.java" regression test to more fully test both decoding and encoding.
Reviewed-by: rriggs, mdoerr, kvn
2020-11-11 21:31:07 +00:00
Roberto Castañeda Lozano
432c387e21
8254317: C2: Resource consumption of ConvI2LNode::Ideal() grows exponentially
...
Prevent exponential number of calls to ConvI2LNode::Ideal() when AddIs are used
multiple times by other AddIs in the optimization ConvI2L(AddI(x, y)) ->
AddL(ConvI2L(x), ConvI2L(y)). This is achieved by (1) reusing existing ConvI2Ls
if possible rather than eagerly creating new ones and (2) postponing the
optimization of newly created ConvI2Ls. Remove hook node solution introduced in
8217359, since this is subsumed by (2). Use phase->is_IterGVN() rather than
can_reshape to check if ConvI2LNode::Ideal() is called within iterative GVN, for
clarity. Add regression tests that cover different shapes and sizes of AddI
subgraphs, implicitly checking (by not timing out) that there is no
combinatorial explosion.
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, kvn
2020-11-11 10:18:36 +00:00
Nils Eliasson
e281b13597
8255011: [TESTBUG] compiler/codecache/stress/UnexpectedDeoptimizationAllTest.java timed out
...
Change CodeCacheStressRunner to have a 60 second test time
Reviewed-by: iignatyev
2020-11-10 11:25:53 +00:00
Vladimir Kozlov
2f7d34f205
8255616: Disable AOT and Graal in Oracle OpenJDK
...
Reviewed-by: iignatyev, vlivanov, iveresov, ihse
2020-11-02 16:04:46 +00:00
Vladimir Kozlov
56eb5f54f4
8255466: C2 crashes at ciObject::get_oop() const+0x0
...
Reviewed-by: vlivanov
2020-10-29 22:34:14 +00:00
Vladimir Kozlov
a7fa1b70f2
8251994: VM crashed running TestComplexAddrExpr.java test with -XX:UseAVX=X
...
Reviewed-by: shade, redestad
2020-10-26 19:40:48 +00:00
Fei Yang
5ec1b80c4a
8255287: aarch64: fix SVE patterns for vector shift count
...
Co-authored-by: Yanhong Zhu <zhuyanhong2@huawei.com>
Reviewed-by: adinn
2020-10-23 13:16:37 +00:00
Ningsheng Jian
ac1748e786
8254670: SVE test uses linux-specific api
...
Reviewed-by: adinn, vkempik
2020-10-23 10:06:40 +00:00
Vladimir Ivanov
e52156d730
8255067: Restore Copyright line in file modified by 8253191
...
Reviewed-by: kvn, shade
2020-10-23 08:33:14 +00:00
Fei Yang
b25d894015
8252204: AArch64: Implement SHA3 accelerator/intrinsic
...
Co-authored-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Co-authored-by: Dong Bo <dongbo4@huawei.com>
Reviewed-by: aph, kvn
2020-10-22 04:38:39 +00:00
Roland Westrelin
294e0705fa
8254998: C2: assert(!n->as_Loop()->is_transformed_long_loop()) failure with -XX:StressLongCountedLoop=1
...
Reviewed-by: vlivanov, kvn, thartmann
2020-10-20 11:53:41 +00:00
Roberto Castañeda Lozano
98ec4a6792
8254805: compiler/debug/TestStressCM.java is still failing
...
Use the code motion trace produced by TraceOptoPipelining (excluding traces of
stubs) to assert that two compilations with the same seed cause StressLCM and
StressGCM to take the same randomized decisions. Previously, the entire output
produced by PrintOptoStatistics was used instead, which has shown to be too
fragile. Also, disable inlining in both TestStressCM.java and the similar
TestStressIGVN.java to prevent flaky behavior, and run both tests for ten
different seeds to improve coverage.
Reviewed-by: kvn, thartmann
2020-10-20 06:08:25 +00:00
Doug Simon
f42c03226f
8254793: [JVMCI] improve speculation encoding
...
Reviewed-by: kvn, dlong, never
2020-10-19 19:06:23 +00:00
Erik Joelsson
0b5101658d
8253660: Need better error report when artifact resolution fails in AotCompiler.java
...
Reviewed-by: ihse
2020-10-19 17:40:54 +00:00
Tobias Hartmann
7c0d417027
8251535: Partial peeling at unsigned test adds incorrect loop exit check
...
Reviewed-by: chagedorn, neliasso, kvn
2020-10-16 06:25:33 +00:00
Jason Tatton (AWS)
f71e8a6198
8173585: Intrinsify StringLatin1.indexOf(char)
...
Reviewed-by: neliasso
2020-10-14 12:58:21 +00:00
Roberto Castañeda Lozano
b509e31e5f
8254602: compiler/debug/TestStressCM.java failed with "RuntimeException: got the same optimization stats for different seeds: expected 45"
...
Remove test assertion checking that different random seeds lead to different
code motion decisions. This was the case for the specific pair of random seeds,
IR fed to code motion, and target platforms tested originally; but does not need
to hold in general. Remove similar test assertion in IGVN randomization test
case. Re-enable the test case.
Reviewed-by: shade, kvn
2020-10-14 08:07:59 +00:00
Roberto Castañeda Lozano
05459df0c7
8253765: C2: Control randomization in StressLCM and StressGCM
...
Use the compilation-local seed in 'StressLCM' and 'StressGCM' rather than the
global one. As a consequence, these options use by default a fresh seed in every
compilation, unless 'StressSeed=N' is specified, in which case they behave
deterministically. Annotate tests that use 'StressLCM' and 'StressGCM' with the
'stress' and 'randomness' keys to reflect this change in default behavior.
Reviewed-by: kvn, thartmann
2020-10-12 11:40:50 +00:00
Christian Hagedorn
54bbe76ed0
8251544: CTW: C2 fails with assert(no_dead_loop) failed: dead loop detected
...
Reviewed-by: kvn, roland
2020-10-12 08:18:13 +00:00
Jatin Bhateja
4b5ac3abac
8252847: Optimize primitive arrayCopy stubs using AVX-512 masked instructions
...
Reviewed-by: neliasso, kvn
2020-10-10 06:29:38 +00:00
Evgeny Nikitin
52e45a3677
8229186: Improve error messages for TestStringIntrinsics failures
...
Reviewed-by: iignatyev, lmesnik
2020-10-09 16:48:49 +00:00
Vladimir Ivanov
6d13c766bf
8253191: C2: Masked byte comparisons with large masks produce wrong result on x86
...
Reviewed-by: thartmann
2020-10-08 12:41:46 +00:00
Roberto Castañeda Lozano
a191c586dc
8253404: C2: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
...
Record nodes as dead in Node::destruct() if their index cannot be directly
reclaimed. This prevents the "Live Node limit exceeded limit" assertion failure
by improving the accuracy of Compile::live_nodes() when "hook" nodes in
ConvI2LNode::Ideal() are created and deleted non-consecutively.
This addition might result in multiple calls to compile::record_dead_node() for
the same node (e.g. from PhaseIdealLoop::spinup()), but this is safe, as
compile::record_dead_node() is idempotent.
Reviewed-by: neliasso, thartmann
2020-10-08 12:30:38 +00:00
Roland Westrelin
f86037207c
8253566: clazz.isAssignableFrom will return false for interface implementors
...
Reviewed-by: kvn, thartmann, neliasso
2020-10-08 09:33:42 +00:00
Roland Westrelin
76a5852776
8253756: C2 CompilerThread0 crash in Node::add_req(Node*)
...
Reviewed-by: vlivanov, thartmann
2020-10-08 08:39:40 +00:00
Igor Ignatyev
5a9bd41e79
8254102: use ProcessHandle::pid instead of ManagementFactory::getRuntimeMXBean to get pid in tests
...
Reviewed-by: rriggs, shade
2020-10-07 18:51:52 +00:00
Doug Simon
04ca660e81
8253874: [JVMCI] added test omitted in 8252881
...
Reviewed-by: shade
2020-10-07 09:14:43 +00:00
Xin Liu
ea5a2b15a0
8251464: make Node::dump(int depth) support indent
...
Reviewed-by: thartmann
2020-10-02 13:45:29 +00:00
Philippe Marschall
2a406f3ce5
8138732: Rename @HotSpotIntrinsicCandidate to @IntrinsicCandidate and move it to the jdk.internal.vm.annotation package
...
Reviewed-by: dholmes, alanb, psandoz, kvn, egahlin
2020-09-30 20:05:07 +00:00
Jie Fu
9c17a35e50
8253748: StressIGV tests fail with release VMs
...
Reviewed-by: thartmann
2020-09-29 06:37:46 +00:00
Wang Zhuo
276fcee795
8252835: Revert fix for JDK-8246051
...
Reviewed-by: psandoz, dholmes, mikael
2020-09-28 07:34:01 +00:00
Roberto Castaneda Lozano
fed3636f12
8252219: C2: Randomize IGVN worklist for stress testing
...
Add 'StressIGVN' option to let C2 randomize IGVN worklist order. When enabled,
the worklist is shuffled before each main run of the IGVN loop. Also add
'StressSeed=N' option to specify the seed. If the seed is not specified, a
random one is generated. In either case, the seed is logged if 'LogCompilation'
is enabled. The new options are declared as production+diagnostic for
consistency with the existing 'StressLCM' and 'StressGCM' options.
Reviewed-by: kvn, chagedorn, thartmann
2020-09-28 06:44:58 +00:00
Alex Menkov
3320fc0f52
8253372: [TESTBUG] update tests which require jvmti - hotspot
...
Reviewed-by: sspitsyn, iklam
2020-09-23 21:11:31 +00:00
Vladimir Kozlov
1438ce097f
8252188: Crash in OrINode::Ideal(PhaseGVN*, bool)+0x8b9
...
Reviewed-by: vlivanov, thartmann, jbhateja
2020-09-19 16:06:35 +00:00
Igor Ignatyev
41d29b752b
8252774: remove jdk.test.lib.FileInstaller action from graalunit tests
...
Reviewed-by: shade, epavlova
2020-09-10 13:25:29 +00:00
Igor Ignatyev
5b30a83133
8252778: remove jdk.test.lib.FileInstaller action from compiler/c2/stemmer test
...
Reviewed-by: shade, epavlova
2020-09-10 13:23:01 +00:00
Aleksey Shipilev
91a20ca7e5
8252695: Shenandoah: clean up Graal enabled/disabled filter in tests
...
Reviewed-by: zgu
2020-09-08 17:42:38 +00:00
Evgeny Nikitin
2cceeedfe1
8166554: Avoid compilation blocking in OverloadCompileQueueTest.java
...
Reviewed-by: shade
2020-09-08 08:24:35 +00:00
Filipp Zhinkin
70d5cac961
8251152: ARM32: jtreg c2 Test8202414 test crash
...
Some CPUs (like ARM32) does not support unaligned memory accesses. To avoid JVM crashes tests that perform such accesses should be skipped on corresponding platforms.
Reviewed-by: iignatyev, clanger
2020-09-07 15:33:27 +00:00
Christoph Langer
cc5039e19e
8252837: Cleanup SAP Copyright file headers
...
Reviewed-by: dholmes
2020-09-07 07:30:10 +00:00
Ningsheng Jian
9b5a9b6189
8231441: AArch64: Initial SVE backend support
...
Co-authored-by: Joshua Zhu <joshua.zhu@arm.com>
Co-authored-by: Yang Zhang <yang.zhang@arm.com>
Reviewed-by: adinn, pli, ihse, vlivanov, eosterlund
2020-09-02 09:45:44 +08:00
Dmitry Chuyko
35ea00085f
8251525: AARCH64: Faster Math.signum(fp)
...
Reviewed-by: aph, vlivanov, adinn
2020-09-03 14:54:43 +03:00
Christian Hagedorn
8d30bb03ee
8249607: C2: assert(!had_error) failed: bad dominance
...
Fix prevented igvn optimization in SplitIf for LoadNodes which resulted in dominanance errors with loop strip mining.
Reviewed-by: roland, kvn
2020-08-31 12:10:25 +02:00
Roland Westrelin
c663323043
8252292: 8240795 may cause anti-dependence to be missed
...
Reviewed-by: thartmann, kvn
2020-08-24 11:29:40 +02:00
Roland Westrelin
6a85e1454d
8241486: G1/Z give warning when using LoopStripMiningIter and turn off LoopStripMiningIter (0)
...
Reviewed-by: thartmann, kvn
2020-08-21 17:41:57 +02:00
Jie Fu
c31bcc58b0
8252404: compiler/c1/TestTraceLinearScanLevel.java fails with release VMs
...
Reviewed-by: kvn, thartmann
2020-08-27 10:35:00 +08:00
Christian Hagedorn
6c4a27ccb1
8251093: Improve C1 register allocator logging and debugging support
...
Various printing and debug improvements to better analyze C1 register allocator problems.
Reviewed-by: kvn, thartmann
2020-08-26 13:46:46 +02:00
Aleksey Shipilev
2462995662
8252120: compiler/oracle/TestCompileCommand.java misspells "occured"
...
Reviewed-by: iignatyev
2020-08-21 09:38:27 +02:00
Evgeny Nikitin
714db70bf3
8251349: Add TestCaseImpl to OverloadCompileQueueTest.java's build dependencies
...
Reviewed-by: iignatyev, kvn
2020-08-10 20:31:27 +02:00
Christian Hagedorn
552a73301c
8248791: sun/util/resources/cldr/TimeZoneNamesTest.java fails with -XX:-ReduceInitialCardMarks -XX:-ReduceBulkZeroing
...
Fix wrong replacement of loads by zero for non-completed InitializationNodes belonging to a clone when ReduceBulkZeroing is disabled.
Reviewed-by: kvn, thartmann
2020-08-14 10:30:51 +02:00
Tobias Hartmann
191e1e6075
8251458: Parse::do_lookupswitch fails with "assert(_cnt >= 0) failed"
...
Limit the counter value to max_jint.
Reviewed-by: kvn, vlivanov, chagedorn
2020-08-13 16:01:45 +02:00
Tobias Hartmann
51b3bd2c2e
8251456: [TESTBUG] compiler/vectorization/TestVectorsNotSavedAtSafepoint.java failed OutOfMemoryError
...
Removed allocation of large arrays to avoid OOME.
Reviewed-by: kvn, chagedorn
2020-08-13 15:59:12 +02:00
Christian Hagedorn
9885ac18ac
8249603: C1: assert(has_error == false) failed: register allocation invalid
...
Added bailout in combine_spilled_intervals() to avoid an overlap between two intervals
Reviewed-by: kvn, thartmann
2020-08-12 08:45:44 +02:00
Vladimir Kozlov
a5ae1e306e
8251306: compiler/aot/cli/jaotc/IgnoreErrorsTest.java timed out on MacOS
...
Icrease test timout to 6 min
Reviewed-by: iignatyev
2020-08-11 19:44:40 -07:00
Vladimir Kozlov
092389e3c9
8249749: modify a primitive array through a stream and a for cycle causes jre crash
...
Check align_to_ref for NULL early and bailout SuperWord optimization.
Reviewed-by: vlivanov, thartmann
2020-08-10 15:31:01 -07:00
Tobias Hartmann
970e251a54
8249608: Vector register used by C2 compiled method corrupted at safepoint
...
Always update 'max_vlen_in_bytes'.
Reviewed-by: kvn, vlivanov, chagedorn
2020-08-10 08:21:14 +02:00
Jatin Bhateja
3ed56830b4
8248830
: C2: Optimize Rotate API on x86
...
Improved existing scalar rotate operations, added support for vector rotate operations using new AVX512 instructions.
Reviewed-by: vlivanov, kvn
2020-08-09 02:03:09 +05:30
Evgeny Nikitin
3c276ce1fe
8067651: LevelTransitionTest.java, fix trivial methods levels logic
...
Make test method really trivial, adjust trivial logic, make logic independent of background compilation.
Reviewed-by: iignatyev, thartmann, kvn
2020-07-27 21:17:44 +02:00
Vladimir Kozlov
1ad1659413
8251260: two MD5 tests fail "RuntimeException: Unexpected count of intrinsic"
...
Do not run intrinsics/sha/sanity tests with AOTed java.base
Reviewed-by: vlivanov
2020-08-07 10:16:19 -07:00
Ludovic Henry
339016a0f2
8250902: Implement MD5 Intrinsics on x86
...
Reviewed-by: kvn, vdeshpande, ascarpino
2020-08-05 11:32:15 -07:00
Boris Ulasevich
1066357887
8248445: Use of AbsI/AbsL nodes should be limited to supported platforms
...
Reviewed-by: kvn, vlivanov
2020-08-05 06:31:32 -04:00
Christian Hagedorn
696b9e1847
8249605: C2: assert(no_dead_loop) failed: dead loop detected
...
Fixed dead loop detection in PhiNode::Ideal() to additionally account for dead MergeMemNodes
Reviewed-by: kvn, thartmann
2020-08-03 09:21:45 +02:00
Jie Fu
e03ca73dc1
8250825: C2 crashes with assert(field != __null) failed: missing field
...
Reviewed-by: kvn, thartmann
2020-07-31 17:10:46 +08:00
Huang Wang
eef2e1e3fc
8250609: C2 crash in IfNode::fold_compares
...
Reviewed-by: kvn, chagedorn
2020-07-28 10:38:04 +08:00
Christian Hagedorn
31368cd1f0
8249602: C2: assert(cnt == _outcnt) failed: no insertions allowed
...
Use DUIterator instead of DUIterator_Fast due to legit insertions.
Reviewed-by: kvn, thartmann
2020-07-28 16:05:30 +02:00
Christian Hagedorn
417e8e449d
8248552: C2 crashes with SIGFPE due to division by zero
...
Bail out in PhaseIdealLoop:split_thru_phi when trying to split a Div or ModNode iv phi whose zero check was removed but could potentially still be zero based on type information.
Reviewed-by: kvn, thartmann
2020-07-27 11:03:17 +02:00
Christian Hagedorn
18cf3d8080
8247743: Segmentation fault in debug builds due to stack overflow in find_recur with deep graphs
...
Replace the recursive algorithm of Node::find() by an iterative one to avoid a stack overflow crash with deep graphs.
Reviewed-by: kvn, thartmann
2020-07-22 10:31:37 +02:00
Christian Hagedorn
4f99e1fb11
8248467: C2: compiler/intrinsics/object/TestClone fails with -XX:+VerifyGraphEdges
...
Fix assert by taking MemBarNodes into account whose precedence edge can be NULL.
Reviewed-by: kvn, thartmann
2020-07-22 10:28:34 +02:00
Mikael Vidstedt
9ff01f7b2f
Merge
2020-07-21 20:55:29 -07:00
Jamsheed Mohammed C M
39b22d134f
8242895: failed: sanity at src/hotspot/share/opto/escape.cpp:2361
...
The address_offset code in EA was improved to detect raw stores(init captured ones) after loopopt.
Reviewed-by: kvn, thartmann
2020-07-21 08:03:20 -07:00
Igor Ignatyev
4a4003e900
8249678: @ignore should be used instead of ProblemList for 8158860, 8163894, 8193479, 8194310
...
Reviewed-by: kvn
2020-07-17 11:54:14 -07:00
Igor Ignatyev
24a7d8c766
8249622: use 8249621 to ignore 8 jvmci tests
...
Reviewed-by: kvn, epavlova
2020-07-16 20:03:10 -07:00
Jie Fu
507e54840f
8246805: Incorrect copyright header in TestInvalidTieredStopAtLevel.java
...
Reviewed-by: mikael, iignatyev
2020-07-16 10:30:39 +08:00
Ekaterina Pavlova
681d06d39b
8242388: compiler/graalunit/CoreTest.java timed out
...
Reviewed-by: kvn
2020-07-15 10:26:48 -07:00
Mikael Vidstedt
ec074011a4
Merge
2020-07-19 21:34:28 -07:00
Mikael Vidstedt
1f5e21a16e
Merge
2020-07-15 21:24:39 -07:00