Commit Graph

2518 Commits

Author SHA1 Message Date
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
Roger Riggs
1dae45d745 8250523: Remove abortOnException diagnostic option from TestHumongousNonArrayAllocation.java
Reviewed-by: kbarrett
2020-12-18 16:34:17 +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
Patricio Chilano Mateo
7b05439dcc 8258057: serviceability/attach/RemovingUnixDomainSocketTest.java doesn't ignore VM warnings
Reviewed-by: cjplummer, amenkov, dholmes
2020-12-17 16:41:50 +00:00
Coleen Phillimore
8251b74665 8257530: vmTestbase/metaspace/stressDictionary/StressDictionary.java timed out
Reviewed-by: lfoltan
2020-12-17 15:40:44 +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
Jesper Wilhelmsson
11bd7a814f Merge 2020-12-17 03:04:19 +00:00
Calvin Cheung
b5a3a5b621 8258236: Segfault in ClassListParser::resolve_indy dumping static AppCDS archive
Reviewed-by: redestad, coleenp
2020-12-16 02:37:29 +00:00
David Holmes
1e77896838 8236225: Remove expired flags in JDK 17
8256717: Expire the long term obsoleted VM flags

Reviewed-by: coleenp, kvn
2020-12-16 00:00:12 +00:00
Coleen Phillimore
c37eabe73b 8252148: vmError::controlled_crash should be #ifdef ASSERT and move tests to gtest
Reviewed-by: iklam, stuefe
2020-12-15 20:48:18 +00:00
Yumin Qi
36e2097401 8255917: runtime/cds/SharedBaseAddress.java failed "assert(reserved_rgn != 0LL) failed: No reserved region"
Reviewed-by: ccheung, iklam, stuefe
2020-12-15 16:52:26 +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
Thomas Stuefe
568dc29b9a 8185734: [Windows] Structured Exception Catcher missing around gtest execution
Reviewed-by: dholmes, ihse
2020-12-15 09:02:46 +00:00
Jesper Wilhelmsson
381021aebf Merge 2020-12-15 03:40:30 +00:00
Aleksey Shipilev
6d79ec87fb 8258111: Problemlist compiler/blackhole tests for -Xcomp until JDK-8258101 is fixed
Reviewed-by: iignatyev, kvn
2020-12-12 06:09:57 +00:00
Vladimir Ivanov
b1afed7501 8257919: [JVMCI] profiling info didn't change after reprofile
Reviewed-by: kvn, redestad
2020-12-11 21:50:49 +00:00
Dongbo He
b28b0947d9 8257145: Performance regression with -XX:-ResizePLAB after JDK-8079555
Co-authored-by: Junjun Lin <linjunjun@huawei.com>
Reviewed-by: tschatzl, sjohanss
2020-12-11 09:06:10 +00:00
Igor Ignatyev
3342ecaf44 8258054: runtime/sealedClasses/GetPermittedSubclassesTest.java fails w/ jdk17
Reviewed-by: mikael, hseigel, darcy
2020-12-10 18:16:33 +00:00
Joe Darcy
6be1f5671e 8257450: Start of release updates for JDK 17
8257451: Add SourceVersion.RELEASE_17
8257453: Add source 17 and target 17 to javac

Reviewed-by: dholmes, erikj, iris, mikael, jjg, jlahoda, jwilhelm, mchung, ihse
2020-12-10 16:46:28 +00:00
Kim Barrett
db5da9619b 8257876: Avoid Reference.isEnqueued in tests
Reviewed-by: mchung, tschatzl
2020-12-10 10:34:47 +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
Vladimir Kozlov
fd5f6e2e19 8257986: [JVMCI] ProblemList 2 reprofile JVMCI tests
Reviewed-by: iignatyev
2020-12-09 19:21:53 +00:00
Harold Seigel
d33a689b96 8256867: Classes with empty PermittedSubclasses attribute cannot be extended
Reviewed-by: lfoltan, mchung, jlahoda, chegar
2020-12-09 19:07:11 +00:00
Per Liden
79f1dfb8d3 8255987: JDI tests fail with com.sun.jdi.ObjectCollectedException
Reviewed-by: dholmes, cjplummer
2020-12-09 07:46:04 +00:00
Dan Smith
48d8650ae1 8257845: Integrate JEP 390
8254047: [JEP 390] Revise "value-based class" & apply to wrappers
8252181: [JEP 390] Define & apply annotation jdk.internal.ValueBased
8252183: [JEP 390] Add 'lint' warning for @ValueBased classes
8257027: [JEP 390] Diagnose synchronization on @ValueBased classes
8252180: [JEP 390] Deprecate wrapper class constructors for removal

Co-authored-by: Roger Riggs <rriggs@openjdk.org>
Co-authored-by: Srikanth Adayapalam <sadayapalam@openjdk.org>
Co-authored-by: Lois Foltan <lfoltan@openjdk.org>
Reviewed-by: rriggs, hseigel, mchung, darcy
2020-12-08 23:04:01 +00:00
Calvin Cheung
291ba97fab 8251267: CDS tests should use CDSTestUtils.getOutputDir instead of System.getProperty("user.dir")
Reviewed-by: minqi, iklam
2020-12-08 20:00:10 +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
Aleksey Shipilev
36c0600523 8257805: Add compiler/blackhole tests to tier1
Reviewed-by: kvn
2020-12-07 19:26:40 +00:00
Thomas Schatzl
e08b9ed0be 8257820: Remove gc/ergonomics/TestMinHeapSize.java as it is too brittle
Reviewed-by: jiefu, kbarrett
2020-12-07 12:43:35 +00:00
Jan Lahoda
637b0c64b0 8246778: Compiler implementation for Sealed Classes (Second Preview)
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Reviewed-by: lfoltan, mchung, alanb, mcimadamore, chegar
2020-12-07 11:11:31 +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
Jie Fu
7620124ee9 8257230: assert(InitialHeapSize >= MinHeapSize) failed: Ergonomics decided on incompatible initial and minimum heap sizes
Reviewed-by: tschatzl, sjohanss
2020-12-07 09:27:33 +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
Calvin Cheung
d8ac76fa09 8257651: LambdaEagerInit.java test failed in 2 different ways
Reviewed-by: iklam, lfoltan
2020-12-04 17:07:00 +00:00
Mikhailo Seledtsov
3eb694605e 8257732: Problem list TestJFRWithJMX for OL 8.2 until the issue is resolved
Reviewed-by: hseigel
2020-12-04 16:38:21 +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
Harold Seigel
e4497c9e69 8256718: Obsolete the long term deprecated and aliased Trace flags
Reviewed-by: sspitsyn, iklam, dholmes, coleenp
2020-12-03 13:14:57 +00:00
Richard Reingruber
4a267f1bc2 8244847: Linux/PPC: runtime/CompressedOops/CompressedClassPointers: smallHeapTest fails
Reviewed-by: stuefe, mdoerr
2020-12-03 08:50:08 +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
Calvin Cheung
3da30e991a 8257241: CDS should not handle disableEagerInitialization for archived lambda proxy classes
Reviewed-by: iklam, redestad, mchung
2020-12-02 22:17:46 +00:00
Leonid Mesnik
3e89981d98 8257623: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java shouldn't use timeout
Reviewed-by: sspitsyn, dcubed
2020-12-02 20:16:28 +00:00
Coleen Phillimore
cfb50a9cb7 8253916: ResourceExhausted/resexhausted001 crashes on Linux-x64
Reviewed-by: stuefe, sspitsyn, dholmes
2020-12-02 13:40:26 +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
Yasumasa Suenaga
fb139cff1a 8257467: [TESTBUG] -Wdeprecated-declarations is reported at sigset() in exesigtest.c
Reviewed-by: dholmes, stuefe
2020-12-02 09:06:02 +00:00
Stefan Johansson
9de283b891 8257505: nsk/share/test/StressOptions stressTime is scaled in getter but not when printed
Reviewed-by: kbarrett, dholmes
2020-12-02 08:53:54 +00:00
Jie Fu
f2a0988a4a 8257228: G1: SIGFPE in G1ConcurrentRefine::create(int*) due to buffers_to_cards overflow
Reviewed-by: kbarrett, tschatzl
2020-12-02 06:49:57 +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
Andrew Haley
4e43b28858 8256359: AArch64: runtime/ReservedStack/ReservedStackTestCompiler.java fails
Reviewed-by: shade, adinn
2020-11-26 17:52:54 +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
Kim Barrett
66943fefa7 8256517: (ref) Reference.clear during reference processing may lose notification
8240696: (ref) Reference.clear may extend the lifetime of the referent

Use private native helper to implement Reference.clear.

Reviewed-by: pliden, rkennke, mchung
2020-11-25 03:34:50 +00:00
Alex Menkov
2a1e9be6c2 8256364: vmTestbase/nsk/jvmti/scenarios/capability/CM01/cm01t002 failed with "assert(handle != __null) failed: JNI handle should not be null"
Reviewed-by: cjplummer, sspitsyn
2020-11-24 17:49:55 +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
Aleksey Shipilev
b52f6c053b 8256736: Zero: GTest tests fail with "unsuppported vm variant"
Reviewed-by: dholmes
2020-11-24 06:49:55 +00:00
Per Liden
372595cca3 8256390: ZGC: Relocate in-place instead of having a heap reserve
Reviewed-by: stefank, eosterlund
2020-11-23 23:30:38 +00:00
Aleksey Shipilev
d9ae0db699 8256746: gc/CriticalNativeArgs.java fails without -XX:-CriticalJNINatives
Reviewed-by: kbarrett, coleenp, rkennke
2020-11-23 19:12:13 +00:00
Coleen Phillimore
1aa90ac629 8256822: runtime/logging/RedefineClasses.java fails with "Error: VM option 'Verbose' is develop and is available only in debug version of VM."
Reviewed-by: stuefe
2020-11-21 21:55:59 +00:00
Aleksey Shipilev
86f36027e4 8256806: Shenandoah: optimize shenandoah/jni/TestPinnedGarbage.java test
Reviewed-by: rkennke
2020-11-20 21:45:13 +00:00
Daniel D. Daugherty
4dd71ae1c5 8256803: ProblemList runtime/ReservedStack/ReservedStackTestCompiler.java on linux-aarch64
Reviewed-by: mikael
2020-11-20 17:59:05 +00:00
Igor Ignatyev
ff00c591c3 8256569: Add C2 compiler stress flags to CTW
Reviewed-by: kvn, shade, thartmann
2020-11-20 15:01:37 +00:00
Coleen Phillimore
e7c7469cf5 8246378: [Windows] assert on MethodHandle logging code
Reviewed-by: iklam, vlivanov
2020-11-20 13:00:10 +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
Guoxiong Li
5fedb69e66 8250888: nsk/jvmti/scenarios/general_functions/GF08/gf08t001/TestDriver.java fails
Reviewed-by: cjplummer, sspitsyn
2020-11-20 07:02:48 +00:00
Stefan Johansson
b8244b606e 8236926: Concurrently uncommit memory in G1
Reviewed-by: ayang, tschatzl
2020-11-19 17:55:33 +00:00
Coleen Phillimore
ba721f5f2f 8212879: Make JVMTI TagMap table concurrent
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Co-authored-by: Coleen Phillimore <coleenp@openjdk.org>
Reviewed-by: stefank, ihse, zgu, eosterlund, sspitsyn, kbarrett
2020-11-19 14:30:02 +00:00
Leonid Mesnik
300cbaa6ad 8256418: Jittester make build is broken.
Reviewed-by: iignatyev
2020-11-18 18:05:38 +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
655bb619a3 8255936: "parsing found no loops but there are some" assertion failure with Shenandoah
Reviewed-by: thartmann, rkennke
2020-11-18 09:24:17 +00:00
Thomas Schatzl
d30956055b 8253081: G1 fails on stale objects in archived module graph in Open Archive regions
Change the handling of Open Archive areas, instead of assuming that everything in there is live always, a root containing references to all live root objects is provided. Adapt G1 to handle Open Archive regions as any other old region apart from never compacting or evacuating them.

Co-authored-by: Ioi Lam <iklam@openjdk.org>
Reviewed-by: kbarrett, sjohanss, redestad
2020-11-18 08:21:03 +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
Robbin Ehn
c5fe2c1fcb 8244679: JVM/TI GetCurrentContendedMonitor/contmon001 failed due to "(IsSameObject#3) unexpected monitor object: 0x000000562336DBA8"
Reviewed-by: pchilanomate, dcubed, dholmes, sspitsyn
2020-11-16 13:06:45 +00:00
Stefan Karlsson
6a69e304dd 8256337: ap01t001.cpp, 67: Received unexpected number of ObjectFree events: 7
Reviewed-by: coleenp, sspitsyn
2020-11-16 07:58:40 +00:00
Harold Seigel
56ea7864d4 8245215: Obsolete InitialBootClassLoaderMetaspaceSize and UseLargePagesInMetaspace
Reviewed-by: lfoltan, ccheung, stuefe, coleenp
2020-11-13 13:13:43 +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
Yumin Qi
1d3d64f34c 8255973: Add more logging to debug JDK-8255917
Reviewed-by: ccheung, stuefe, iklam
2020-11-13 03:44:41 +00:00
Calvin Cheung
c6ab0fdb15 8255990: Bitmap region of dynamic CDS archive is not unmapped
Reviewed-by: iklam, minqi
2020-11-12 16:14:29 +00:00
Thomas Schatzl
bd8693a084 8256181: Remove Allocation of old generation on alternate memory devices functionality
Reviewed-by: ayang, iignatyev, iklam
2020-11-12 14:05:50 +00:00
Harold Seigel
4df8abc200 8255787: Tag container tests that use cGroups with cgroups keyword
Reviewed-by: sspitsyn
2020-11-12 13:23:57 +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
Daniel D. Daugherty
2e19026d45 8253064: monitor list simplifications and getting rid of TSM
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Reviewed-by: eosterlund, rehn, coleenp
2020-11-11 16:20:11 +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