From alan.bateman at oracle.com Mon Jul 1 13:40:33 2019 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Mon, 01 Jul 2019 13:40:33 +0000 Subject: hg: loom/loom: Fix intermittent test failure Message-ID: <201907011340.x61DeXRQ028830@aojmv0008.oracle.com> Changeset: aadee41c39a3 Author: alanb Date: 2019-07-01 14:39 +0100 URL: http://hg.openjdk.java.net/loom/loom/rev/aadee41c39a3 Fix intermittent test failure ! test/jdk/java/lang/Fiber/Scopes.java From alan.bateman at oracle.com Tue Jul 2 08:44:28 2019 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Tue, 02 Jul 2019 08:44:28 +0000 Subject: hg: loom/loom: testWaitNotifyXXX tests failing intermittently Message-ID: <201907020844.x628iTaL027024@aojmv0008.oracle.com> Changeset: 40cdbdac00bc Author: alanb Date: 2019-07-02 09:43 +0100 URL: http://hg.openjdk.java.net/loom/loom/rev/40cdbdac00bc testWaitNotifyXXX tests failing intermittently ! test/jdk/java/lang/Fiber/Basic.java From jon.harper87 at gmail.com Thu Jul 11 15:53:22 2019 From: jon.harper87 at gmail.com (Jon Harper) Date: Thu, 11 Jul 2019 17:53:22 +0200 Subject: Scoped variables Message-ID: Hi list, I read with much interest the "scoped variable" discussion from December 2018: https://mail.openjdk.java.net/pipermail/loom-dev/2018-December/thread.html Towards the end of the conversation, the following was stated: > dean.long at oracle.com ; 12/7/18 1:15 PM > Now might be a good time to start a discussion on how we want scoped variables to be created and named. > Doug Lea dl at cs.oswego.edu ; Sun Dec 9 14:32:07 UTC 2018 > Or backing up further, how about a discussion of use cases that should be covered? Has this been done and is there a link to a conclusion ? My favorite use case is implementing what various logging frameworks call Diagnostic Contexts in a way that is safe for everyone, whether they use threads manually or abstracted behind Executors (or using loom's fibers). I think the current agreement is that Diagnostic Contexts are too dangerous (currently implemented with threadlocals) because they can spill from one context to another when using Executors, resulting in false logs. Logs are a prime example where you don't want to explicitly pass a context object everywhere but still want your logs to display contextual informations (like a request id). This is especially true when you want to add a new log somewhere in the code where the context is not passed and you have to backtrack all the call chain and add the context object to all the intermediate method arguments. Cheers, Jon From forax at univ-mlv.fr Mon Jul 15 21:01:14 2019 From: forax at univ-mlv.fr (Remi Forax) Date: Mon, 15 Jul 2019 23:01:14 +0200 (CEST) Subject: A talk about defunctionalization Message-ID: <564762789.441914.1563224474647.JavaMail.zimbra@u-pem.fr> Hi all, an interesting post http://www.pathsensitive.com/2019/07/the-best-refactoring-youve-never-heard.html which can be seen as a request for a user-controlled way to serialize a continuation (to defunctionalize it*). R?mi * i personnally prefer the term of dehydratation. From benjamin.s.berman at gmail.com Tue Jul 16 17:38:14 2019 From: benjamin.s.berman at gmail.com (Ben Berman) Date: Tue, 16 Jul 2019 10:38:14 -0700 Subject: Scoped variables In-Reply-To: References: Message-ID: I would second Jon's note on logging. Here are some more: - Game virtual machines. This would be my application. Example: Games AI. - Tracing. Example: SpanContexts in Jaeger. - Common request, user identity and authorization contexts. Example: Vertx contexts and user identity - APIs for network or process distributed locks and timers. Example: Atomix's locks and timers - Database transaction contexts. Example: Cassandra's WriteContext - Probabilistic programming language virtual machines. Example: Figaro. On Thu, Jul 11, 2019 at 10:39 AM Jon Harper wrote: > Hi list, > I read with much interest the "scoped variable" discussion from > December 2018: > https://mail.openjdk.java.net/pipermail/loom-dev/2018-December/thread.html > > Towards the end of the conversation, the following was stated: > > > dean.long at oracle.com ; 12/7/18 1:15 PM > > Now might be a good time to start a discussion on how we want scoped > variables to be created and named. > > Doug Lea dl at cs.oswego.edu ; Sun Dec 9 14:32:07 UTC 2018 > > Or backing up further, how about a discussion of use cases that should > be covered? > > Has this been done and is there a link to a conclusion ? > > My favorite use case is implementing what various logging frameworks > call Diagnostic Contexts in a way that is safe for everyone, whether > they use threads manually or abstracted behind Executors (or using > loom's fibers). I think the current agreement is that Diagnostic > Contexts are too dangerous (currently implemented with threadlocals) > because they can spill from one context to another when using > Executors, resulting in false logs. Logs are a prime example where you > don't want to explicitly pass a context object everywhere but still > want your logs to display contextual informations (like a request id). > This is especially true when you want to add a new log somewhere in > the code where the context is not passed and you have to backtrack all > the call chain and add the context object to all the intermediate > method arguments. > > Cheers, > Jon > From rickard.backman at oracle.com Thu Jul 18 09:32:14 2019 From: rickard.backman at oracle.com (rickard.backman at oracle.com) Date: Thu, 18 Jul 2019 09:32:14 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907180932.x6I9WFH6018540@aojmv0008.oracle.com> Changeset: c4fd70d6ee4a Author: rbackman Date: 2019-07-18 11:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/c4fd70d6ee4a Keeping nmethods on the continuation stacks alive. ! src/hotspot/cpu/x86/continuation_x86.inline.hpp ! src/hotspot/share/c1/c1_CodeStubs.hpp ! src/hotspot/share/c1/c1_Compilation.cpp ! src/hotspot/share/c1/c1_Compilation.hpp ! src/hotspot/share/c1/c1_LIRAssembler.cpp ! src/hotspot/share/c1/c1_LIRAssembler.hpp ! src/hotspot/share/c1/c1_Runtime1.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/code/compiledMethod.cpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/compiledMethod.inline.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/gc/shared/gcBehaviours.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuation.hpp Changeset: 1fbfb9c358bf Author: rbackman Date: 2019-07-18 11:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/1fbfb9c358bf Merge ! src/hotspot/share/runtime/continuation.hpp From jigga at jigga.pl Thu Jul 18 16:44:20 2019 From: jigga at jigga.pl (=?UTF-8?Q?Arkadiusz_Gasi=C5=84ski?=) Date: Thu, 18 Jul 2019 18:44:20 +0200 Subject: Continuation.Pinned MONITOR vs CRITICAL_SECTION Message-ID: Hi, Are both MONITOR and CRITICAL_SECTION Continuation.Pinned enums really needed? I assume that MONITOR means that the Thread/Fiber holds object?s native monitor obtained by entering synchronized method/block (i.e. critical section). Or is my assumption wrong? Thanks, Arek From alan.bateman at oracle.com Thu Jul 18 16:49:41 2019 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Thu, 18 Jul 2019 16:49:41 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907181649.x6IGngtT023461@aojmv0008.oracle.com> Changeset: e52583e674ae Author: alanb Date: 2019-07-18 17:45 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/e52583e674ae Fix build issue on Windows ! src/hotspot/share/runtime/continuation.cpp Changeset: 998f76b51216 Author: alanb Date: 2019-07-18 17:45 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/998f76b51216 Merge From Alan.Bateman at oracle.com Thu Jul 18 17:04:52 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Thu, 18 Jul 2019 18:04:52 +0100 Subject: Continuation.Pinned MONITOR vs CRITICAL_SECTION In-Reply-To: References: Message-ID: On 18/07/2019 17:44, Arkadiusz Gasi?ski wrote: > Hi, > > Are both MONITOR and CRITICAL_SECTION Continuation.Pinned enums really > needed? I assume that MONITOR means that the Thread/Fiber holds object?s > native monitor obtained by entering synchronized method/block (i.e. > critical section). Or is my assumption wrong? > CRITICAL_SECTION relates to pin/unpin. There isn't anything in the JDK using these at this time so you probably won't see this this as a reason value. -Alan. From rickard.backman at oracle.com Fri Jul 19 09:10:47 2019 From: rickard.backman at oracle.com (rickard.backman at oracle.com) Date: Fri, 19 Jul 2019 09:10:47 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907190910.x6J9AlBY023889@aojmv0008.oracle.com> Changeset: 186646672fb4 Author: rbackman Date: 2019-07-19 11:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/186646672fb4 Cleanup for keepalive handles. ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuation.hpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp Changeset: 423f4ecbf972 Author: rbackman Date: 2019-07-19 11:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/423f4ecbf972 Merge ! src/hotspot/share/runtime/continuation.hpp From lei.yul at alibaba-inc.com Fri Jul 19 08:48:12 2019 From: lei.yul at alibaba-inc.com (Lei Yu) Date: Fri, 19 Jul 2019 16:48:12 +0800 Subject: =?UTF-8?B?RmliZXIgdHJ5IG91dCBmZWVkYmFjaw==?= Message-ID: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> Hi, Here are some feedback on our try out of loom from Alibaba. We have written a test of the message passing between the Fibers to verify the performance under high concurrency. 1. An assertion error occurred while running the test(can be reproduced by the code in the attachment): java.lang.AssertionError at java.base/java.lang.Continuation.resizeStack(Continuation.java:685) at java.base/java.lang.Continuation.maybeShrink(Continuation.java:671) at java.base/java.lang.Continuation.postYieldCleanup(Continuation.java:465) at java.base/java.lang.Continuation.run(Continuation.java:341) at java.base/java.lang.Fiber.runContinuation(Fiber.java:367) at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1425) ... I think the deeper reason is that the value of Continuation.sp has been changed between maybeShrink() and resizeStack(). 2. Thaw/Freeze interpreter frame will be slowed down by compute_oop_map significantly. [image.png] If a Fiber is executing as a consumer of a BlockingQueue in loop, we can frequently observe the interpreter frame exists even though compilation occurs, thaw/freeze interpreter frame may become a performance bottleneck. Thanks Lei Yu From Alan.Bateman at oracle.com Fri Jul 19 11:05:48 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Fri, 19 Jul 2019 12:05:48 +0100 Subject: Fiber try out feedback In-Reply-To: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> References: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> Message-ID: <43c27c68-1f04-22e8-0824-2a3c8c83d13e@oracle.com> On 19/07/2019 09:48, Lei Yu wrote: > Hi, > > Here are some feedback on our try out of loom from Alibaba. > We have written a test of the message passing between the Fibers to verify the performance under high concurrency. > 1. An assertion error occurred while running the test(can be reproduced by the code in the attachment): > java.lang.AssertionError > at java.base/java.lang.Continuation.resizeStack(Continuation.java:685) > at java.base/java.lang.Continuation.maybeShrink(Continuation.java:671) > at java.base/java.lang.Continuation.postYieldCleanup(Continuation.java:465) > at java.base/java.lang.Continuation.run(Continuation.java:341) > at java.base/java.lang.Fiber.runContinuation(Fiber.java:367) > at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1425) > ... > > I think the deeper reason is that the value of Continuation.sp has been changed between maybeShrink() and resizeStack(). > > 2. Thaw/Freeze interpreter frame will be slowed down by compute_oop_map significantly. > [image.png] > > If a Fiber is executing as a consumer of a BlockingQueue in loop, we can frequently observe the interpreter frame exists even though compilation occurs, > thaw/freeze interpreter frame may become a performance bottleneck. Thanks for the bug report/data. I think the attachments (test case and PNG) were dropped by the mail system. Can you re-send with the test case inlined or if you have someone with write access to cr.openjdk.java.net then maybe they could be published there? -Alan From ron.pressler at oracle.com Fri Jul 19 12:16:46 2019 From: ron.pressler at oracle.com (Ron Pressler) Date: Fri, 19 Jul 2019 13:16:46 +0100 Subject: Fiber try out feedback In-Reply-To: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> References: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> Message-ID: Thank you for trying out our prototype, and we will fix the bug you've found ASAP. As to the performance issues you mentioned, a couple of things: 1. Slow processing of interpreted frames shouldn?t have a significant impact, as that is only performed if the frame is actually executed in the recent continuation session. However, that behavior was switched off by default? (it is now on by default). Which brings me to the second point: 2. This is not yet the right time to benchmark performance. We are making constant changes that can have big effects on both speed and footprint. Once the features and the implementation stabilize we will appreciate Any help with benchmarking Loom on various workloads.? For the time being we are mostly interested in reports about the API (how easy it is to use, run existing code, etc.), and, in particular, the structured concurrency aspects, as well as bug reports (thank you, again, for that). Ron On July 19, 2019 at 11:59:55 AM, Lei Yu (lei.yul at alibaba-inc.com) wrote: Hi, Here are some feedback on our try out of loom from Alibaba. We have written a test of the message passing between the Fibers to verify the performance under high concurrency. 1. An assertion error occurred while running the test(can be reproduced by the code in the attachment): java.lang.AssertionError at java.base/java.lang.Continuation.resizeStack(Continuation.java:685) at java.base/java.lang.Continuation.maybeShrink(Continuation.java:671) at java.base/java.lang.Continuation.postYieldCleanup(Continuation.java:465) at java.base/java.lang.Continuation.run(Continuation.java:341) at java.base/java.lang.Fiber.runContinuation(Fiber.java:367) at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1425) ... I think the deeper reason is that the value of Continuation.sp has been changed between maybeShrink() and resizeStack(). 2. Thaw/Freeze interpreter frame will be slowed down by compute_oop_map significantly. [image.png] If a Fiber is executing as a consumer of a BlockingQueue in loop, we can frequently observe the interpreter frame exists even though compilation occurs, thaw/freeze interpreter frame may become a performance bottleneck. Thanks Lei Yu From ron.pressler at oracle.com Fri Jul 19 12:21:15 2019 From: ron.pressler at oracle.com (Ron Pressler) Date: Fri, 19 Jul 2019 13:21:15 +0100 Subject: Scoped variables In-Reply-To: References: Message-ID: We haven?t had much time to spend on this recently, and we certainly have no conclusions as of yet, but this is sure to become an area of focus once the more basic areas of the API have stabilized. We are, however, very much interested in hearing some thoughts about this. In particular, is the idea of a binding with a dynamic scope that reverts to the old value when we exit the scope a better one than the existing un-scoped lifetime of ThreadLocals, whose value persists until the next time it is set? Ron On July 11, 2019 at 6:38:37 PM, Jon Harper (jon.harper87 at gmail.com) wrote: Hi list, I read with much interest the "scoped variable" discussion from December 2018: https://mail.openjdk.java.net/pipermail/loom-dev/2018-December/thread.html Towards the end of the conversation, the following was stated: > dean.long at oracle.com ; 12/7/18 1:15 PM > Now might be a good time to start a discussion on how we want scoped variables to be created and named. > Doug Lea dl at cs.oswego.edu ; Sun Dec 9 14:32:07 UTC 2018 > Or backing up further, how about a discussion of use cases that should be covered? Has this been done and is there a link to a conclusion ? My favorite use case is implementing what various logging frameworks call Diagnostic Contexts in a way that is safe for everyone, whether they use threads manually or abstracted behind Executors (or using loom's fibers). I think the current agreement is that Diagnostic Contexts are too dangerous (currently implemented with threadlocals) because they can spill from one context to another when using Executors, resulting in false logs. Logs are a prime example where you don't want to explicitly pass a context object everywhere but still want your logs to display contextual informations (like a request id). This is especially true when you want to add a new log somewhere in the code where the context is not passed and you have to backtrack all the call chain and add the context object to all the intermediate method arguments. Cheers, Jon From ron.pressler at oracle.com Fri Jul 19 14:30:08 2019 From: ron.pressler at oracle.com (ron.pressler at oracle.com) Date: Fri, 19 Jul 2019 14:30:08 +0000 Subject: hg: loom/loom: 4 new changesets Message-ID: <201907191430.x6JEU9ZN025503@aojmv0008.oracle.com> Changeset: 3d74bc8cc177 Author: rpressler Date: 2019-07-19 14:44 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/3d74bc8cc177 Remove link-address from compiled frames and add double-NOP code ! src/hotspot/cpu/x86/continuation_x86.inline.hpp ! src/hotspot/cpu/x86/frame_x86.hpp ! src/hotspot/cpu/x86/frame_x86.inline.hpp ! src/hotspot/cpu/x86/hframe_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/nativeInst_x86.cpp ! src/hotspot/cpu/x86/nativeInst_x86.hpp ! src/hotspot/cpu/x86/oopMapStubGenerator_x86.cpp ! src/hotspot/share/code/codeCache.cpp ! src/hotspot/share/code/codeCache.inline.hpp ! src/hotspot/share/compiler/oopMap.cpp ! src/hotspot/share/compiler/oopMap.hpp ! src/hotspot/share/compiler/oopMap.inline.hpp ! src/hotspot/share/compiler/oopMapStubGenerator.hpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuation.hpp ! src/hotspot/share/runtime/frame.hpp ! src/hotspot/share/runtime/frame.inline.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/hotspot/share/utilities/globalDefinitions_gcc.hpp ! test/jdk/java/lang/Continuation/Basic.java Changeset: f6b2c8d757e7 Author: rpressler Date: 2019-07-19 14:44 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/f6b2c8d757e7 Merge ! src/hotspot/share/runtime/continuation.hpp Changeset: 3e331285e5a2 Author: rpressler Date: 2019-07-19 15:09 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/3e331285e5a2 turn off PERFTEST, which was accidentally left on ! src/hotspot/share/runtime/continuation.cpp Changeset: eefca691e5d9 Author: rpressler Date: 2019-07-19 15:10 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/eefca691e5d9 Merge From lei.yul at alibaba-inc.com Fri Jul 19 11:56:17 2019 From: lei.yul at alibaba-inc.com (Lei Yu) Date: Fri, 19 Jul 2019 19:56:17 +0800 Subject: =?UTF-8?B?5Zue5aSN77yaRmliZXIgdHJ5IG91dCBmZWVkYmFjaw==?= In-Reply-To: <43c27c68-1f04-22e8-0824-2a3c8c83d13e@oracle.com> References: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com>, <43c27c68-1f04-22e8-0824-2a3c8c83d13e@oracle.com> Message-ID: Here is the test case /* * @test * @library /lib/testlibrary * @summary Test fibers pass token to each others * @run main PassTokenTest */ import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; import java.util.function.Consumer; import static jdk.testlibrary.Asserts.assertTrue; public class PassTokenTest { static final int N = 1_000_000; Runner[] runners = new Runner[16]; public static void main(String[] args) throws Exception { while (true) { new PassTokenTest().doTest(FiberScope.background()::schedule); } } private void doTest(Consumer run) throws Exception { for (int i = 0; i < runners.length; i++) { runners[i] = new Runner(i); } CountDownLatch finishLatch = new CountDownLatch(runners.length); for (Runner runner : runners) { run.accept(() -> { runner.run(); finishLatch.countDown(); }); } assertTrue(finishLatch.await(60, TimeUnit.SECONDS)); } final long start = System.currentTimeMillis(); int counter = 0; final Lock lock = new ReentrantLock(); final Condition cond = lock.newCondition(); class Runner implements Runnable { private final int ord; public Runner(int ord) { this.ord = ord; } @Override public void run() { while (counter < N) { lock.lock(); try { while (counter % runners.length != ord) { try { cond.await(); } catch (InterruptedException e) { e.printStackTrace(); } } if (++counter % 10000 == 0) // pass the token System.out.println(Thread.currentThread().getName() + "\t" + counter + "\t elapsed=" + (System.currentTimeMillis() - start)); cond.signalAll(); } finally { lock.unlock(); } } } }} Lei Yu ------------------------------------------------------------------ ????Alan Bateman ?????2019?7?19?(???) 19:05 ??????(??) ; loom-dev ????Re: Fiber try out feedback On 19/07/2019 09:48, Lei Yu wrote: > Hi, > > Here are some feedback on our try out of loom from Alibaba. > We have written a test of the message passing between the Fibers to verify the performance under high concurrency. > 1. An assertion error occurred while running the test(can be reproduced by the code in the attachment): > java.lang.AssertionError > at java.base/java.lang.Continuation.resizeStack(Continuation.java:685) > at java.base/java.lang.Continuation.maybeShrink(Continuation.java:671) > at java.base/java.lang.Continuation.postYieldCleanup(Continuation.java:465) > at java.base/java.lang.Continuation.run(Continuation.java:341) > at java.base/java.lang.Fiber.runContinuation(Fiber.java:367) > at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1425) > ... > > I think the deeper reason is that the value of Continuation.sp has been changed between maybeShrink() and resizeStack(). > > 2. Thaw/Freeze interpreter frame will be slowed down by compute_oop_map significantly. > [image.png] > > If a Fiber is executing as a consumer of a BlockingQueue in loop, we can frequently observe the interpreter frame exists even though compilation occurs, > thaw/freeze interpreter frame may become a performance bottleneck. Thanks for the bug report/data. I think the attachments (test case and PNG) were dropped by the mail system. Can you re-send with the test case inlined or if you have someone with write access to cr.openjdk.java.net then maybe they could be published there? -Alan From ron.pressler at oracle.com Fri Jul 19 16:52:10 2019 From: ron.pressler at oracle.com (ron.pressler at oracle.com) Date: Fri, 19 Jul 2019 16:52:10 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907191652.x6JGqBhx025477@aojmv0008.oracle.com> Changeset: ad0e04e37c56 Author: rpressler Date: 2019-07-19 17:50 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/ad0e04e37c56 add fence to solve stack shrinking issue in Java code ! src/java.base/share/classes/java/lang/Continuation.java Changeset: 41ba4a00fe34 Author: rpressler Date: 2019-07-19 17:51 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/41ba4a00fe34 Merge ! src/java.base/share/classes/java/lang/Continuation.java From ron.pressler at oracle.com Fri Jul 19 16:54:09 2019 From: ron.pressler at oracle.com (Ron Pressler) Date: Fri, 19 Jul 2019 17:54:09 +0100 Subject: =?utf-8?Q?=E5=9B=9E=E5=A4=8D=EF=BC=9AFiber_?=try out feedback In-Reply-To: References: <198165c3-588f-4e36-a5f8-64c730afaa8e.lei.yul@alibaba-inc.com> <43c27c68-1f04-22e8-0824-2a3c8c83d13e@oracle.com> Message-ID: Thank you. I?ve just pushed a fix to the bug you?ve found. Also note that we?ve recently pushed some changes with a possibly inverse effect to performance. Again ? this is still too soon for benchmarks or drawing any conclusions about speed or footprint. The time for that will come. Ron On July 19, 2019 at 4:34:44 PM, Lei Yu (lei.yul at alibaba-inc.com) wrote: Here is the test case /* * @test * @library /lib/testlibrary * @summary Test fibers pass token to each others * @run main PassTokenTest */ import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; import java.util.function.Consumer; import static jdk.testlibrary.Asserts.assertTrue; public class PassTokenTest { static final int N = 1_000_000; Runner[] runners = new Runner[16]; public static void main(String[] args) throws Exception { while (true) { new PassTokenTest().doTest(FiberScope.background()::schedule); } } private void doTest(Consumer run) throws Exception { for (int i = 0; i < runners.length; i++) { runners[i] = new Runner(i); } CountDownLatch finishLatch = new CountDownLatch(runners.length); for (Runner runner : runners) { run.accept(() -> { runner.run(); finishLatch.countDown(); }); } assertTrue(finishLatch.await(60, TimeUnit.SECONDS)); } final long start = System.currentTimeMillis(); int counter = 0; final Lock lock = new ReentrantLock(); final Condition cond = lock.newCondition(); class Runner implements Runnable { private final int ord; public Runner(int ord) { this.ord = ord; } @Override public void run() { while (counter < N) { lock.lock(); try { while (counter % runners.length != ord) { try { cond.await(); } catch (InterruptedException e) { e.printStackTrace(); } } if (++counter % 10000 == 0) // pass the token System.out.println(Thread.currentThread().getName() + "\t" + counter + "\t elapsed=" + (System.currentTimeMillis() - start)); cond.signalAll(); } finally { lock.unlock(); } } } }} Lei Yu ------------------------------------------------------------------ ????Alan Bateman ?????2019?7?19?(???) 19:05 ??????(??) ; loom-dev ????Re: Fiber try out feedback On 19/07/2019 09:48, Lei Yu wrote: > Hi, > > Here are some feedback on our try out of loom from Alibaba. > We have written a test of the message passing between the Fibers to verify the performance under high concurrency. > 1. An assertion error occurred while running the test(can be reproduced by the code in the attachment): > java.lang.AssertionError > at java.base/java.lang.Continuation.resizeStack(Continuation.java:685) > at java.base/java.lang.Continuation.maybeShrink(Continuation.java:671) > at java.base/java.lang.Continuation.postYieldCleanup(Continuation.java:465) > at java.base/java.lang.Continuation.run(Continuation.java:341) > at java.base/java.lang.Fiber.runContinuation(Fiber.java:367) > at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1425) > ... > > I think the deeper reason is that the value of Continuation.sp has been changed between maybeShrink() and resizeStack(). > > 2. Thaw/Freeze interpreter frame will be slowed down by compute_oop_map significantly. > [image.png] > > If a Fiber is executing as a consumer of a BlockingQueue in loop, we can frequently observe the interpreter frame exists even though compilation occurs, > thaw/freeze interpreter frame may become a performance bottleneck. Thanks for the bug report/data. I think the attachments (test case and PNG) were dropped by the mail system. Can you re-send with the test case inlined or if you have someone with write access to cr.openjdk.java.net then maybe they could be published there? -Alan From rschmitt at pobox.com Fri Jul 19 19:46:43 2019 From: rschmitt at pobox.com (Ryan Schmitt) Date: Fri, 19 Jul 2019 12:46:43 -0700 Subject: Scoped variables In-Reply-To: References: Message-ID: My knee-jerk reaction is "yes, yes it is." To me, the main value proposition of Loom is that we finally get to do structured programming again, and scoped variables pair better with this idea than fiber-local variables. Having said that, it's possible that concerns of migration compatibility (where fiber-based code exists side-by-side with explicitly event-driven async code) may render this approach unworkable in practice. On Fri, Jul 19, 2019 at 5:21 AM Ron Pressler wrote: > We haven?t had much time to spend on this recently, and we certainly have > no conclusions as of yet, > but this is sure to become an area of focus once the more basic areas of > the API have stabilized. > > We are, however, very much interested in hearing some thoughts about this. > In particular, is the idea > of a binding with a dynamic scope that reverts to the old value when we > exit the scope a better one > than the existing un-scoped lifetime of ThreadLocals, whose value persists > until the next time it is set? > > Ron > > > On July 11, 2019 at 6:38:37 PM, Jon Harper (jon.harper87 at gmail.com) wrote: > > Hi list, > I read with much interest the "scoped variable" discussion from > December 2018: > https://mail.openjdk.java.net/pipermail/loom-dev/2018-December/thread.html > > > Towards the end of the conversation, the following was stated: > > > dean.long at oracle.com ; 12/7/18 1:15 PM > > Now might be a good time to start a discussion on how we want scoped > variables to be created and named. > > Doug Lea dl at cs.oswego.edu ; Sun Dec 9 14:32:07 UTC 2018 > > Or backing up further, how about a discussion of use cases that should > be covered? > > Has this been done and is there a link to a conclusion ? > > My favorite use case is implementing what various logging frameworks > call Diagnostic Contexts in a way that is safe for everyone, whether > they use threads manually or abstracted behind Executors (or using > loom's fibers). I think the current agreement is that Diagnostic > Contexts are too dangerous (currently implemented with threadlocals) > because they can spill from one context to another when using > Executors, resulting in false logs. Logs are a prime example where you > don't want to explicitly pass a context object everywhere but still > want your logs to display contextual informations (like a request id). > This is especially true when you want to add a new log somewhere in > the code where the context is not passed and you have to backtrack all > the call chain and add the context object to all the intermediate > method arguments. > > Cheers, > Jon > From jonathan.brachthaeuser at uni-tuebingen.de Fri Jul 19 20:07:14 2019 From: jonathan.brachthaeuser at uni-tuebingen.de (jonathan.brachthaeuser) Date: Fri, 19 Jul 2019 22:07:14 +0200 Subject: Scoped variables In-Reply-To: Message-ID: Proper dynamically scoped variables are especially important in presence of multiple resumptions. I can't point out Oleg et al.'s paper often enough on this [1].While at first it might seem like it is difficult to get that part of the design right, I am fully convinced that (conceptually) storing scoped variables on the stack is the right thing to do. Delimited continuations capture parts of the stack, including the dynamic variables contained therein.CheersJonathan[1]: http://homes.sice.indiana.edu/ccshan/dynscope/DDBinding.pdf -------- Original message --------From: Ryan Schmitt Date: 7/19/19 21:46 (GMT+01:00) To: Ron Pressler Cc: loom-dev at openjdk.java.net, Jon Harper Subject: Re: Scoped variables My knee-jerk reaction is "yes, yes it is." To me, the main valueproposition of Loom is that we finally get to do structured programmingagain, and scoped variables pair better with this idea than fiber-localvariables. Having said that, it's possible that concerns of migrationcompatibility (where fiber-based code exists side-by-side with explicitlyevent-driven async code) may render this approach unworkable in practice.On Fri, Jul 19, 2019 at 5:21 AM Ron Pressler wrote:> We haven?t had much time to spend on this recently, and we certainly have> no conclusions as of yet,> but this is sure to become an area of focus once the more basic areas of> the API have stabilized.>> We are, however, very much interested in hearing some thoughts about this.> In particular, is the idea> of a binding with a dynamic scope that reverts to the old value when we> exit the scope a better one> than the existing un-scoped lifetime of ThreadLocals, whose value persists> until the next time it is set?>> Ron>>> On July 11, 2019 at 6:38:37 PM, Jon Harper (jon.harper87 at gmail.com) wrote:>> Hi list,> I read with much interest the "scoped variable" discussion from> December 2018:> https://mail.openjdk.java.net/pipermail/loom-dev/2018-December/thread.html>>> Towards the end of the conversation, the following was stated:>> > dean.long at oracle.com ; 12/7/18 1:15 PM> > Now might be a good time to start a discussion on how we want scoped> variables to be created and named.> > Doug Lea dl at cs.oswego.edu ; Sun Dec 9 14:32:07 UTC 2018> > Or backing up further, how about a discussion of use cases that should> be covered?>> Has this been done and is there a link to a conclusion ?>> My favorite use case is implementing what various logging frameworks> call Diagnostic Contexts in a way that is safe for everyone, whether> they use threads manually or abstracted behind Executors (or using> loom's fibers). I think the current agreement is that Diagnostic> Contexts are too dangerous (currently implemented with threadlocals)> because they can spill from one context to another when using> Executors, resulting in false logs. Logs are a prime example where you> don't want to explicitly pass a context object everywhere but still> want your logs to display contextual informations (like a request id).> This is especially true when you want to add a new log somewhere in> the code where the context is not passed and you have to backtrack all> the call chain and add the context object to all the intermediate> method arguments.>> Cheers,> Jon> From pnf at podsnap.com Fri Jul 19 20:51:54 2019 From: pnf at podsnap.com (Peter Fraenkel) Date: Fri, 19 Jul 2019 16:51:54 -0400 Subject: Scoped variables Message-ID: <081CE65C-3BDF-4CDF-80B0-39DE8CBAB29B@podsnap.com> > In particular, is the idea of a binding with a dynamic scope that reverts to the old value when we exit the scope a better one than the existing un-scoped lifetime of ThreadLocals, whose value persists until the next time it is set? Yes, much better, I think. The most useful and least confusing semantics would be stack-like, where a scope-local ?global? would be essentially equivalent to passing an additional argument through every method call. From jigga at jigga.pl Sat Jul 20 13:54:42 2019 From: jigga at jigga.pl (=?UTF-8?Q?Arkadiusz_Gasi=C5=84ski?=) Date: Sat, 20 Jul 2019 15:54:42 +0200 Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? Message-ID: Hi, As the subject line says, how shall I schedule a task to run in Fiber now that the static Fiber.schedule methods are no longer available? Thanks, Arek From forax at univ-mlv.fr Sat Jul 20 14:14:43 2019 From: forax at univ-mlv.fr (Remi Forax) Date: Sat, 20 Jul 2019 16:14:43 +0200 (CEST) Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? In-Reply-To: References: Message-ID: <1332260703.4301875.1563632083966.JavaMail.zimbra@u-pem.fr> Hi Arek, you can use the "background" FiberScope FiberScope.background().schedule(() -> "one"); cheers, Remi ----- Mail original ----- > De: "Arkadiusz Gasi?ski" > ?: "loom-dev" > Envoy?: Samedi 20 Juillet 2019 15:54:42 > Objet: How do I run tasks in Fibers once the Fiber.schedule methods are gone? > Hi, > > As the subject line says, how shall I schedule a task to run in Fiber now > that the static Fiber.schedule methods are no longer available? > > Thanks, > Arek From Alan.Bateman at oracle.com Sat Jul 20 14:17:05 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sat, 20 Jul 2019 15:17:05 +0100 Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? In-Reply-To: References: Message-ID: On 20/07/2019 14:54, Arkadiusz Gasi?ski wrote: > Hi, > > As the subject line says, how shall I schedule a task to run in Fiber now > that the static Fiber.schedule methods are no longer available? All fibers are scheduled in a fiber scope. The javadoc has some examples that might help and I'm sure we'll expand those as the API progresses, e.g. get started with: try (var scope = FiberScope.open()) { ??? Fiber fiber = scope.schedule(() -> "foo"); } If you really want to schedule a fiber that outlives its parent then you can use FiberScope.background().schedule(...). The static schedule methods were just convenience methods for doing that but they didn't help with structured usage. -Alan From jigga at jigga.pl Sat Jul 20 14:56:42 2019 From: jigga at jigga.pl (=?UTF-8?Q?Arkadiusz_Gasi=C5=84ski?=) Date: Sat, 20 Jul 2019 16:56:42 +0200 Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? In-Reply-To: References: Message-ID: Awesome, thanks! Also, given these changes to Fiber's API, what would be the recommended way to rewrite Mark's code he wrote for his loom rest demo he did at Devoxx last year? I assume that FiberScope.background().schedule() would be the simplest way to refactor his ThreadPool.execute(Runnable) method, but perhaps maintaining a dedicated FiberScope in the ThreadPool would be a better idea (though FiberScope.isClosed() method would be useful to not schedule new tasks if the scope has been closed)? Thanks, Arek On Sat, Jul 20, 2019 at 4:17 PM Alan Bateman wrote: > On 20/07/2019 14:54, Arkadiusz Gasi?ski wrote: > > Hi, > > > > As the subject line says, how shall I schedule a task to run in Fiber now > > that the static Fiber.schedule methods are no longer available? > All fibers are scheduled in a fiber scope. The javadoc has some examples > that might help and I'm sure we'll expand those as the API progresses, > e.g. get started with: > > try (var scope = FiberScope.open()) { > Fiber fiber = scope.schedule(() -> "foo"); > } > > If you really want to schedule a fiber that outlives its parent then you > can use FiberScope.background().schedule(...). The static schedule > methods were just convenience methods for doing that but they didn't > help with structured usage. > > -Alan > > From Alan.Bateman at oracle.com Sun Jul 21 13:24:24 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Sun, 21 Jul 2019 14:24:24 +0100 Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? In-Reply-To: References: Message-ID: On 20/07/2019 15:56, Arkadiusz Gasi?ski wrote: > Awesome, thanks! > > Also, given these changes to Fiber's API, what would be the > recommended way to rewrite Mark's code > ?he wrote for his loom rest demo > he did at Devoxx last year? > > I assume that FiberScope.background().schedule() would be the simplest > way to refactor his ThreadPool.execute(Runnable) method, but perhaps > maintaining a dedicated FiberScope in the ThreadPool would be a better > idea (though FiberScope.isClosed() method would be useful to not > schedule new tasks if the scope has been closed)? > For the Jetty "replace thread pool with fibers" example then FiberScope.background().schedule(...) should work fine. A FiberScope can only be closed by its owner so it's not possible to close the background/primordial scope. I don't think anyone has looked at changes to Jetty to get it work with structured concurrency, that could be an interesting experiment. -Alan. From kineolyan at gmail.com Sun Jul 21 14:27:47 2019 From: kineolyan at gmail.com (Olivier Peyrusse) Date: Sun, 21 Jul 2019 16:27:47 +0200 Subject: Fibers for ForkJoinPools Message-ID: Hello everyone, is there any plans to make the ForkJoin framework evolve with the introduction of continuations? One part of the ForkJoin framework uses RecursiveAction or RecursiveTask, that perform a simple fork-then-join. Other implementations like Cilk in C++ considered doing continuations as a solution after the join, while the FJ framework is currently based on work stealing. Having continuation may also simplify the writing of CountedCompleters, for they are already objects representing continuations. I guess they are no immediate easy solution to make both continuations and work-stealing play together. But I was wondering if some work was scheduled about this topic. Thanks Olivier From ron.pressler at oracle.com Mon Jul 22 15:46:22 2019 From: ron.pressler at oracle.com (Ron Pressler) Date: Mon, 22 Jul 2019 16:46:22 +0100 Subject: Fibers for ForkJoinPools In-Reply-To: References: Message-ID: I am not entirely sure I understand you question, but I?ll try to address it as much as I can. The default fiber scheduler uses FJPool by default to schedule the fibers? internal continuations. Using a work-stealing scheduler for fibers makes sense because they are assumed to be in frequent communication with one another, and work-stealing gives rise to better data locality. FJPool may well change a little bit to perform this task better. However, today?s uses of FJ, either with parallel streams or directly, are mainly for? parallelism, whereas fibers are mostly aimed to tackle concurrency and meant more for transaction processing than heavy computation. There are no current plans to employ continuations internally for FJ?s join operations, if only because we don?t yet know the overhead continuations incur, as the implementation is still very fluid; when we do, what may be OK for IO, may not be OK for fine-grained parallelism. However, FJ could probably make good use of tail-call elimination, which we intend to get around to once fibers/continuations are released. Ron On July 22, 2019 at 10:19:29 AM, Olivier Peyrusse (kineolyan at gmail.com) wrote: Hello everyone, is there any plans to make the ForkJoin framework evolve with the introduction of continuations? One part of the ForkJoin framework uses RecursiveAction or RecursiveTask, that perform a simple fork-then-join. Other implementations like Cilk in C++ considered doing continuations as a solution after the join, while the FJ framework is currently based on work stealing. Having continuation may also simplify the writing of CountedCompleters, for they are already objects representing continuations. I guess they are no immediate easy solution to make both continuations and work-stealing play together. But I was wondering if some work was scheduled about this topic. Thanks Olivier From kineolyan at gmail.com Tue Jul 23 12:03:38 2019 From: kineolyan at gmail.com (Olivier Peyrusse) Date: Tue, 23 Jul 2019 14:03:38 +0200 Subject: Fibers for ForkJoinPools In-Reply-To: References: Message-ID: Hello Ron, I think you got it very well. I was thinking that the following pseudo-code could use the concept of continuation: void method() { var taskA = ; var taskB = ; taskA.fork(); taskB.exec(); taskA.join(); // Here, we could have created a continuation, to trigger the execution of process once taskA joined process(taskA, taskB); } But your answer completely makes sense. Project Loom is focusing on IO more than using this mechanism for intensive computation. So thanks for your answer and the good work. I am waiting for its release to see it perform. Best regards [1] https://wiki.openjdk.java.net/display/loom/Structured+Concurrency Le lun. 22 juil. 2019 ? 17:46, Ron Pressler a ?crit : > I am not entirely sure I understand you question, but I?ll try to address > it as much as I can. > > The default fiber scheduler uses FJPool by default to schedule the fibers? > internal > continuations. Using a work-stealing scheduler for fibers makes sense > because they > are assumed to be in frequent communication with one another, and > work-stealing gives > rise to better data locality. FJPool may well change a little bit to > perform this task better. > > However, today?s uses of FJ, either with parallel streams or directly, are > mainly for > parallelism, whereas fibers are mostly aimed to tackle concurrency and > meant more > for transaction processing than heavy computation. > > There are no current plans to employ continuations internally for FJ?s > join operations, > if only because we don?t yet know the overhead continuations incur, as the > implementation > is still very fluid; when we do, what may be OK for IO, may not be OK for > fine-grained > parallelism. However, FJ could probably make good use of tail-call > elimination, which > we intend to get around to once fibers/continuations are released. > > Ron > > On July 22, 2019 at 10:19:29 AM, Olivier Peyrusse (kineolyan at gmail.com) > wrote: > > Hello everyone, > > is there any plans to make the ForkJoin framework evolve with the > introduction of continuations? > One part of the ForkJoin framework uses RecursiveAction or RecursiveTask, > that perform a simple fork-then-join. Other implementations like Cilk in > C++ considered doing continuations as a solution after the join, while the > FJ framework is currently based on work stealing. > Having continuation may also simplify the writing of CountedCompleters, > for > they are already objects representing continuations. > > I guess they are no immediate easy solution to make both continuations and > work-stealing play together. But I was wondering if some work was > scheduled > about this topic. > > Thanks > Olivier > > From ron.pressler at oracle.com Tue Jul 23 13:58:49 2019 From: ron.pressler at oracle.com (ron.pressler at oracle.com) Date: Tue, 23 Jul 2019 13:58:49 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907231358.x6NDwo2t019642@aojmv0008.oracle.com> Changeset: d442426e58ce Author: rpressler Date: 2019-07-23 14:58 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/d442426e58ce disable assertion that would trap under a benign condition ! src/hotspot/cpu/x86/frame_x86.inline.hpp ! src/hotspot/share/runtime/continuation.cpp Changeset: 95a20486260c Author: rpressler Date: 2019-07-23 14:58 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/95a20486260c Merge From alan.bateman at oracle.com Tue Jul 23 14:27:52 2019 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Tue, 23 Jul 2019 14:27:52 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907231427.x6NERr43009054@aojmv0008.oracle.com> Changeset: 99167c53dc7b Author: alanb Date: 2019-07-23 15:11 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/99167c53dc7b Missing owner check when propagating cancel ! src/java.base/share/classes/java/lang/Fiber.java ! src/java.base/share/classes/java/lang/FiberScope.java ! test/jdk/java/lang/Fiber/Scopes.java Changeset: 42fe2f925b70 Author: alanb Date: 2019-07-23 15:11 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/42fe2f925b70 Merge From jigga at jigga.pl Tue Jul 23 21:47:00 2019 From: jigga at jigga.pl (=?UTF-8?Q?Arkadiusz_Gasi=C5=84ski?=) Date: Tue, 23 Jul 2019 23:47:00 +0200 Subject: How do I run tasks in Fibers once the Fiber.schedule methods are gone? In-Reply-To: References: Message-ID: Hi, So my dummy implementation of Jetty's ThreadPool is: public class FiberThreadPool implements ThreadPool { private final ExecutorService scheduler = Executors.newFixedThreadPool(10); private final FiberScope poolScope = FiberScope.open(); @Override public void join() throws InterruptedException { poolScope.close(); scheduler.shutdownNow(); scheduler.awaitTermination(10, TimeUnit.SECONDS); } @Override public int getThreads() { return 0; } @Override public int getIdleThreads() { return 0; } @Override public boolean isLowOnThreads() { return false; } @Override public void execute(Runnable command) { poolScope.schedule(command); } } I assume that Jetty maintains single instance of ThreadPool implementation per running server and thus having FiberScope tied to the ThreadPool's instance should do the job. Well, I actually checked and it does. It'd be nice if there was a way to check if FiberScope is still open before we submit new task to it. Also was wondering if there are any plans to extend the ExecutorService API so that we could request our tasks to be executed in the context of Fibers rather than Threads. Something like: Fiber submit2(Callable task); After submitting the task we'd get the reference to the Fiber instance (which we could adapt to CompletableFuture if needed). And the FiberScope in which this Fiber would be running would be limited by the scope of the ExecutorService, i.e. closing ExecutorService would automatically close underlying FiberScope. Not sure if that makes sense at all, just an idea. Regards, Arek On Sun, Jul 21, 2019 at 3:24 PM Alan Bateman wrote: > On 20/07/2019 15:56, Arkadiusz Gasi?ski wrote: > > Awesome, thanks! > > Also, given these changes to Fiber's API, what would be the recommended > way to rewrite Mark's code he wrote > for his loom rest demo he did at Devoxx last year? > > I assume that FiberScope.background().schedule() would be the simplest way > to refactor his ThreadPool.execute(Runnable) method, but perhaps > maintaining a dedicated FiberScope in the ThreadPool would be a better idea > (though FiberScope.isClosed() method would be useful to not schedule new > tasks if the scope has been closed)? > > For the Jetty "replace thread pool with fibers" example then > FiberScope.background().schedule(...) should work fine. A FiberScope can > only be closed by its owner so it's not possible to close the > background/primordial scope. I don't think anyone has looked at changes to > Jetty to get it work with structured concurrency, that could be an > interesting experiment. > > -Alan. > From alan.bateman at oracle.com Wed Jul 24 08:07:13 2019 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Wed, 24 Jul 2019 08:07:13 +0000 Subject: hg: loom/loom: 197 new changesets Message-ID: <201907240807.x6O87Xnw001109@aojmv0008.oracle.com> Changeset: 1887e16a5657 Author: dcubed Date: 2019-06-24 22:38 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/1887e16a5657 8226699: [BACKOUT] JDK-8221734 Deoptimize with handshakes Reviewed-by: dholmes, rehn, dlong ! src/hotspot/share/aot/aotCodeHeap.cpp ! src/hotspot/share/aot/aotCompiledMethod.cpp ! src/hotspot/share/aot/aotCompiledMethod.hpp ! src/hotspot/share/code/codeCache.cpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/gc/z/zBarrierSetNMethod.cpp ! src/hotspot/share/gc/z/zNMethod.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/methodHandles.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/biasedLocking.cpp ! src/hotspot/share/runtime/biasedLocking.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/mutex.hpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/mutexLocker.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/services/dtraceAttacher.cpp - test/hotspot/jtreg/compiler/codecache/stress/UnexpectedDeoptimizationAllTest.java Changeset: 80abfee2afaf Author: aefimov Date: 2019-06-25 16:34 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/80abfee2afaf 8226730: Missing `@` in code tags Reviewed-by: bpb Contributed-by: Patrick Concannon ! src/java.base/share/classes/java/net/DatagramSocketImpl.java ! src/java.base/share/classes/java/net/URLStreamHandler.java Changeset: c9590e526d19 Author: ccheung Date: 2019-06-25 09:41 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/c9590e526d19 8226462: [TESTBUG] runtime/appcds/sharedStrings/SysDictCrash.java failed with Cannot dump shared archive Summary: Add a CDS log statement in arguments.cpp. The test catches RuntimeException duing dumping and checks if the log statement is in the stdout. Reviewed-by: iklam, dholmes ! src/hotspot/share/runtime/arguments.cpp ! test/hotspot/jtreg/runtime/appcds/sharedStrings/SysDictCrash.java Changeset: bdaec4628ea9 Author: vromero Date: 2019-06-25 18:21 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/bdaec4628ea9 8226709: MethodTypeDesc::resolveConstantDesc needs access check per the specification Reviewed-by: mchung, mcimadamore ! src/java.base/share/classes/java/lang/constant/MethodTypeDescImpl.java + test/jdk/java/lang/constant/access_test/pkg1/MethodTypeDescriptorAccessTest.java + test/jdk/java/lang/constant/access_test/pkg2/NonPublicClass.java + test/jdk/java/lang/constant/access_test/pkg2/PublicClass.java Changeset: 688f985f29c3 Author: valeriep Date: 2019-06-26 01:15 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/688f985f29c3 8226607: Inconsistent info between pcsclite.md and MUSCLE headers Summary: Updated the info based on MUSCLE v1.8.24 Reviewed-by: ascarpino ! src/java.smartcardio/unix/legal/pcsclite.md + src/java.smartcardio/unix/native/libj2pcsc/MUSCLE/COPYING Changeset: b7f68ddec66f Author: smonteith Date: 2019-06-25 10:50 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/b7f68ddec66f 8226515: AArch64: float point register corruption in ZBarrierSetAssembler::load_at Reviewed-by: aph ! src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp Changeset: 0bf9477626ef Author: bobv Date: 2019-06-26 11:25 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/0bf9477626ef 8224764: Create jtreg test for JDK-8222252 Reviewed-by: tschatzl + test/hotspot/jtreg/gc/arguments/TestMaxRAMFlags.java Changeset: 1761df20fa12 Author: jwilhelm Date: 2019-06-26 22:16 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/1761df20fa12 Merge ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/runtime/arguments.cpp Changeset: 0ad04195be0c Author: igerasim Date: 2019-06-26 17:06 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/0ad04195be0c 8224716: Javadoc of Int/Long/DoubleSummaryStatistics should mention possible overflow of count Reviewed-by: bpb ! src/java.base/share/classes/java/util/DoubleSummaryStatistics.java ! src/java.base/share/classes/java/util/IntSummaryStatistics.java ! src/java.base/share/classes/java/util/LongSummaryStatistics.java Changeset: a6e2d06391d6 Author: jwilhelm Date: 2019-06-27 03:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/a6e2d06391d6 Added tag jdk-14+3 for changeset e64383344f14 ! .hgtags Changeset: d58442b8abc1 Author: jwilhelm Date: 2019-06-27 03:33 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/d58442b8abc1 8225497: Update Graal Reviewed-by: kvn ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Main.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/MarkId.java ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/MetadataBuilder.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/EconomicMap.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/EconomicSet.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/Equivalence.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/MapCursor.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/Pair.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/UnmodifiableEconomicMap.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/UnmodifiableEconomicSet.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/UnmodifiableMapCursor.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.collections/src/jdk/internal/vm/compiler/collections/package-info.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.libgraal/src/jdk/internal/vm/compiler/libgraal/LibGraal.java + src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.libgraal/src/jdk/internal/vm/compiler/libgraal/LibGraalScope.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.libgraal/src/jdk/internal/vm/compiler/libgraal/OptionsEncoder.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/ComparableWord.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/LocationIdentity.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/Pointer.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/PointerBase.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/SignedWord.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/UnsignedWord.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/WordBase.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/WordFactory.java ! src/jdk.internal.vm.compiler/share/classes/jdk.internal.vm.compiler.word/src/jdk/internal/vm/compiler/word/package-info.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/BlackholeDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/ControlFlowAnchorDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/IterationDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/OpaqueDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/ProbabilityDirectiveTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.aarch64/src/org/graalvm/compiler/asm/aarch64/AArch64MacroAssembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64AsmOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm.amd64/src/org/graalvm/compiler/asm/amd64/AMD64Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Assembler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Buffer.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Label.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.code/src/org/graalvm/compiler/code/DataSection.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64.test/src/org/graalvm/compiler/core/aarch64/test/AArch64BitFieldTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.aarch64/src/org/graalvm/compiler/core/aarch64/AArch64NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64LIRGenerator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64NodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/GraalOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/LIRKind.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/SpeculativeExecutionAttacksMitigations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/FloatStamp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/SPARCNodeMatchRules.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CanonicalizedConversionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CompareCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CompareCanonicalizerTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CompareCanonicalizerTest3.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest10.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest13.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest14.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest15.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest16.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ConditionalEliminationTestBase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CopyOfVirtualizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CountedLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CustomizedBytecodePatternTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/FloatingReadTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraalCompilerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GraphEncoderTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardedIntrinsicTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/HashCodeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IfCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ImplicitNullCheckTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IntegerDivPowerOf2Test.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/IntegerEqualsCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LockEliminationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LoopFullUnrollTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/LoopUnswitchTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/MergeCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/NodePropertiesTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/OptionsVerifierTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/PushNodesThroughPiTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/PushThroughIfTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReadAfterCheckCastTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReassociateAndCanonicalTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ReferenceGetLoopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ScalarTypeSystemTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/SchedulingTest2.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/StampCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/StraighteningTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/TypeSystemTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnsafeReadEliminationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnsafeVirtualizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnusedArray.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyBailoutUsage.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyBufferUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyCallerSensitiveMethods.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyDebugUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyFoldableMethods.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyGetOptionsUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyGraphAddUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyInstanceOfUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifySystemPropertyUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyUnsafeAccess.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyUpdateUsages.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyUsageWithEquals.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyVirtualizableUsage.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/CompiledMethodTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/deopt/SynchronizedMethodDeoptimizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/ea/PoorMansEATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/inlining/NestedLoopEffectsPhaseComplexityTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/CompilationWrapper.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalCompilerOptions.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/GraalServiceThread.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/LIRCompilerBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/LIRGenerationProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/EconomyLowTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/EconomyMidTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/GraphChangeMonitoringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/HighTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/LowTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/DebugOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.debug/src/org/graalvm/compiler/debug/TTY.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Graph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.graph/src/org/graalvm/compiler/graph/Node.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotJumpToExceptionHandlerInCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64ArrayIndexOfStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotJumpToExceptionHandlerInCallerOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/MathDoubleFMATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/MathFloatFMATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/StringUTF16ToBytesGetCharsTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.lir.test/src/org/graalvm/compiler/hotspot/lir/test/MitigateExceedingMaxOopMapStackOffsetTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/BoxDeoptimizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CRC32CSubstitutionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CompileTheWorld.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ConstantPoolSubstitutionsTests.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/DeferredBarrierAdditionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotGraalCompilerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HotSpotInvokeDynamicPluginTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/HsErrLogTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/LoadJavaMirrorWithKlassTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ObjectHashCodeInliningTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/TestIntrinsicCompiles.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationTask.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilationWatchDog.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompilerConfigurationFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotBackend.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotBackendFactory.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompiler.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalRuntime.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalServices.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotTTYStreamProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/JVMCIVersionCheck.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/SymbolicSnippetEncoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/debug/BenchmarkCounters.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ReferentFieldReadBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/CardTableBarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ObjectWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/AddressLoweringHotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGCProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotHostForeignCallsProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotProviders.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotSuitesProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotUnsafeSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/AllocaNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/DimensionsNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/MonitorCounterNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/VMErrorNode.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/WriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/LoadConstantIndirectlyNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/aot/ResolveConstantStubCall.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/AheadOfTimeVerificationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/LoadJavaMirrorWithKlassPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/OnStackReplacementPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierAdditionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierVerificationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/EliminateRedundantInitializationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/aot/ReplaceConstantNodesPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/profiling/FinalizeProfileNodesPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotG1WriteBarrierSnippets.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotSerialWriteBarrierSnippets.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/Log.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/MonitorSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/NewObjectSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA2Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHA5Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/SHASubstitutions.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/OutOfBoundsExceptionStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/SnippetStub.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/StubUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParserOptions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/FrameStateBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/lang/UnaryMath.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/NestedLoop_EA.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.jtt/src/org/graalvm/compiler/jtt/optimize/TrichotomyFloats.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64BitFieldOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.aarch64/src/org/graalvm/compiler/lir/aarch64/AArch64Move.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ArrayEqualsOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/BailoutAndRestartBackendException.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/LIR.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/dfa/LocationMarkerPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/framemap/FrameMap.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/framemap/FrameMapBuilder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/framemap/FrameMapBuilderImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/framemap/VirtualStackSlotRange.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/gen/LIRGeneratorTool.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/ContextlessLoopPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/ConvertDeoptimizeToGuardPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopFullUnrollPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPartialUnrollPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPeelingPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.phases/src/org/graalvm/compiler/loop/phases/LoopTransformations.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop.test/src/org/graalvm/compiler/loop/test/LoopPartialUnrollTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopEx.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.microbenchmarks/src/org/graalvm/compiler/microbenchmarks/graal/ConditionalEliminationBenchmark.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/IfNodeCanonicalizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/LoopPhiCanonicalizerTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes.test/src/org/graalvm/compiler/nodes/test/ShortCircuitOrNodeTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/GraphEncoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/IfNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/StructuredGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/ReinterpretNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedDivNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/cfg/ControlFlowGraph.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/ArrayRangeWrite.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/extended/IntegerSwitchNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/ArrayRangeWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/BarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/CardTableBarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1ArrayRangePostWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1ArrayRangePreWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1BarrierSet.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1PostWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1PreWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/G1ReferentFieldReadBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/ObjectWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/SerialArrayRangeWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/SerialWriteBarrier.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/gc/WriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/MethodSubstitutionPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/MethodCallTargetNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FloatableAccessNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/ReadNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/address/IndexAddressNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProviders.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProvidersDelegate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/CoreProvidersImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/DelegatingReplacements.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/GCProvider.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/spi/Replacements.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/Option.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionStability.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.options/src/org/graalvm/compiler/options/OptionsParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/CanonicalizerPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/ConditionalEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FixReadsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/FloatingReadPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/IncrementalCanonicalizerPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/IterativeConditionalEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/LoweringPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/NodeCounterPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/PropagateDeoptimizeProbabilityPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/UseTrappingNullChecksPhase.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/WriteBarrierAdditionPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/InliningUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/inlining/walker/InliningData.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/util/EconomicSetNodeEventListener.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/util/TracingNodeEventListener.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/PhaseSuite.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/schedule/SchedulePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/HighTierContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/LowTierContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/MidTierContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/PhaseContext.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/util/Providers.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.aarch64/src/org/graalvm/compiler/replacements/aarch64/AArch64GraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOf.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64GraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringLatin1Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.amd64/src/org/graalvm/compiler/replacements/amd64/AMD64StringUTF16Substitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ArraysSubstitutionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DeoptimizeOnExceptionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DerivedOopTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/FoldTest.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/InvokerSignatureMismatchTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/PEGraphDecoderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/ReplacementsParseTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/RootMethodSubstitutionTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/StringCompareToTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/StringCompressInflateTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/StringSubstitutionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/SubstitutionsTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/classfile/ClassfileBytecodeProviderTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/classfile/RedefineIntrinsicTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/CachingPEGraphDecoder.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/ConstantBindingParameterPlugin.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/DefaultJavaLoweringProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/Log.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/ReplacementsImpl.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/SnippetTemplate.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/StandardGraphBuilderPlugins.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/gc/G1WriteBarrierSnippets.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/gc/SerialWriteBarrierSnippets.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/gc/WriteBarrierSnippets.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectStoreNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MacroNode.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MethodHandleNode.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/BufferUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/GraalServices.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/JavaVersionUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/ExportingClassLoader.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/GraalTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/JLModule.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/SubprocessUtil.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EarlyReadEliminationPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/EffectsPhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/GraphEffectList.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.virtual/src/org/graalvm/compiler/virtual/phases/ea/PartialEscapePhase.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/GraphOutput.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/GraphProtocol.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.graphio/src/org/graalvm/graphio/package-info.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.util.test/src/org/graalvm/util/test/CollectionSizeTest.java Changeset: 3e31a8beaae4 Author: tschatzl Date: 2019-06-27 11:48 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/3e31a8beaae4 8213108: Improve work distribution during remembered set scan Summary: Before scanning the heap for roots into the collection set, merge them into a single remembered set (card table) and do work distribution based on location like other collectors do. Reviewed-by: kbarrett, lkorinth ! src/hotspot/share/gc/g1/g1Analytics.cpp ! src/hotspot/share/gc/g1/g1Analytics.hpp ! src/hotspot/share/gc/g1/g1CardTable.cpp ! src/hotspot/share/gc/g1/g1CardTable.hpp ! src/hotspot/share/gc/g1/g1CardTable.inline.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1CollectedHeap.inline.hpp ! src/hotspot/share/gc/g1/g1CollectionSet.cpp ! src/hotspot/share/gc/g1/g1CollectionSet.hpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.hpp ! src/hotspot/share/gc/g1/g1EvacFailure.cpp ! src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp ! src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp ! src/hotspot/share/gc/g1/g1HeterogeneousHeapPolicy.cpp ! src/hotspot/share/gc/g1/g1HeterogeneousHeapPolicy.hpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.cpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.hpp ! src/hotspot/share/gc/g1/g1Policy.cpp ! src/hotspot/share/gc/g1/g1Policy.hpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RemSet.hpp ! src/hotspot/share/gc/g1/heapRegion.cpp ! src/hotspot/share/gc/g1/heapRegion.hpp ! src/hotspot/share/gc/g1/heapRegionRemSet.cpp ! src/hotspot/share/gc/g1/heapRegionRemSet.hpp + src/hotspot/share/gc/g1/heapRegionRemSet.inline.hpp ! src/hotspot/share/gc/g1/sparsePRT.cpp ! src/hotspot/share/gc/g1/sparsePRT.hpp ! src/hotspot/share/gc/shared/cardTable.hpp ! src/hotspot/share/gc/shared/workerDataArray.hpp ! src/hotspot/share/gc/shared/workerDataArray.inline.hpp ! test/hotspot/jtreg/gc/g1/TestGCLogMessages.java ! test/jdk/jdk/jfr/event/gc/collection/TestG1ParallelPhases.java Changeset: 91b38bfb9079 Author: aoqi Date: 2019-06-27 18:00 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/91b38bfb9079 8226871: invalid use of incomplete type class MacroAssembler when building minimal after JDK-8191278 Reviewed-by: shade ! src/hotspot/share/runtime/stubRoutines.cpp Changeset: 61e03d5d6bcb Author: dfuchs Date: 2019-06-27 16:12 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/61e03d5d6bcb 8226825: Replace wildcard address with loopback or local host in tests - part 19 Summary: Replace use of wildcard by the loopback address, or possibly the local host address, wherever possible, to improve test stability. Reviewed-by: chegar, bpb Contributed-by: julia.boes at oracle.com ! test/jdk/java/net/Socket/SetSoLinger.java ! test/jdk/sun/net/www/protocol/http/AsyncDisconnect.java ! test/jdk/sun/net/www/protocol/http/B6641309.java ! test/jdk/sun/net/www/protocol/http/B6660405.java ! test/jdk/sun/net/www/protocol/http/B6890349.java ! test/jdk/sun/net/www/protocol/http/Modified.java Changeset: be05771cdfdf Author: coleenp Date: 2019-06-27 11:40 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/be05771cdfdf 8225437: JvmtiExport::gc_epilogue is unnecessary Summary: Remove jvmtiExport::gc_epilogue after full GCs Reviewed-by: dholmes, sspitsyn, dlong ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp ! src/hotspot/share/gc/g1/g1FullCollector.cpp ! src/hotspot/share/gc/parallel/psMarkSweep.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/serial/genMarkSweep.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMarkCompact.cpp ! src/hotspot/share/gc/z/zRootsIterator.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiExport.hpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/prims/jvmtiImpl.hpp Changeset: 03468b206457 Author: rehn Date: 2019-06-26 18:22 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/03468b206457 8225702: Safepoint counter can't be used for safepoint detection Reviewed-by: dcubed, dholmes ! src/hotspot/share/ci/ciMethodData.cpp ! src/hotspot/share/code/dependencyContext.hpp ! src/hotspot/share/runtime/biasedLocking.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/vmThread.cpp Changeset: 4c52949a3487 Author: jwilhelm Date: 2019-06-27 03:13 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/4c52949a3487 Added tag jdk-13+27 for changeset b7f68ddec66f ! .hgtags Changeset: f3b62797e2d0 Author: rschmelter Date: 2019-06-27 00:51 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/f3b62797e2d0 8226608: Hide the onjcmd option from the help output Reviewed-by: sspitsyn, clanger ! src/hotspot/share/services/diagnosticCommand.cpp ! src/jdk.jdwp.agent/share/native/libjdwp/debugInit.c Changeset: f6d6fd388315 Author: prr Date: 2019-06-27 12:55 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/f6d6fd388315 8226783: GTK is not being returned as the System L&F on Gnome Reviewed-by: serb, psadhukhan ! src/java.desktop/unix/classes/sun/awt/UNIXToolkit.java + test/jdk/javax/swing/LookAndFeel/SystemLookAndFeel/SystemLookAndFeelTest.java Changeset: 73f1c84ca264 Author: jwilhelm Date: 2019-06-27 22:03 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/73f1c84ca264 Merge ! .hgtags Changeset: c59f36ed7b52 Author: thartmann Date: 2019-06-28 09:12 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/c59f36ed7b52 8226879: Memory leak in Type::hashcons Summary: Call delete on xdual type. Reviewed-by: kvn ! src/hotspot/share/opto/type.cpp Changeset: 33bb8c970770 Author: michaelm Date: 2019-06-28 11:26 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/33bb8c970770 8222968: ByteArrayPublisher is not thread-safe resulting in broken re-use of HttpRequests Reviewed-by: chegar, dfuchs ! src/java.net.http/share/classes/jdk/internal/net/http/RequestPublishers.java + test/jdk/java/net/httpclient/ByteArrayPublishers.java Changeset: f9a2f93a0c87 Author: dpochepk Date: 2019-06-28 17:10 +0300 URL: https://hg.openjdk.java.net/loom/loom/rev/f9a2f93a0c87 8223173: Implement fast class initialization checks on AARCH64 Reviewed-by: aph ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.hpp Changeset: b2cbe2f674f0 Author: dfuchs Date: 2019-06-28 15:58 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/b2cbe2f674f0 8226514: Replace wildcard address with loopback or local host in tests - part 14 Summary: Improve test stabilty by getting rid of the wildcard address whenever possible. Reviewed-by: chegar, vtewari ! test/jdk/java/net/HttpCookie/IllegalCookieNameTest.java ! test/jdk/java/net/HttpURLConnection/SetAuthenticator/HTTPTest.java ! test/jdk/java/net/HttpURLConnection/SetAuthenticator/HTTPTestServer.java ! test/jdk/sun/net/ftp/FtpURLConnectionLeak.java ! test/jdk/sun/net/www/http/HttpClient/RetryPost.java ! test/jdk/sun/net/www/protocol/http/B5017051.java ! test/jdk/sun/net/www/protocol/http/B6296310.java ! test/jdk/sun/net/www/protocol/http/B6299712.java ! test/jdk/sun/net/www/protocol/http/NoNTLM.java ! test/jdk/sun/net/www/protocol/http/UserAgent.java ! test/jdk/sun/net/www/protocol/http/ZoneId.java ! test/jdk/sun/net/www/protocol/https/NewImpl/JavaxHTTPSConnection.java Changeset: 52ef2c940423 Author: aoqi Date: 2019-06-28 18:01 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/52ef2c940423 8226878: zero crashes after JDK-8191278 Reviewed-by: shade, jcm ! src/hotspot/cpu/zero/stubGenerator_zero.cpp Changeset: b279ae9843b8 Author: ccheung Date: 2019-06-28 09:49 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/b279ae9843b8 8211723: AppCDS: referring to a jar file in any way other than exactly how it was done during dumping doesn't work Summary: Replaced os::file_name_strncmp() with os::same_files(). Reviewed-by: iklam, jiangli ! src/hotspot/os/aix/os_aix.inline.hpp ! src/hotspot/os/bsd/os_bsd.inline.hpp ! src/hotspot/os/linux/os_linux.inline.hpp ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/solaris/os_solaris.inline.hpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/os/windows/os_windows.inline.hpp ! src/hotspot/share/classfile/classLoader.cpp ! src/hotspot/share/classfile/classLoader.hpp ! src/hotspot/share/classfile/classLoaderExt.cpp ! src/hotspot/share/classfile/sharedPathsMiscInfo.cpp ! src/hotspot/share/memory/filemap.cpp ! src/hotspot/share/memory/filemap.hpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/os.hpp ! test/hotspot/jtreg/TEST.groups ! test/hotspot/jtreg/runtime/appcds/AppCDSOptions.java ! test/hotspot/jtreg/runtime/appcds/AppendClasspath.java ! test/hotspot/jtreg/runtime/appcds/BootClassPathMismatch.java ! test/hotspot/jtreg/runtime/appcds/PrintSharedArchiveAndExit.java + test/hotspot/jtreg/runtime/appcds/RelativePath.java ! test/hotspot/jtreg/runtime/appcds/TestCommon.java ! test/hotspot/jtreg/runtime/appcds/dynamicArchive/DynamicArchiveTestBase.java + test/hotspot/jtreg/runtime/appcds/dynamicArchive/RelativePath.java Changeset: c9093341cfe2 Author: bpb Date: 2019-06-28 13:02 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/c9093341cfe2 8226706: (se) Reduce the number of outer loop iterations on Windows in java/nio/channels/Selector/RacyDeregister.java Reviewed-by: alanb ! test/jdk/java/nio/channels/Selector/RacyDeregister.java Changeset: 1de28d191f9c Author: darcy Date: 2019-06-28 18:51 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/1de28d191f9c 8226809: Circular reference in printed stack trace is not correctly indented & ambiguous Reviewed-by: bpb ! src/java.base/share/classes/java/lang/Throwable.java Changeset: ed7851b2d5e4 Author: jjiang Date: 2019-06-28 05:29 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS Reviewed-by: xuelei ! test/jdk/javax/net/ssl/templates/SSLSocketTemplate.java + test/jdk/sun/security/ssl/CipherSuite/NamedGroupsWithCipherSuite.java Changeset: bad3754349aa Author: jlahoda Date: 2019-06-27 10:39 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/bad3754349aa 8226510: No compilation error when switch expression has no result expressions Summary: Ensure a compile-time error is produced when there are no result expressions in an switch expression. Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! test/langtools/tools/javac/diags/examples/BreakOutsideSwitchExpression.java ! test/langtools/tools/javac/diags/examples/ContinueOutsideSwitchExpression.java ! test/langtools/tools/javac/diags/examples/ReturnOutsideSwitchExpression.java ! test/langtools/tools/javac/diags/examples/RuleCompletesNormally.java ! test/langtools/tools/javac/diags/examples/SwitchExpressionCompletesNormally.java + test/langtools/tools/javac/diags/examples/SwitchExpressionNoResultExpressions.java ! test/langtools/tools/javac/switchexpr/EmptySwitch.java ! test/langtools/tools/javac/switchexpr/EmptySwitch.out ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBreaks2.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBreaks2.out ! test/langtools/tools/javac/switchexpr/ExpressionSwitchFlow.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchFlow.out ! test/langtools/tools/javac/switchexpr/WrongBreakTest.out Changeset: 33766821f738 Author: naoto Date: 2019-06-28 08:48 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/33766821f738 8226876: Assertion in sun/util/locale/provider/CalendarDataUtility on Windows after JDK-8218960 Reviewed-by: clanger ! src/java.base/share/classes/sun/util/locale/provider/CalendarDataUtility.java + test/jdk/sun/util/locale/provider/CalendarDataRegression.java Changeset: 6aa047de311b Author: valeriep Date: 2019-06-28 19:36 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/6aa047de311b 8226651: Setting the mgfHash in CK_RSA_PKCS_PSS_PARAMS has no effect Summary: Fixed to get the MGF digest algorithm from MGF1ParameterSpec Reviewed-by: xuelei ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11PSSSignature.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/CK_RSA_PKCS_PSS_PARAMS.java ! test/jdk/sun/security/pkcs11/Signature/KeyAndParamCheckForPSS.java ! test/jdk/sun/security/pkcs11/Signature/SigInteropPSS.java ! test/jdk/sun/security/pkcs11/Signature/SignatureTestPSS.java Changeset: c868b89c7dd9 Author: clanger Date: 2019-06-28 20:46 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/c868b89c7dd9 8226869: Test java/util/Locale/LocaleProvidersRun.java should enable assertions Reviewed-by: naoto ! test/jdk/java/util/Locale/LocaleProvidersRun.java Changeset: 6546a2ae6773 Author: dlong Date: 2019-06-28 16:50 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/6546a2ae6773 8226533: JVMCI: findUniqueConcreteMethod should handle statically bindable methods directly Reviewed-by: kvn, dlong Contributed-by: Doug Simon ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Changeset: e6331cf74840 Author: sspitsyn Date: 2019-06-28 16:06 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/e6331cf74840 8226917: jvmti/scenarios/contention/TC04/tc04t001/TestDescription.java fails on jvmti->InterruptThread (JVMTI_ERROR_THREAD_NOT_ALIVE) Summary: Fix one more sync issue in the test Reviewed-by: dcubed, gadams, amenkov ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC04/tc04t001/tc04t001.cpp Changeset: 5ce081828739 Author: jwilhelm Date: 2019-06-29 05:26 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/5ce081828739 Merge ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Changeset: df1925d3d409 Author: aoqi Date: 2019-07-01 12:50 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/df1925d3d409 8226967: Minimal VM: FALSE was not declared in this scope Reviewed-by: dholmes ! src/hotspot/share/memory/filemap.hpp Changeset: 8313c42345d5 Author: neliasso Date: 2019-07-01 10:49 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/8313c42345d5 8226287: Make process_users_of_allocation handle gc barriers Reviewed-by: kvn, roland ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp ! src/hotspot/share/opto/macro.cpp Changeset: 4309fedaf7dc Author: redestad Date: 2019-07-01 12:16 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/4309fedaf7dc 8225344: Avoid VM_EnableBiasedLocking VM operation during bootstrap if BiasedLockingStartupDelay is 0 Reviewed-by: dcubed, shade, dholmes ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/runtime/biasedLocking.cpp Changeset: 4077a625a01f Author: zgu Date: 2019-07-01 08:24 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/4077a625a01f 8226957: Shenandoah: Remove obsoleted ShenandoahStoreCheck option Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoah_globals.hpp ! test/hotspot/jtreg/gc/shenandoah/TestEvilSyncBug.java ! test/hotspot/jtreg/gc/shenandoah/TestVerifyJCStress.java Changeset: 734e58d8477b Author: poonam Date: 2019-07-01 18:24 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/734e58d8477b 8215523: jstat reports incorrect values for OU for CMS GC Reviewed-by: tschatzl, sgehwolf ! src/hotspot/share/gc/cms/cmsHeap.cpp ! src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp ! src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.hpp ! src/hotspot/share/gc/cms/gSpaceCounters.hpp ! src/hotspot/share/gc/shared/generation.cpp ! src/hotspot/share/gc/shared/generation.hpp Changeset: d4de822dc421 Author: iveresov Date: 2019-06-28 21:41 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/d4de822dc421 8226778: [JVMCI] Handle unpacking properly in Deoptimiziation::get_cached_box() Summary: Properly decode StackValue on big-endian machines Reviewed-by: kvn ! src/hotspot/share/runtime/deoptimization.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaMethodImpl.java Changeset: 700ef5241888 Author: neliasso Date: 2019-07-01 10:49 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/700ef5241888 8226287: Make process_users_of_allocation handle gc barriers Reviewed-by: kvn, roland ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp ! src/hotspot/share/opto/macro.cpp Changeset: e1a876085988 Author: sspitsyn Date: 2019-07-01 11:40 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/e1a876085988 8226603: accessibility issues in specs/jvmti.html Summary: Fix accessability issues in the JVMTI spec Reviewed-by: dholmes, amenkov ! src/hotspot/share/prims/jvmti.xsl Changeset: 448d63614b6b Author: mikael Date: 2019-07-01 17:08 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/448d63614b6b Merge ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp Changeset: e846a51e8966 Author: stuefe Date: 2019-07-02 10:25 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/e846a51e8966 8227035: JVM::printFlags fails in native OOM situations Reviewed-by: goetz, gziemski ! src/hotspot/share/runtime/flags/jvmFlag.cpp Changeset: 8a153a932d0f Author: stuefe Date: 2019-07-02 10:28 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/8a153a932d0f 8227041: runtime/memory/RunUnitTestsConcurrently.java has a memory leak Reviewed-by: stefank, coleenp ! src/hotspot/share/memory/metaspace.cpp ! src/hotspot/share/prims/whitebox.cpp Changeset: 3ae57bbf9585 Author: prappo Date: 2019-07-02 13:25 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/3ae57bbf9585 8226602: Test convenience reactive primitives from java.net.http with RS TCK Reviewed-by: chegar, dfuchs + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersFromPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersNoBody.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersOfByteArray.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersOfByteArrays.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersOfFile.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersOfInputStream.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodyPublishersOfSubByteArray.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersBuffering.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersDiscarding.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersFromLineSubscriber.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersFromSubscriber.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersMapping.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfByteArray.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfByteArrayConsumer.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfFile.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfInputStream.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfLines.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfPublisher1.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfPublisherPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersOfString.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/BodySubscribersReplacing.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/S.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/SPublisherOfStream.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/STest.java + test/jdk/java/net/httpclient/reactivestreams-tck-tests/TckDriver.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/FlowAdapters.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/Processor.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/Publisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/Subscriber.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/Subscription.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/AsyncIterablePublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/AsyncSubscriber.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/InfiniteIncrementNumberPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/NumberIterablePublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/RangePublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/example/unicast/SyncSubscriber.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/IdentityProcessorVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/PublisherVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/SubscriberBlackboxVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/SubscriberWhiteboxVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/TestEnvironment.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/WithHelperPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/FlowPublisherVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/FlowSubscriberBlackboxVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/FlowSubscriberWhiteboxVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/IdentityFlowProcessorVerification.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/Function.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/HelperPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/InfiniteHelperPublisher.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/NonFatal.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/Optional.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/PublisherVerificationRules.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/SubscriberBlackboxVerificationRules.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/SubscriberBufferOverflowException.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/SubscriberWhiteboxVerificationRules.java + test/jdk/java/net/httpclient/reactivestreams-tck/org/reactivestreams/tck/flow/support/TestException.java Changeset: c7a7728eeddc Author: zgu Date: 2019-07-02 10:21 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/c7a7728eeddc 8227101: Shenandoah: Use ShenandoahSharedFlag for claimed flag in ShenandoahSerialRoot Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp Changeset: 1ba68bf27e27 Author: bpb Date: 2019-07-02 08:32 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/1ba68bf27e27 8224480: (fc) java/nio/channels/FileChannel/MapTest.java fails intermittently Reviewed-by: lancea, alanb ! test/jdk/java/nio/channels/FileChannel/MapTest.java Changeset: 80853c6c9136 Author: jpai Date: 2019-07-02 11:07 +0530 URL: https://hg.openjdk.java.net/loom/loom/rev/80853c6c9136 8226976: SessionTimeOutTests uses == operator for String value check Summary: Use String.equals() instead of == operator Reviewed-by: xuelei ! test/jdk/javax/net/ssl/SSLSession/SessionTimeOutTests.java Changeset: 599a7a7b6f77 Author: aph Date: 2019-07-02 16:54 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/599a7a7b6f77 8226525: HotSpot compile-time error for x86-32 Reviewed-by: shade ! src/hotspot/os_cpu/linux_x86/orderAccess_linux_x86.hpp Changeset: f1216302bdef Author: aph Date: 2019-07-02 16:55 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/f1216302bdef Merge Changeset: 9bd13d6dea77 Author: hseigel Date: 2019-07-02 13:20 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/9bd13d6dea77 8226956: Add invocation tests for Graal and C1 Summary: Add new tests for these JIT's Reviewed-by: lfoltan, coleenp + test/hotspot/jtreg/runtime/InvocationTests/invocationC1Tests.java + test/hotspot/jtreg/runtime/InvocationTests/invocationGraalTests.java ! test/hotspot/jtreg/runtime/InvocationTests/invokeinterface/Checker.java ! test/hotspot/jtreg/runtime/InvocationTests/invokespecial/Checker.java ! test/hotspot/jtreg/runtime/InvocationTests/invokevirtual/Checker.java ! test/hotspot/jtreg/runtime/InvocationTests/shared/AbstractGenerator.java ! test/hotspot/jtreg/runtime/InvocationTests/shared/AccessCheck.java Changeset: b9171be3cf2a Author: stefank Date: 2019-07-02 12:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/b9171be3cf2a 8225770: ZGC: C2: Generates on_weak instead of on_strong barriers Reviewed-by: neliasso, eosterlund ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp Changeset: 46579c68f7f4 Author: stefank Date: 2019-07-02 12:24 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/46579c68f7f4 8227083: ZGC: C2: Generates on_weak barrier for WeakCompareAndSwap Reviewed-by: neliasso, eosterlund ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp Changeset: 9a5e9537fe1a Author: stefank Date: 2019-07-02 12:24 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/9a5e9537fe1a 8227085: ZGC: Add on_weak load barrier verification Reviewed-by: eosterlund ! src/hotspot/share/gc/z/zBarrier.inline.hpp ! src/hotspot/share/gc/z/zBarrierSet.inline.hpp Changeset: 19d0b382f086 Author: mbaesken Date: 2019-07-02 13:45 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/19d0b382f086 8226238: Improve error output and fix elf issues in os::dll_load Reviewed-by: clanger, mdoerr ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp Changeset: 657924d1e2ba Author: poonam Date: 2019-07-03 14:33 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/657924d1e2ba 8227178: Backout of 8215523 Reviewed-by: tschatzl ! src/hotspot/share/gc/cms/cmsHeap.cpp ! src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp ! src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp ! src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.hpp ! src/hotspot/share/gc/cms/gSpaceCounters.hpp ! src/hotspot/share/gc/shared/generation.cpp ! src/hotspot/share/gc/shared/generation.hpp Changeset: 5c8eb7381088 Author: mbaesken Date: 2019-06-28 13:16 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/5c8eb7381088 8226943: compile error in libfollowref003.cpp with XCode 10.2 on macosx Reviewed-by: sspitsyn ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/unit/FollowReferences/followref003/followref003.cpp Changeset: 38c73e24fa7b Author: phedlin Date: 2019-06-25 11:43 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/38c73e24fa7b 8225475: Node budget asserts on x86_32/64 Summary: Make the (ad-hoc) loop cloning size estimate more pessimistic. Reviewed-by: shade ! src/hotspot/share/opto/loopnode.cpp Changeset: cb0131439e9d Author: rschmelter Date: 2019-05-24 04:18 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/cb0131439e9d 8224673: Adjust permission for delayed starting of debugging Summary: Changed permission from monitor to control Reviewed-by: sspitsyn, clanger ! src/hotspot/share/services/diagnosticCommand.hpp Changeset: 4c0a7916d3cd Author: jlahoda Date: 2019-07-02 09:14 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/4c0a7916d3cd 8226522: No compilation error reported when yield is used in incorrect context Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.java ! test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.out ! test/langtools/tools/javac/switchexpr/WrongYieldTest.java ! test/langtools/tools/javac/switchexpr/WrongYieldTest.out Changeset: 2f464d628942 Author: eosterlund Date: 2019-07-02 11:33 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/2f464d628942 8219687: G1 asserts nmethod should not be unloaded during parallel code cache unloading Reviewed-by: tschatzl, kvn ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/gc/shared/gcBehaviours.cpp ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp Changeset: d56b192c73e9 Author: eosterlund Date: 2019-07-02 11:33 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/d56b192c73e9 8225642: ZGC: Crash due to bad oops being spilled to stack in load barriers Reviewed-by: neliasso, pliden Contributed-by: erik.osterlund at oracle.com, stuart.monteith at linaro.org ! src/hotspot/cpu/aarch64/gc/z/z_aarch64.ad ! src/hotspot/cpu/x86/gc/z/z_x86_64.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp ! src/hotspot/share/opto/lcm.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/vectornode.cpp Changeset: 7df7c1f71ccf Author: mgronlun Date: 2019-07-02 14:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/7df7c1f71ccf 8225706: JFR RootResolver resets CLD claims with no restore Reviewed-by: zgu, egahlin ! src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.cpp Changeset: 51b28beb53fd Author: mgronlun Date: 2019-07-02 17:46 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/51b28beb53fd 8227011: Starting a JFR recording in response to JVMTI VMInit and / or Java agent premain corrupts memory Reviewed-by: egahlin, rwestberg ! src/hotspot/share/jfr/recorder/jfrRecorder.cpp ! src/hotspot/share/jfr/recorder/jfrRecorder.hpp ! src/hotspot/share/jfr/writers/jfrJavaEventWriter.cpp ! src/hotspot/share/jfr/writers/jfrJavaEventWriter.hpp Changeset: a3778b378ce8 Author: amenkov Date: 2019-07-02 12:36 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/a3778b378ce8 8225679: reference to http://java.sun.com/products/JavaManagement/download.html Reviewed-by: sspitsyn ! src/java.management/share/classes/javax/management/remote/package.html Changeset: d725c6c93133 Author: iignatyev Date: 2019-07-02 13:55 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/d725c6c93133 8227112: exclude compiler/intrinsics/sha/sanity tests from AOT runs Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList-aot.txt Changeset: 34c6447cced4 Author: sspitsyn Date: 2019-07-02 14:02 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/34c6447cced4 8226596: Accessibility errors in jdwp-protocol.html Summary: Fix accessability issues in the JDWP spec Reviewed-by: amenkov, dholmes ! make/jdk/src/classes/build/tools/jdwpgen/AbstractCommandNode.java ! make/jdk/src/classes/build/tools/jdwpgen/AbstractNamedNode.java ! make/jdk/src/classes/build/tools/jdwpgen/CommandSetNode.java ! make/jdk/src/classes/build/tools/jdwpgen/ConstantSetNode.java ! make/jdk/src/classes/build/tools/jdwpgen/RootNode.java Changeset: 8e3a0ebf3497 Author: kbarrett Date: 2019-07-02 18:24 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/8e3a0ebf3497 8226366: Excessive ServiceThread wakeups for OopStorage cleanup Summary: Drive wakes via safepoint cleanups with interval minimums. Reviewed-by: coleenp, tschatzl ! src/hotspot/share/gc/shared/oopStorage.cpp ! src/hotspot/share/gc/shared/oopStorage.hpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/serviceThread.cpp Changeset: 1e95931e7d8f Author: weijun Date: 2019-07-03 11:43 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/1e95931e7d8f 8226719: Kerberos login to Windows 2000 failed with "Inappropriate type of checksum in message" Reviewed-by: xuelei ! src/java.security.jgss/share/classes/sun/security/krb5/Checksum.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbKdcRep.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/crypto/CksumType.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/crypto/RsaMd5CksumType.java Changeset: 49102ba8cf14 Author: mgronlun Date: 2019-07-03 11:34 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/49102ba8cf14 8214542: JFR: Old Object Sample event slow on a deep heap in debug builds Reviewed-by: egahlin, rwestberg ! src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.cpp ! src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.hpp ! src/hotspot/share/jfr/leakprofiler/chains/bitset.hpp ! src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.cpp ! src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.hpp ! src/hotspot/share/jfr/leakprofiler/chains/edge.hpp ! src/hotspot/share/jfr/leakprofiler/chains/edgeStore.cpp ! src/hotspot/share/jfr/leakprofiler/chains/edgeStore.hpp ! src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp ! src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.hpp + src/hotspot/share/jfr/leakprofiler/chains/pathToGcRootsOperation.cpp + src/hotspot/share/jfr/leakprofiler/chains/pathToGcRootsOperation.hpp ! src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp ! src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.hpp + src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp + src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.hpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.hpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleWriter.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleWriter.hpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.hpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp ! src/hotspot/share/jfr/leakprofiler/leakProfiler.cpp ! src/hotspot/share/jfr/leakprofiler/leakProfiler.hpp ! src/hotspot/share/jfr/leakprofiler/sampling/objectSampler.cpp ! src/hotspot/share/jfr/leakprofiler/sampling/objectSampler.hpp ! src/hotspot/share/jfr/leakprofiler/startOperation.hpp ! src/hotspot/share/jfr/leakprofiler/stopOperation.hpp + src/hotspot/share/jfr/leakprofiler/utilities/vmOperation.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrType.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderService.cpp ! src/hotspot/share/jfr/recorder/stacktrace/jfrStackTraceRepository.cpp ! src/hotspot/share/jfr/recorder/stacktrace/jfrStackTraceRepository.hpp ! src/hotspot/share/jfr/support/jfrFlush.hpp ! src/hotspot/share/jfr/support/jfrThreadLocal.cpp ! src/hotspot/share/jfr/support/jfrThreadLocal.hpp ! src/hotspot/share/runtime/vmOperations.hpp Changeset: 618ad1237e73 Author: shade Date: 2019-06-13 19:37 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/618ad1237e73 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: e709712a8188 Author: mikael Date: 2019-07-03 07:56 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/e709712a8188 Merge ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp ! test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.java Changeset: 0246f81c1dcd Author: rkennke Date: 2019-07-03 17:52 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/0246f81c1dcd 8227199: Shenandoah: Remove superfluous calls to can_do_traversal_gc() Reviewed-by: shade ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp Changeset: 25165403c62e Author: joehw Date: 2019-07-03 16:30 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/25165403c62e 8223291: Whitespace is added to CDATA tags when using OutputKeys.INDENT to format XML Reviewed-by: dfuchs, lancea ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToStream.java ! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java ! test/jaxp/javax/xml/jaxp/unittest/common/prettyprint/PrettyPrintTest.java ! test/jaxp/javax/xml/jaxp/unittest/common/prettyprint/xmltest1.out ! test/jaxp/javax/xml/jaxp/unittest/common/prettyprint/xmltest2.out ! test/jaxp/javax/xml/jaxp/unittest/common/prettyprint/xmltest8.out ! test/jaxp/javax/xml/jaxp/unittest/transform/OutputPropertiesTest.java Changeset: 4d193e40e7af Author: tonyp Date: 2019-07-03 15:46 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/4d193e40e7af 8223575: add subspace transitions to gc+metaspace=info log lines Reviewed-by: stuefe, tschatzl ! src/hotspot/share/gc/g1/g1HeapTransition.cpp ! src/hotspot/share/gc/g1/g1HeapTransition.hpp ! src/hotspot/share/gc/parallel/parallelScavengeHeap.hpp ! src/hotspot/share/gc/parallel/psMarkSweep.cpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/memory/metaspace.cpp ! src/hotspot/share/memory/metaspace.hpp + src/hotspot/share/memory/metaspace/metaspaceSizesSnapshot.cpp + src/hotspot/share/memory/metaspace/metaspaceSizesSnapshot.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp Changeset: 3805144cc60a Author: mikael Date: 2019-07-03 14:18 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/3805144cc60a Added tag jdk-14+4 for changeset 19d0b382f086 ! .hgtags Changeset: 8c19519114e7 Author: bpb Date: 2019-07-03 14:37 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/8c19519114e7 8227080: (fs) Files.newInputStream(...).skip(n) is slow Reviewed-by: sbordet, rriggs, fweimer ! src/java.base/share/classes/sun/nio/ch/ChannelInputStream.java ! test/jdk/java/nio/file/Files/Misc.java Changeset: 4ce8e03602e1 Author: dnsimon Date: 2019-07-03 11:07 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/4ce8e03602e1 8226566: [JVMCI] java.* classes are no longer necessarily resolved by the boot class loader Reviewed-by: kvn, dlong ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Changeset: 7276ccf6c29b Author: mikael Date: 2019-07-03 14:11 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/7276ccf6c29b Added tag jdk-13+28 for changeset 1e95931e7d8f ! .hgtags Changeset: b8a986731870 Author: mikael Date: 2019-07-03 15:47 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/b8a986731870 Merge ! .hgtags ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java Changeset: 12cb0fb3b425 Author: darcy Date: 2019-07-03 16:29 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/12cb0fb3b425 8227202: clarify Class.isEnum() doc Reviewed-by: bpb ! src/java.base/share/classes/java/lang/Class.java Changeset: 82fae48799e4 Author: thartmann Date: 2019-07-04 09:12 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/82fae48799e4 8227173: Minor cleanup of unused code in compile.hpp Summary: Removed unused code. Reviewed-by: kvn ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/type.hpp Changeset: ef032c55234c Author: mbaesken Date: 2019-07-03 13:34 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/ef032c55234c 8227171: provide function names in native stack trace on aix with xlc16 Reviewed-by: stuefe ! make/autoconf/flags-cflags.m4 Changeset: 51ad5ced897a Author: stuefe Date: 2019-07-04 11:55 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/51ad5ced897a 8227252: [aix] Disable jdk/java/lang/reflect/exeCallerAccessTest Reviewed-by: goetz ! test/jdk/java/lang/reflect/exeCallerAccessTest/CallerAccessTest.java Changeset: 014c8cd323af Author: stuefe Date: 2019-07-01 16:28 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/014c8cd323af 8227032: MetaspaceUtils::print_report crashes when called before initialization Reviewed-by: tschatzl, goetz ! src/hotspot/share/memory/metaspace.cpp ! src/hotspot/share/memory/metaspace.hpp Changeset: 4644b3155fce Author: rkennke Date: 2019-07-04 14:28 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/4644b3155fce 8226757: Shenandoah: Make traversal and passive modes explicit Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahAdaptiveHeuristics.hpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahAggressiveHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahAggressiveHeuristics.hpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahCompactHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahCompactHeuristics.hpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahPassiveHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahPassiveHeuristics.hpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahStaticHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahStaticHeuristics.hpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.cpp ! src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.hpp ! src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeuristics.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeuristics.hpp + src/hotspot/share/gc/shenandoah/shenandoahMode.hpp + src/hotspot/share/gc/shenandoah/shenandoahNormalMode.cpp + src/hotspot/share/gc/shenandoah/shenandoahNormalMode.hpp + src/hotspot/share/gc/shenandoah/shenandoahPassiveMode.cpp + src/hotspot/share/gc/shenandoah/shenandoahPassiveMode.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp + src/hotspot/share/gc/shenandoah/shenandoahTraversalMode.cpp + src/hotspot/share/gc/shenandoah/shenandoahTraversalMode.hpp ! src/hotspot/share/gc/shenandoah/shenandoah_globals.hpp ! test/hotspot/jtreg/compiler/c2/aarch64/TestVolatiles.java ! test/hotspot/jtreg/gc/CriticalNativeArgs.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocHumongousFragment.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocIntArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjectArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestGCThreadGroups.java ! test/hotspot/jtreg/gc/shenandoah/TestHeapUncommit.java ! test/hotspot/jtreg/gc/shenandoah/TestLotsOfCycles.java ! test/hotspot/jtreg/gc/shenandoah/TestObjItrWithHeapDump.java ! test/hotspot/jtreg/gc/shenandoah/TestPeriodicGC.java ! test/hotspot/jtreg/gc/shenandoah/TestRefprocSanity.java ! test/hotspot/jtreg/gc/shenandoah/TestRegionSampling.java ! test/hotspot/jtreg/gc/shenandoah/TestRetainObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestSieveObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedup.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedupStress.java ! test/hotspot/jtreg/gc/shenandoah/TestStringInternCleanup.java ! test/hotspot/jtreg/gc/shenandoah/TestVerifyJCStress.java ! test/hotspot/jtreg/gc/shenandoah/TestWrongArrayMember.java ! test/hotspot/jtreg/gc/shenandoah/jni/TestPinnedGarbage.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestChurnNotifications.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestPauseNotifications.java ! test/hotspot/jtreg/gc/shenandoah/oom/TestClassLoaderLeak.java ! test/hotspot/jtreg/gc/shenandoah/options/TestExplicitGC.java ! test/hotspot/jtreg/gc/shenandoah/options/TestHeuristicsUnlock.java ! test/hotspot/jtreg/gc/shenandoah/options/TestSelectiveBarrierFlags.java ! test/hotspot/jtreg/gc/shenandoah/options/TestWrongBarrierDisable.java ! test/hotspot/jtreg/gc/stress/CriticalNativeStress.java ! test/hotspot/jtreg/gc/stress/gcbasher/TestGCBasherWithShenandoah.java ! test/hotspot/jtreg/gc/stress/gcold/TestGCOldWithShenandoah.java ! test/hotspot/jtreg/gc/stress/systemgc/TestSystemGCWithShenandoah.java Changeset: 761fb4ec7ccf Author: redestad Date: 2019-07-04 15:00 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/761fb4ec7ccf 8224657: [TESTBUG] java/util/Locale/SoftKeys.java should be ignored but run Reviewed-by: alanb ! test/jdk/java/util/Locale/SoftKeys.java Changeset: 852dcb52bace Author: jlahoda Date: 2019-07-04 16:51 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/852dcb52bace 8227010: Error recovery after local variable redeclaration can be improved Summary: Entering duplicate local variables into the current scope so that the new variable is used instead of the previous variable. Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.java + test/langtools/tools/javac/recovery/LocalVarHiding.java + test/langtools/tools/javac/recovery/LocalVarHiding.out Changeset: 05dac93510c0 Author: rkennke Date: 2019-07-04 17:02 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/05dac93510c0 8226822: GC interface for C1 runtime calls Reviewed-by: neliasso, roland ! src/hotspot/share/c1/c1_Runtime1.cpp ! src/hotspot/share/gc/shared/c1/barrierSetC1.hpp Changeset: 9523b841b470 Author: rkennke Date: 2019-07-04 17:02 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/9523b841b470 8226823: Adjust BarrierSetC2 for C2 runtime calls Reviewed-by: neliasso, roland ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/escape.hpp Changeset: fd1a4c4b7616 Author: kbarrett Date: 2019-07-04 13:26 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/fd1a4c4b7616 8226793: Replace OopStorage dup_name with os::strdup Summary: Use os::strdup and os::free. Reviewed-by: tschatzl ! src/hotspot/share/gc/shared/oopStorage.cpp Changeset: 963924f1c891 Author: rkennke Date: 2019-07-04 20:29 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/963924f1c891 8222079: Don't use memset to initialize fields decode_env constructor in disassembler.cpp Reviewed-by: dlong, stuefe, mdoerr ! src/hotspot/share/compiler/disassembler.cpp Changeset: 66a748c4f3ff Author: rkennke Date: 2019-07-05 11:07 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/66a748c4f3ff 8227039: Shenandoah: Aggressive heuristics for Traversal mode Reviewed-by: shade + src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalAggressiveHeuristics.cpp + src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalAggressiveHeuristics.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalMode.cpp ! test/hotspot/jtreg/gc/CriticalNativeArgs.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocHumongousFragment.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocIntArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjectArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestGCThreadGroups.java ! test/hotspot/jtreg/gc/shenandoah/TestHeapUncommit.java ! test/hotspot/jtreg/gc/shenandoah/TestLotsOfCycles.java ! test/hotspot/jtreg/gc/shenandoah/TestObjItrWithHeapDump.java ! test/hotspot/jtreg/gc/shenandoah/TestRefprocSanity.java ! test/hotspot/jtreg/gc/shenandoah/TestRegionSampling.java ! test/hotspot/jtreg/gc/shenandoah/TestRetainObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestSieveObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedup.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedupStress.java ! test/hotspot/jtreg/gc/shenandoah/TestStringInternCleanup.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestChurnNotifications.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestPauseNotifications.java ! test/hotspot/jtreg/gc/shenandoah/oom/TestClassLoaderLeak.java ! test/hotspot/jtreg/gc/stress/CriticalNativeStress.java ! test/hotspot/jtreg/gc/stress/gcbasher/TestGCBasherWithShenandoah.java ! test/hotspot/jtreg/gc/stress/gcold/TestGCOldWithShenandoah.java Changeset: cf5a438b3c41 Author: vlivanov Date: 2019-07-05 12:55 +0300 URL: https://hg.openjdk.java.net/loom/loom/rev/cf5a438b3c41 8226409: Enable argument profiling for sun.misc.Unsafe.put*/get* Reviewed-by: kvn ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/oops/methodData.cpp Changeset: d01b345865d7 Author: redestad Date: 2019-07-05 13:40 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/d01b345865d7 8225239: Refactor NetworkInterface lookups Reviewed-by: michaelm, dfuchs, chegar ! src/java.base/share/classes/java/net/Inet6AddressImpl.java ! src/java.base/share/classes/java/net/InetAddress.java ! src/java.base/share/classes/java/net/NetworkInterface.java ! src/java.base/unix/native/libnet/NetworkInterface.c ! src/java.base/windows/native/libnet/NetworkInterface.c ! src/java.base/windows/native/libnet/NetworkInterface_winXP.c ! test/jdk/java/net/NetworkInterface/NetworkInterfaceRetrievalTests.java + test/micro/org/openjdk/bench/java/net/NetworkInterfaceLookup.java Changeset: a128ba0b5f94 Author: amenkov Date: 2019-07-05 10:35 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/a128ba0b5f94 8227124: "could not open pipe" error does not report error details Reviewed-by: sspitsyn, cjplummer ! src/hotspot/os/windows/attachListener_windows.cpp Changeset: 091ea1a285dc Author: weijun Date: 2019-07-04 07:25 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/091ea1a285dc 8227061: KDC.java test behaves incorrectly when AS-REQ contains a PAData not PA-ENC-TS-ENC Reviewed-by: mullan ! test/jdk/sun/security/krb5/auto/KDC.java Changeset: e6c430d4d217 Author: weijun Date: 2019-07-04 07:25 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/e6c430d4d217 8226963: More clarification on possible sequencing error in GSSContext::unwrap Reviewed-by: mullan ! src/java.security.jgss/share/classes/org/ietf/jgss/GSSContext.java Changeset: 3dcc40f328ea Author: dholmes Date: 2019-07-03 23:34 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/3dcc40f328ea 8227055: Minor edits to launcher help text Reviewed-by: mchung ! src/java.base/share/classes/sun/launcher/resources/launcher.properties Changeset: cba615623d09 Author: stefank Date: 2019-07-02 12:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/cba615623d09 8225770: ZGC: C2: Generates on_weak instead of on_strong barriers Reviewed-by: neliasso, eosterlund ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp Changeset: 73395f9cad54 Author: stefank Date: 2019-07-02 12:24 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/73395f9cad54 8227083: ZGC: C2: Generates on_weak barrier for WeakCompareAndSwap Reviewed-by: neliasso, eosterlund ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp Changeset: 3868dde58ebb Author: stefank Date: 2019-06-10 13:04 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/3868dde58ebb 8227175: ZGC: ZHeapIterator visits potentially dead objects Reviewed-by: zgu, eosterlund ! src/hotspot/share/classfile/classLoaderData.cpp ! src/hotspot/share/classfile/classLoaderData.hpp ! src/hotspot/share/classfile/classLoaderDataGraph.cpp ! src/hotspot/share/classfile/classLoaderDataGraph.hpp ! src/hotspot/share/gc/z/zArguments.cpp ! src/hotspot/share/gc/z/zCollectedHeap.cpp ! src/hotspot/share/gc/z/zDriver.cpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zHeap.hpp ! src/hotspot/share/gc/z/zHeapIterator.cpp ! src/hotspot/share/gc/z/zHeapIterator.hpp ! src/hotspot/share/gc/z/zMark.cpp - src/hotspot/share/gc/z/zOopClosures.cpp ! src/hotspot/share/gc/z/zOopClosures.hpp ! src/hotspot/share/gc/z/zOopClosures.inline.hpp ! src/hotspot/share/gc/z/zRootsIterator.cpp ! src/hotspot/share/gc/z/zRootsIterator.hpp + src/hotspot/share/gc/z/zVerify.cpp + src/hotspot/share/gc/z/zVerify.hpp ! src/hotspot/share/gc/z/z_globals.hpp ! src/hotspot/share/memory/iterator.hpp ! src/hotspot/share/memory/iterator.inline.hpp ! src/hotspot/share/runtime/vmOperations.hpp Changeset: a30c86af2eb7 Author: jcm Date: 2019-07-05 00:24 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/a30c86af2eb7 8226627: assert(t->singleton()) failed: must be a constant Summary: Implemented constant folding for MaxFD, MinFD. Reviewed-by: thartmann, bsrbnd, pli ! src/hotspot/share/opto/addnode.cpp ! src/hotspot/share/opto/addnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/type.cpp Changeset: 91050b1e0fe8 Author: mikael Date: 2019-07-05 11:01 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/91050b1e0fe8 Merge ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp - src/hotspot/share/gc/z/zOopClosures.cpp ! src/hotspot/share/gc/z/zRootsIterator.cpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/type.cpp Changeset: 78a2b1bb15cf Author: shade Date: 2019-07-05 23:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/78a2b1bb15cf 8227327: Shenandoah: Faster and more parallel tests Reviewed-by: rkennke ! test/hotspot/jtreg/gc/shenandoah/TestAllocHumongousFragment.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocIntArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjectArrays.java ! test/hotspot/jtreg/gc/shenandoah/TestAllocObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestGCThreadGroups.java ! test/hotspot/jtreg/gc/shenandoah/TestHeapUncommit.java ! test/hotspot/jtreg/gc/shenandoah/TestLotsOfCycles.java ! test/hotspot/jtreg/gc/shenandoah/TestRefprocSanity.java ! test/hotspot/jtreg/gc/shenandoah/TestRegionSampling.java ! test/hotspot/jtreg/gc/shenandoah/TestRetainObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestSieveObjects.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedup.java ! test/hotspot/jtreg/gc/shenandoah/TestStringDedupStress.java ! test/hotspot/jtreg/gc/shenandoah/TestStringInternCleanup.java ! test/hotspot/jtreg/gc/shenandoah/TestVerifyJCStress.java ! test/hotspot/jtreg/gc/shenandoah/jni/TestJNIGlobalRefs.java ! test/hotspot/jtreg/gc/shenandoah/jni/TestPinnedGarbage.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestChurnNotifications.java ! test/hotspot/jtreg/gc/shenandoah/mxbeans/TestPauseNotifications.java ! test/hotspot/jtreg/gc/stress/gcbasher/TestGCBasherWithShenandoah.java ! test/hotspot/jtreg/gc/stress/gclocker/TestGCLockerWithShenandoah.java ! test/hotspot/jtreg/gc/stress/gcold/TestGCOldWithShenandoah.java ! test/hotspot/jtreg/gc/stress/systemgc/TestSystemGCWithShenandoah.java Changeset: 5919b273def6 Author: tschatzl Date: 2019-07-08 09:24 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/5919b273def6 8224741: Optimize the scan area during the Scan Heap Roots phase Summary: When scanning card blocks, remember the last address already scanned. Continue scanning from this address. Reviewed-by: kbarrett, lkorinth ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/heapRegion.hpp ! src/hotspot/share/gc/g1/heapRegion.inline.hpp Changeset: 47af68c44e02 Author: dcubed Date: 2019-07-08 11:38 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/47af68c44e02 8227117: normal interpreter table is not restored after single stepping with TLH Reviewed-by: sspitsyn, eosterlund, dholmes, coleenp ! src/hotspot/share/interpreter/templateInterpreter.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp Changeset: 377e49b3014c Author: dcubed Date: 2019-07-08 12:14 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/377e49b3014c Merge Changeset: 47fdb5b0fa41 Author: kbarrett Date: 2019-07-08 17:24 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/47fdb5b0fa41 8217170: gc/arguments/TestUseCompressedOopsErgo.java timed out Summary: Disable ZapUnusedHeapArea and VerifyBeforeExit for gc/arguments tests. Reviewed-by: tschatzl, tonyp + test/hotspot/jtreg/gc/arguments/GCArguments.java ! test/hotspot/jtreg/gc/arguments/TestAggressiveHeap.java ! test/hotspot/jtreg/gc/arguments/TestArrayAllocatorMallocLimit.java ! test/hotspot/jtreg/gc/arguments/TestCompressedClassFlags.java ! test/hotspot/jtreg/gc/arguments/TestDisableDefaultGC.java ! test/hotspot/jtreg/gc/arguments/TestG1ConcMarkStepDurationMillis.java ! test/hotspot/jtreg/gc/arguments/TestG1ConcRefinementThreads.java ! test/hotspot/jtreg/gc/arguments/TestG1HeapRegionSize.java ! test/hotspot/jtreg/gc/arguments/TestG1PercentageOptions.java ! test/hotspot/jtreg/gc/arguments/TestHeapFreeRatio.java ! test/hotspot/jtreg/gc/arguments/TestInitialTenuringThreshold.java ! test/hotspot/jtreg/gc/arguments/TestMaxHeapSizeTools.java ! test/hotspot/jtreg/gc/arguments/TestMaxMinHeapFreeRatioFlags.java ! test/hotspot/jtreg/gc/arguments/TestMaxNewSize.java ! test/hotspot/jtreg/gc/arguments/TestMaxRAMFlags.java ! test/hotspot/jtreg/gc/arguments/TestMinAndInitialSurvivorRatioFlags.java ! test/hotspot/jtreg/gc/arguments/TestNewRatioFlag.java ! test/hotspot/jtreg/gc/arguments/TestNewSizeFlags.java ! test/hotspot/jtreg/gc/arguments/TestNewSizeThreadIncrease.java ! test/hotspot/jtreg/gc/arguments/TestObjectTenuringFlags.java ! test/hotspot/jtreg/gc/arguments/TestParallelGCThreads.java ! test/hotspot/jtreg/gc/arguments/TestParallelRefProc.java ! test/hotspot/jtreg/gc/arguments/TestSelectDefaultGC.java ! test/hotspot/jtreg/gc/arguments/TestSmallInitialHeapWithLargePageAndNUMA.java ! test/hotspot/jtreg/gc/arguments/TestSurvivorRatioFlag.java ! test/hotspot/jtreg/gc/arguments/TestTargetSurvivorRatioFlag.java ! test/hotspot/jtreg/gc/arguments/TestUnrecognizedVMOptionsHandling.java ! test/hotspot/jtreg/gc/arguments/TestUseCompressedOopsErgoTools.java ! test/hotspot/jtreg/gc/arguments/TestUseNUMAInterleaving.java ! test/hotspot/jtreg/gc/arguments/TestVerifyBeforeAndAfterGCFlags.java Changeset: 2ecbc4b12f79 Author: ecaspole Date: 2019-07-08 17:57 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/2ecbc4b12f79 8225626: JMH Test Support for JDK-8222074 Summary: Micros for new SuperWord optimizations Reviewed-by: vlivanov, ecaspole Contributed-by: shravya.rukmannagari at intel.com + test/micro/org/openjdk/bench/vm/compiler/TypeVectorOperations.java Changeset: e28b69b3dc96 Author: ecaspole Date: 2019-07-08 18:30 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/e28b69b3dc96 Merge Changeset: a55b46a208d1 Author: weijun Date: 2019-07-06 08:11 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/a55b46a208d1 8227305: Krb5Util::getTicketFromSubjectAndTgs is useless Reviewed-by: xuelei ! src/java.security.jgss/share/classes/sun/security/jgss/krb5/Krb5Util.java Changeset: 040cb8bf265e Author: avu Date: 2019-07-07 10:52 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/040cb8bf265e 8226654: Some swing gtk regression tests fail with "java.lang.InternalError: Unable to load native GTK librarie Reviewed-by: prr, psadhukhan ! src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.c Changeset: 3af213fe4704 Author: kvn Date: 2019-07-07 18:10 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/3af213fe4704 8225064: [Graal] Application SEGV in G1ParScanThreadState::copy_to_survivor_space(G1HeapRegionAttr, oopDesc*, markOopDesc*)+0x48 Summary: switch off ReduceInitialCardMarks optimization in Graal in JDK 13 (full fix is in JDK 14) Reviewed-by: thartmann, never ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java Changeset: 62e0af50f8d5 Author: yzheng Date: 2019-07-07 18:17 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/62e0af50f8d5 8224254: compiler/graalunit/HotspotJdk9Test.java is timing out intermittently Reviewed-by: kvn, thartmann ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/MathDoubleFMATest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.jdk9.test/src/org/graalvm/compiler/hotspot/jdk9/test/MathFloatFMATest.java ! test/hotspot/jtreg/ProblemList-graal.txt Changeset: 3eae7f0e21d6 Author: never Date: 2019-07-07 18:27 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/3eae7f0e21d6 8221514: [Graal] java/lang/String/CompactString/ tests fail with "GraalError: failed guarantee: no FrameState at DeoptimizingNode" in Graal -Xcomp mode Summary: Put FrameState directly on final StateSplit in intrinsics. Reviewed-by: thartmann, kvn, dnsimon, gdub ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java Changeset: 978b2201984c Author: mdoerr Date: 2019-07-08 10:56 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/978b2201984c 8226302: Test failures on IBM platforms (power and s/390) after JDK-8223837 Summary: Adjust heap size values for 32M heap aligment (page size 64k) Reviewed-by: goetz, rschmelter, tschatzl ! test/hotspot/jtreg/gc/arguments/TestMaxHeapSizeTools.java ! test/hotspot/jtreg/gc/arguments/TestSoftMaxHeapSizeFlag.java Changeset: 3595fb8794c5 Author: jcm Date: 2019-07-08 04:01 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/3595fb8794c5 8221577: [Graal] Implement basic type consistency checks for Low level MH intrinsics Reviewed-by: kvn ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CustomizedBytecodePatternTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/FrameStateBuilder.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/InvokerSignatureMismatchTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/MethodHandleNode.java ! test/hotspot/jtreg/ProblemList-graal.txt Changeset: eb1fbe4d61b2 Author: dcubed Date: 2019-07-08 12:16 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/eb1fbe4d61b2 Merge Changeset: ea3b1a8fd4bb Author: mikael Date: 2019-07-08 16:20 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/ea3b1a8fd4bb Merge ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CustomizedBytecodePatternTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/BytecodeParser.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.java/src/org/graalvm/compiler/java/FrameStateBuilder.java ! test/hotspot/jtreg/gc/arguments/TestMaxHeapSizeTools.java Changeset: 0b470386f5f7 Author: jlahoda Date: 2019-07-09 09:20 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/0b470386f5f7 8223443: Calling Trees.getScope early changes names of local/anonymous classes Summary: Ensure Trees.getScope does not affect the rest of the compilation. Reviewed-by: mcimadamore ! src/jdk.compiler/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Enter.java + test/langtools/tools/javac/api/TestGetScopeBinaryNames.java + test/langtools/tools/javac/api/TestGetScopeErrors.java Changeset: c589ba4b823c Author: mbaesken Date: 2019-07-08 13:29 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/c589ba4b823c 8227389: Remove unsupported xlc16 compile options on aix Reviewed-by: clanger, mdoerr ! make/autoconf/flags-cflags.m4 Changeset: cb90a20eb99a Author: jiangli Date: 2019-07-09 10:27 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/cb90a20eb99a 8225035: Thread stack size issue caused by large TLS size Summary: Adjust thread stack size for static TLS on Linux when AdjustStackSizeForTLS is enabled. Reviewed-by: dholmes, fweimer, stuefe, rriggs, martin Contributed-by: jeremymanson at google.com, fweimer at redhat.com, jianglizhou at google.com ! make/test/JtregNativeHotspot.gmk ! src/hotspot/os/linux/globals_linux.hpp ! src/hotspot/os/linux/os_linux.cpp + test/hotspot/jtreg/runtime/TLS/T.java + test/hotspot/jtreg/runtime/TLS/exestack-tls.c + test/hotspot/jtreg/runtime/TLS/testtls.sh Changeset: f7e8dbb77156 Author: pchilanomate Date: 2019-07-09 14:38 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/f7e8dbb77156 8191890: Biased locking still uses the inferior stop the world safepoint for revocation Summary: Revocations are now executed with thread local handshakes instead of safepoints Reviewed-by: dcubed, coleenp, dholmes, rehn, mgronlun ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/runtime/biasedLocking.cpp ! src/hotspot/share/runtime/biasedLocking.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/handshake.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/VMOps.java ! test/jdk/jdk/jfr/event/runtime/TestBiasedLockRevocationEvents.java Changeset: 91faea277c86 Author: jbhateja Date: 2019-07-09 15:02 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/91faea277c86 8227222: vmTestbase/jit/FloatingPoint/gen_math/Loops04/Loops04.java failed XMM register should be 0-15 Reviewed-by: thartmann, vlivanov, ctornqvi, bsrbnd ! src/hotspot/cpu/x86/x86_64.ad Changeset: 9c1885fb2a42 Author: naoto Date: 2019-07-09 08:05 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/9c1885fb2a42 8227127: Era designator not displayed correctly using the COMPAT provider Reviewed-by: rriggs ! src/jdk.localedata/share/classes/sun/text/resources/ext/FormatData_ja.java ! src/jdk.localedata/share/classes/sun/text/resources/ext/FormatData_zh.java ! src/jdk.localedata/share/classes/sun/text/resources/ext/FormatData_zh_TW.java ! test/jdk/sun/text/resources/LocaleData ! test/jdk/sun/text/resources/LocaleDataTest.java Changeset: 7a0d1616851e Author: eosterlund Date: 2019-07-09 16:39 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/7a0d1616851e 8227277: HeapInspection::find_instances_at_safepoint walks dead objects Reviewed-by: dholmes, kbarrett, tschatzl, coleenp ! src/hotspot/share/memory/heapInspection.cpp Changeset: 29e522153769 Author: eosterlund Date: 2019-07-09 16:39 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/29e522153769 8224531: SEGV while collecting Klass statistics Reviewed-by: coleenp, kbarrett, tschatzl ! src/hotspot/share/memory/heapInspection.cpp ! src/hotspot/share/oops/klass.cpp Changeset: 10f1928a33b5 Author: dlong Date: 2019-07-09 13:46 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/10f1928a33b5 8227237: [Graal] org.graalvm.compiler.api.directives.test.ProbabilityDirectiveTest fails with -Xcomp Reviewed-by: kvn ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/ProbabilityDirectiveTest.java Changeset: 1831d28d34bb Author: never Date: 2019-07-09 14:59 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/1831d28d34bb 8227034: Graal crash with gcbasher Summary: Adjust Graal's registers declaration for String intrinisics. Reviewed-by: dlong, dnsimon, kvn ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64StringLatin1InflateOp.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64StringUTF16CompressOp.java Changeset: d6600ddb85fb Author: jbhateja Date: 2019-07-09 15:42 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/d6600ddb85fb 8227222: vmTestbase/jit/FloatingPoint/gen_math/Loops04/Loops04.java failed XMM register should be 0-15 Reviewed-by: thartmann, vlivanov, ctornqvi, bsrbnd ! src/hotspot/cpu/x86/x86_64.ad Changeset: 9d7c2d9f822c Author: mikael Date: 2019-07-09 16:37 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/9d7c2d9f822c Merge ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.directives.test/src/org/graalvm/compiler/api/directives/test/ProbabilityDirectiveTest.java Changeset: 0f1e29c77e50 Author: rpatil Date: 2019-07-10 05:12 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/0f1e29c77e50 8224560: (tz) Upgrade time-zone data to tzdata2019a 8225580: tzdata2018i integration causes test failures on jdk-13 Reviewed-by: andrew, naoto ! make/data/tzdata/VERSION ! make/data/tzdata/africa ! make/data/tzdata/asia ! make/data/tzdata/australasia ! make/data/tzdata/backward ! make/data/tzdata/etcetera ! make/data/tzdata/europe ! make/data/tzdata/iso3166.tab ! make/data/tzdata/leapseconds ! make/data/tzdata/northamerica ! make/data/tzdata/zone.tab ! make/jdk/src/classes/build/tools/cldrconverter/CLDRConverter.java ! src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java ! src/java.base/share/classes/sun/util/resources/TimeZoneNames.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java ! test/jdk/sun/util/calendar/zi/TestZoneInfo310.java ! test/jdk/sun/util/calendar/zi/tzdata/VERSION ! test/jdk/sun/util/calendar/zi/tzdata/africa ! test/jdk/sun/util/calendar/zi/tzdata/asia ! test/jdk/sun/util/calendar/zi/tzdata/australasia ! test/jdk/sun/util/calendar/zi/tzdata/backward ! test/jdk/sun/util/calendar/zi/tzdata/etcetera ! test/jdk/sun/util/calendar/zi/tzdata/europe ! test/jdk/sun/util/calendar/zi/tzdata/iso3166.tab ! test/jdk/sun/util/calendar/zi/tzdata/leapseconds ! test/jdk/sun/util/calendar/zi/tzdata/northamerica ! test/jdk/sun/util/calendar/zi/tzdata/zone.tab Changeset: 0fb70c9118ce Author: coleenp Date: 2019-07-10 07:58 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/0fb70c9118ce 8222446: assert(C->env()->system_dictionary_modification_counter_changed()) failed: Must invalidate if TypeFuncs differ Summary: Remove SystemDictionary::modification_counter optimization Reviewed-by: dlong, eosterlund ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/code/dependencies.cpp ! src/hotspot/share/code/dependencies.hpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/jvmci/jvmciEnv.hpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/opto/callGenerator.cpp ! src/hotspot/share/opto/parse1.cpp ! src/hotspot/share/prims/jvmtiRedefineClasses.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/ci/ciEnv.java Changeset: 37cfb64319f6 Author: michaelm Date: 2019-07-10 14:27 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/37cfb64319f6 8225479: com.sun.net.httpserver.HttpContext that does not end with '/' has surprising matches Reviewed-by: dfuchs ! src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java Changeset: 422fb430bc7b Author: dcubed Date: 2019-07-10 10:18 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/422fb430bc7b 8227338: templateInterpreter.cpp: copy_table() needs to be safer Reviewed-by: dholmes, eosterlund, sspitsyn, kbarrett ! src/hotspot/share/interpreter/templateInterpreter.cpp Changeset: 430a51e86f28 Author: weijun Date: 2019-07-10 09:43 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/430a51e86f28 8225687: Newly added sspi.cpp in JDK-6722928 still contains some small errors Reviewed-by: xuelei ! src/java.security.jgss/share/native/libj2gss/NativeFunc.h ! src/java.security.jgss/share/native/libj2gss/gssapi.h ! src/java.security.jgss/windows/native/libsspi_bridge/sspi.cpp Changeset: 4722e5e28449 Author: weijun Date: 2019-07-10 09:43 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/4722e5e28449 8227381: GSS login fails with PREAUTH_FAILED Reviewed-by: xuelei ! src/java.security.jgss/share/classes/sun/security/krb5/KrbAsReqBuilder.java Changeset: 3081f39a3d30 Author: weijun Date: 2019-07-10 09:43 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out Reviewed-by: xuelei - test/jdk/sun/security/tools/keytool/DefaultSignatureAlgorithm.java + test/jdk/sun/security/tools/keytool/fakegen/DefaultSignatureAlgorithm.java + test/jdk/sun/security/tools/keytool/fakegen/PSS.java + test/jdk/sun/security/tools/keytool/fakegen/java.base/sun/security/provider/DSAKeyPairGenerator.java + test/jdk/sun/security/tools/keytool/fakegen/java.base/sun/security/rsa/RSAKeyPairGenerator.java + test/jdk/sun/security/tools/keytool/fakegen/jdk.crypto.ec/sun/security/ec/ECKeyPairGenerator.java - test/jdk/sun/security/tools/keytool/pss/PSS.java - test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: 4a03245ffc2f Author: jlahoda Date: 2019-07-10 09:04 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/4a03245ffc2f 8220041: NullPointerException at jdk.compiler/com.sun.tools.javac.jvm.Code.emitop0 Summary: LambdaToMethod must correctly capture local variables inside switch expressions inside local variable initializers. Reviewed-by: mcimadamore, vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/langtools/tools/javac/switchexpr/LambdaCapture.java Changeset: 66cf6a8318e4 Author: ljiang Date: 2019-07-10 01:19 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/66cf6a8318e4 8227009: JDK 13 L10n resource files update - msgdrop 10 Reviewed-by: naoto ! src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties ! src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties ! src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java ! src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties ! src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties ! src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_ja.properties ! src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java ! src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_ja.properties ! src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties ! src/jdk.rmic/share/classes/sun/tools/javac/resources/javac_ja.properties ! src/jdk.rmic/share/classes/sun/tools/javac/resources/javac_zh_CN.properties Changeset: 8df81df1cce4 Author: rpatil Date: 2019-07-10 05:12 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/8df81df1cce4 8224560: (tz) Upgrade time-zone data to tzdata2019a 8225580: tzdata2018i integration causes test failures on jdk-13 Reviewed-by: andrew, naoto ! make/data/tzdata/VERSION ! make/data/tzdata/africa ! make/data/tzdata/asia ! make/data/tzdata/australasia ! make/data/tzdata/backward ! make/data/tzdata/etcetera ! make/data/tzdata/europe ! make/data/tzdata/iso3166.tab ! make/data/tzdata/leapseconds ! make/data/tzdata/northamerica ! make/data/tzdata/zone.tab ! make/jdk/src/classes/build/tools/cldrconverter/CLDRConverter.java ! src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java ! src/java.base/share/classes/sun/util/resources/TimeZoneNames.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java ! src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java ! test/jdk/sun/util/calendar/zi/TestZoneInfo310.java ! test/jdk/sun/util/calendar/zi/tzdata/VERSION ! test/jdk/sun/util/calendar/zi/tzdata/africa ! test/jdk/sun/util/calendar/zi/tzdata/asia ! test/jdk/sun/util/calendar/zi/tzdata/australasia ! test/jdk/sun/util/calendar/zi/tzdata/backward ! test/jdk/sun/util/calendar/zi/tzdata/etcetera ! test/jdk/sun/util/calendar/zi/tzdata/europe ! test/jdk/sun/util/calendar/zi/tzdata/iso3166.tab ! test/jdk/sun/util/calendar/zi/tzdata/leapseconds ! test/jdk/sun/util/calendar/zi/tzdata/northamerica ! test/jdk/sun/util/calendar/zi/tzdata/zone.tab Changeset: 556313991cac Author: mikael Date: 2019-07-10 07:27 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/556313991cac Merge - test/jdk/sun/security/tools/keytool/DefaultSignatureAlgorithm.java - test/jdk/sun/security/tools/keytool/pss/PSS.java - test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: 3203e857fa71 Author: aefimov Date: 2019-07-10 16:09 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/3203e857fa71 8226756: Replace wildcard address with loopback or local host in tests - part 18 Reviewed-by: dfuchs Contributed-by: Patrick Concannon ! test/jdk/java/net/Socket/InheritTimeout.java ! test/jdk/java/net/Socket/ReadTimeout.java ! test/jdk/java/net/Socket/ShutdownInput.java ! test/jdk/java/net/SocketInputStream/SocketTimeout.java ! test/jdk/java/net/URLConnection/ChunkedEncoding.java ! test/jdk/java/net/URLConnection/GetResponseCode.java ! test/jdk/java/net/URLConnection/SetIfModifiedSince.java ! test/jdk/sun/net/www/protocol/http/NoCache.java ! test/jdk/sun/net/www/protocol/https/HttpsURLConnection/HttpsSocketFacTest.java Changeset: c9b6be61b7a0 Author: mikael Date: 2019-07-10 08:20 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/c9b6be61b7a0 Added tag jdk-14+5 for changeset 0f1e29c77e50 ! .hgtags Changeset: f60890de1dfb Author: fmatte Date: 2019-07-02 08:43 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/f60890de1dfb 8225715: jhsdb jmap fails to write binary heap dump of a jshell process Summary: Add a Null check for getSourceFileName() before writing into thread dump. Reviewed-by: cjplummer, kevinw ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java + test/jdk/sun/tools/jhsdb/JShellHeapDumpTest.java Changeset: ba72dac556c3 Author: joehw Date: 2019-07-10 16:45 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/ba72dac556c3 7148925: StAXSource causes exceptions to be thrown with certain wellformed XML instances Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/StAXStream2SAX.java ! test/jaxp/javax/xml/jaxp/unittest/transform/StAXSourceTest.java Changeset: ad8e3b295615 Author: dfuchs Date: 2019-07-10 22:33 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/ad8e3b295615 8227539: Replace wildcard address with loopback or local host in tests - part 20 Summary: Update some tests to stop using the wildcard address. Reviewed-by: michaelm ! test/jdk/java/net/HttpURLConnection/HttpResponseCode.java ! test/jdk/java/net/HttpURLConnection/HttpURLConWithProxy.java ! test/jdk/java/net/Inet6Address/B6558853.java ! test/jdk/java/net/InetAddress/CheckJNI.java ! test/jdk/java/net/MulticastSocket/NoLoopbackPackets.java ! test/jdk/java/net/Socket/AsyncShutdown.java ! test/jdk/java/net/Socket/B6210227.java ! test/jdk/java/net/Socket/LinkLocal.java ! test/jdk/java/net/Socket/asyncClose/BrokenPipe.java ! test/jdk/java/net/ipv6tests/B6521014.java Changeset: 56e8c0a3fe9a Author: ysuenaga Date: 2019-07-11 08:19 +0900 URL: https://hg.openjdk.java.net/loom/loom/rev/56e8c0a3fe9a 8209790: SA tools not providing option to connect to debug server Reviewed-by: sspitsyn, cjplummer ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/SALauncher.java + test/hotspot/jtreg/serviceability/sa/sadebugd/DebugdConnectTest.java + test/hotspot/jtreg/serviceability/sa/sadebugd/DebugdUtils.java Changeset: 45fc36beb0aa Author: jjg Date: 2019-07-10 16:23 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/45fc36beb0aa 8227416: Add a "Table Of Contents" to HTML version of man pages Reviewed-by: mchung ! make/Docs.gmk ! make/data/docs-resources/resources/jdk-default.css ! make/jdk/src/classes/build/tools/fixuppandoc/Main.java Changeset: 2d1acda7555a Author: stuefe Date: 2019-07-11 06:49 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/2d1acda7555a 8227031: Print NMT statistics on fatal errors Reviewed-by: mbaesken, mdoerr ! src/hotspot/share/services/memTracker.cpp ! src/hotspot/share/services/memTracker.hpp ! src/hotspot/share/utilities/vmError.cpp Changeset: 3243c42d737d Author: stuefe Date: 2019-07-11 06:56 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/3243c42d737d 8227275: Within native OOM error handling, assertions may hang the process Reviewed-by: mdoerr, coleenp ! src/hotspot/os/posix/vmError_posix.cpp ! src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp ! src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp ! src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp ! src/hotspot/os_cpu/linux_s390/os_linux_s390.cpp ! src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp ! src/hotspot/os_cpu/linux_x86/os_linux_x86.cpp ! src/hotspot/share/utilities/debug.cpp ! src/hotspot/share/utilities/debug.hpp ! src/hotspot/share/utilities/vmError.cpp Changeset: 92ab031d6540 Author: rkennke Date: 2019-07-04 17:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/92ab031d6540 8226695: Shenandoah: Wire C1 and C2 IN_NATIVE barrier Reviewed-by: roland ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.hpp Changeset: 419420eb5230 Author: hseigel Date: 2019-07-11 09:26 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/419420eb5230 8226798: JVM crash in klassItable::initialize_itable_for_interface(int, InstanceKlass*, bool, Thread*) Summary: When calculating vtable size at class load time, do not look for miranda method if matching package private method is found in a super class. Reviewed-by: acorn, lfoltan ! src/hotspot/share/oops/klassVtable.cpp + test/hotspot/jtreg/runtime/VtableTests/VTableTest.java + test/hotspot/jtreg/runtime/VtableTests/pkg/A.java Changeset: 1346086863a3 Author: redestad Date: 2019-07-11 15:38 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/1346086863a3 8227527: LogDecorations should lazily resolve host name Reviewed-by: gziemski, lfoltan, stuefe ! src/hotspot/share/logging/logDecorations.cpp ! src/hotspot/share/logging/logDecorations.hpp Changeset: 107ebf94ddcc Author: hannesw Date: 2019-07-11 16:43 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/107ebf94ddcc 8223451: Make optimistic types disabled by default Reviewed-by: sundar, jlaskey, attila ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/resources/Options.properties ! test/nashorn/script/nosecurity/logcoverage.js Changeset: a35a210e6c0f Author: joehw Date: 2019-07-11 15:58 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/a35a210e6c0f 8178843: A bug in an inner loop in MethodGenerator's getLocals method Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java Changeset: 60bdaee6010a Author: mikael Date: 2019-07-10 08:24 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/60bdaee6010a Added tag jdk-13+29 for changeset 3081f39a3d30 ! .hgtags Changeset: fe5dcb38a26a Author: neliasso Date: 2019-07-10 18:48 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/fe5dcb38a26a 8226536: Catch OOM from deopt that fails rematerializing objects Reviewed-by: vlivanov, thartmann ! test/hotspot/jtreg/vmTestbase/nsk/share/gc/gp/GarbageUtils.java Changeset: b32b6ffb221b Author: valeriep Date: 2019-07-10 18:43 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/b32b6ffb221b 8181386: CipherSpi ByteBuffer to byte array conversion fails for certain data overlap conditions Summary: Detect potential buffer overlap and use extra buffer if necessary Reviewed-by: xuelei ! src/java.base/share/classes/javax/crypto/CipherSpi.java + test/jdk/javax/crypto/CipherSpi/CipherByteBufferOverwriteTest.java Changeset: 1d5ce4787723 Author: jjg Date: 2019-07-10 13:14 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/1d5ce4787723 8227549: Fix style of links in specs for consistency Reviewed-by: iris, mchung ! make/data/docs-resources/resources/jdk-default.css Changeset: 63d13c01f2b8 Author: aph Date: 2019-07-02 16:54 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/63d13c01f2b8 8226525: HotSpot compile-time error for x86-32 Reviewed-by: shade ! src/hotspot/os_cpu/linux_x86/orderAccess_linux_x86.hpp Changeset: ceafb2debc68 Author: aph Date: 2019-07-11 11:36 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/ceafb2debc68 Merge - src/hotspot/share/gc/z/zOopClosures.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp - test/jdk/sun/security/tools/keytool/DefaultSignatureAlgorithm.java - test/jdk/sun/security/tools/keytool/pss/PSS.java - test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: 70b1c1bec669 Author: hannesw Date: 2019-07-11 17:11 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/70b1c1bec669 8227391: Update double-conversion to version 3.1.5 Reviewed-by: attila ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/doubleconv/Bignum.java ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/doubleconv/FixedDtoa.java ! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/doubleconv/IeeeDouble.java ! test/nashorn/src/jdk/nashorn/internal/runtime/doubleconv/test/BignumDtoaTest.java ! test/nashorn/src/jdk/nashorn/internal/runtime/doubleconv/test/FixedDtoaTest.java ! test/nashorn/src/jdk/nashorn/internal/runtime/doubleconv/test/IeeeDoubleTest.java Changeset: 340d73f42b3c Author: jjg Date: 2019-07-11 12:13 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/340d73f42b3c 8227602: Update nroff version of man pages Reviewed-by: mchung ! src/java.base/share/man/java.1 ! src/jdk.compiler/share/man/javac.1 ! src/jdk.javadoc/share/man/javadoc.1 ! src/jdk.jdeps/share/man/javap.1 ! src/jdk.jdeps/share/man/jdeps.1 ! src/jdk.jlink/share/man/jlink.1 ! src/jdk.jlink/share/man/jmod.1 ! src/jdk.rmic/share/man/rmic.1 Changeset: 6521aec1c26e Author: valeriep Date: 2019-07-11 20:11 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/6521aec1c26e 8225745: NoSuchAlgorithmException exception for SHA256withECDSA with RSASSA-PSS support Summary: Fixed SignatureUtil and ECDSA signature impl to handle EC parameters Reviewed-by: weijun ! src/java.base/share/classes/sun/security/util/CurveDB.java ! src/java.base/share/classes/sun/security/util/ECUtil.java ! src/java.base/share/classes/sun/security/util/SignatureUtil.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECDSASignature.java + test/jdk/sun/security/x509/X509CertImpl/ECSigParamsVerifyWithCert.java Changeset: 7b11ce080798 Author: psadhukhan Date: 2019-07-12 09:27 +0530 URL: https://hg.openjdk.java.net/loom/loom/rev/7b11ce080798 8225423: GTK L&F: JSplitPane: There is no divider shown Reviewed-by: prr, serb ! src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.c ! src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.h Changeset: 07e09cb9ed70 Author: fyuan Date: 2019-07-12 13:59 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/07e09cb9ed70 8227422: sun/net/www/protocol/file/DirPermissionDenied.java failed on Windows 2016 because DirPermissionDenied directory has no read permission Reviewed-by: dfuchs ! test/jdk/sun/net/www/protocol/file/DirPermissionDenied.java Changeset: a87f5fdcd177 Author: clanger Date: 2019-07-12 10:57 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/a87f5fdcd177 8227578: Wrong JRE targets in Images.gmk after JDK-8219971 Reviewed-by: tbell ! make/Images.gmk Changeset: d755f53becea Author: mikael Date: 2019-07-12 02:50 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/d755f53becea Merge ! .hgtags ! make/data/docs-resources/resources/jdk-default.css ! src/java.base/share/classes/sun/security/util/CurveDB.java Changeset: c659942fc471 Author: jiangli Date: 2019-07-12 10:39 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/c659942fc471 8227582: runtime/TLS/testtls.sh fails on x86_32 Summary: Disable the negative test case for regular testing. Reviewed-by: shade ! test/hotspot/jtreg/runtime/TLS/testtls.sh Changeset: 0bf678dd8951 Author: jjg Date: 2019-07-12 10:44 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/0bf678dd8951 8227613: "draft" header should be in a
instead of
Reviewed-by: mchung, iris ! make/Docs.gmk Changeset: ff76baab1c90 Author: jcm Date: 2019-07-12 11:51 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/ff76baab1c90 8227068: [Graal] MappedByteBuffer bulk access memory failures are not handled gracefully Summary: Unsafe.copyMemory access failures are handled gracefully. Reviewed-by: dnsimon, kvn ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotUnsafeSubstitutions.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/HotSpotReplacementsUtil.java Changeset: a33465cf8774 Author: jjg Date: 2019-07-12 15:15 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/a33465cf8774 8227644: make more build-time variables available to Markdown files Reviewed-by: mchung ! make/Docs.gmk ! make/launcher/LauncherCommon.gmk Changeset: 901ab17af3ce Author: ysuenaga Date: 2019-07-13 20:55 +0900 URL: https://hg.openjdk.java.net/loom/loom/rev/901ab17af3ce 8227594: sadebugd/DebugdConnectTest.java fails due to "java.rmi.NotBoundException: SARemoteDebugger" Reviewed-by: cjplummer, sspitsyn + test/hotspot/jtreg/serviceability/sa/sadebugd/TEST.properties Changeset: 4b1de39beda3 Author: fyuan Date: 2019-07-15 17:53 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/4b1de39beda3 8227438: [TESTLIB] Determine if file exists by Files.exists in function FileUtils.deleteFileIfExistsWithRetry Reviewed-by: lancea, joehw ! test/lib/jdk/test/lib/util/FileUtils.java Changeset: 296560a21cea Author: rkennke Date: 2019-07-15 12:31 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/296560a21cea 8227637: Adjust Shenandoah C2 verifier to recognize IN_NATIVE barriers Reviewed-by: roland ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp Changeset: aa96c53c592b Author: rkennke Date: 2019-07-15 15:27 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/aa96c53c592b 8227676: Shenandoah: More consistent naming of LRB entry points Reviewed-by: shade ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.hpp Changeset: cd48f8f260c8 Author: yzhou Date: 2019-07-15 10:21 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/cd48f8f260c8 8227289: Enable assertions for some shell to java conversion tests after JDK-8218960 Reviewed-by: naoto ! test/jdk/java/util/Calendar/SupplementalJapaneseEraTestRun.java ! test/jdk/java/util/ResourceBundle/Control/MissingResourceCauseTestRun.java ! test/jdk/java/util/ResourceBundle/modules/ModuleTestUtil.java ! test/jdk/java/util/ResourceBundle/modules/layer/LayerTest.java ! test/jdk/java/util/ResourceBundle/modules/unnamed/UnNamedTest.java ! test/jdk/java/util/ResourceBundle/modules/visibility/VisibilityTest.java ! test/jdk/java/util/TimeZone/Bug8066652Run.java ! test/jdk/java/util/TimeZone/TimeZoneDatePermissionCheckRun.java Changeset: 7b671e6b0d5b Author: zgu Date: 2019-07-15 11:23 -0400 URL: https://hg.openjdk.java.net/loom/loom/rev/7b671e6b0d5b 8225483: Shenandoah: Enhance native access barrier Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp Changeset: 70fab3a8ff02 Author: ysuenaga Date: 2019-07-16 07:29 +0900 URL: https://hg.openjdk.java.net/loom/loom/rev/70fab3a8ff02 8225690: Multiple AttachListener threads can be created Reviewed-by: sspitsyn, cjplummer ! src/hotspot/os/aix/attachListener_aix.cpp ! src/hotspot/os/bsd/attachListener_bsd.cpp ! src/hotspot/os/linux/attachListener_linux.cpp ! src/hotspot/os/solaris/attachListener_solaris.cpp ! src/hotspot/os/windows/attachListener_windows.cpp ! src/hotspot/share/runtime/os.cpp ! src/hotspot/share/services/attachListener.cpp ! src/hotspot/share/services/attachListener.hpp + test/hotspot/jtreg/serviceability/attach/ConcAttachTest.java + test/hotspot/jtreg/serviceability/attach/RemovingUnixDomainSocketTest.java Changeset: b528b724b16d Author: mbaesken Date: 2019-07-12 12:19 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/b528b724b16d 8227630: adjust format specifiers in loadlib_aix.cpp Reviewed-by: mdoerr, shade ! src/hotspot/os/aix/loadlib_aix.cpp Changeset: 000138a6a4b3 Author: njian Date: 2019-07-15 03:14 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/000138a6a4b3 8227574: [TESTBUG] JTReg tests fail with Graal due to access denied Reviewed-by: kvn Contributed-by: xiaohong.gong at arm.com ! test/jdk/java/net/URLPermission/URLTest.java ! test/jdk/java/sql/testng/util/TestPolicy.java Changeset: 56b96d234f26 Author: rschmelter Date: 2019-07-16 13:57 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/56b96d234f26 8227440: Implement fix to JDK-8224642 on all platforms Reviewed-by: sspitsyn, clanger ! src/jdk.attach/aix/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/linux/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/macosx/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/solaris/classes/sun/tools/attach/VirtualMachineImpl.java ! src/jdk.attach/windows/classes/sun/tools/attach/VirtualMachineImpl.java Changeset: b8152c273f76 Author: bulasevich Date: 2019-07-16 18:05 +0300 URL: https://hg.openjdk.java.net/loom/loom/rev/b8152c273f76 8227632: Incorrect PrintCompilation message: made not compilable on levels 0 1 2 3 4 Summary: Fixing the message to print actual comp_level Reviewed-by: dlong, kvn ! src/hotspot/share/oops/method.cpp Changeset: 065142ace8e9 Author: redestad Date: 2019-07-16 17:50 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/065142ace8e9 8227720: Improve ExtendedSocketOptions initialization Reviewed-by: chegar, vtewari ! src/java.base/share/classes/sun/net/ext/ExtendedSocketOptions.java ! src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java ! src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java ! src/jdk.net/solaris/classes/jdk/net/SolarisSocketOptions.java Changeset: 0e1bc587472c Author: joehw Date: 2019-07-16 21:12 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/0e1bc587472c 8176447: javax.xml.validation.Validator validates incorrectly on uniqueness constraint Reviewed-by: lancea ! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java ! test/jaxp/javax/xml/jaxp/unittest/validation/ValidationTest.java + test/jaxp/javax/xml/jaxp/unittest/validation/files/JDK8176447a.xml + test/jaxp/javax/xml/jaxp/unittest/validation/files/JDK8176447a.xsd + test/jaxp/javax/xml/jaxp/unittest/validation/files/JDK8176447b.xml + test/jaxp/javax/xml/jaxp/unittest/validation/files/JDK8176447b.xsd Changeset: 8c5c9d86e1d6 Author: pli Date: 2019-07-16 00:57 +0000 URL: https://hg.openjdk.java.net/loom/loom/rev/8c5c9d86e1d6 8227512: [TESTBUG] Fix JTReg javac test failures with Graal Reviewed-by: mcimadamore ! test/langtools/tools/javac/file/LimitedImage.java ! test/langtools/tools/javac/modules/InheritRuntimeEnvironmentTest.java Changeset: a07fedf3db62 Author: njian Date: 2019-07-17 10:11 +0800 URL: https://hg.openjdk.java.net/loom/loom/rev/a07fedf3db62 8227615: [TESTBUG] JTReg "jdk/sun/security/util/FilePermCompat/CompatImpact.java" fails with graal Reviewed-by: kvn Contributed-by: xiaohong.gong at arm.com ! test/jdk/sun/security/util/FilePermCompat/CompatImpact.java Changeset: 443f7359b34d Author: mbaesken Date: 2019-07-16 11:10 +0200 URL: https://hg.openjdk.java.net/loom/loom/rev/443f7359b34d 8227631: Adjust AIX version check Reviewed-by: clanger, goetz ! src/hotspot/os/aix/os_aix.cpp Changeset: 0ca0fed7d7f9 Author: alanb Date: 2019-07-23 17:28 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/0ca0fed7d7f9 Merge ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/c1/c1_Runtime1.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/gc/shared/gcBehaviours.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp - src/hotspot/share/gc/z/zOopClosures.cpp ! src/hotspot/share/interpreter/templateInterpreter.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/jvmci/jvmciEnv.hpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/memory/iterator.hpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/parse1.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiExport.hpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/os.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/stubRoutines.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/java.base/share/classes/java/lang/Throwable.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardedIntrinsicTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ReferentFieldReadBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/CardTableBarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ObjectWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotHostForeignCallsProvider.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/WriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierAdditionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierVerificationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/PhaseContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/Log.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectStoreNode.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/unit/FollowReferences/followref003/followref003.cpp - test/jdk/sun/security/tools/keytool/DefaultSignatureAlgorithm.java - test/jdk/sun/security/tools/keytool/pss/PSS.java - test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: 958a6805213e Author: alanb Date: 2019-07-24 08:12 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/958a6805213e Merge ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/vmSymbols.hpp - src/hotspot/share/gc/z/zOopClosures.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp - src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiExport.hpp ! src/hotspot/share/runtime/vmOperations.hpp - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardedIntrinsicTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/WriteBarrierVerificationTest.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ArrayRangePreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PostWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1PreWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/g1/G1ReferentFieldReadBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/BarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/CardTableBarrierSet.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/ObjectWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialArrayRangeWriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/gc/shared/SerialWriteBarrier.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/nodes/WriteBarrier.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierAdditionPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/phases/WriteBarrierVerificationPhase.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases/src/org/graalvm/compiler/phases/tiers/PhaseContext.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/Log.java - src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/DirectStoreNode.java ! src/jdk.jdwp.agent/share/native/libjdwp/debugInit.c - test/jdk/sun/security/tools/keytool/DefaultSignatureAlgorithm.java - test/jdk/sun/security/tools/keytool/pss/PSS.java - test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: 6b0e38e4f0dd Author: alanb Date: 2019-07-24 08:27 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/6b0e38e4f0dd Fix build issue on Windows ! src/hotspot/share/runtime/continuation.cpp Changeset: 8c1dfcebcb66 Author: alanb Date: 2019-07-24 08:27 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/8c1dfcebcb66 Merge From chris.plummer at oracle.com Thu Jul 25 23:48:57 2019 From: chris.plummer at oracle.com (chris.plummer at oracle.com) Date: Thu, 25 Jul 2019 23:48:57 +0000 Subject: hg: loom/loom: Need to look for Object.wait0() frame, not Object.wait(). This was suppose to have been pushed a while back with changeset 55911, which covered needed wait0() changes in vmSymbols.hpp. Message-ID: <201907252348.x6PNmvQo029407@aojmv0008.oracle.com> Changeset: 266550213f5e Author: cjplummer Date: 2019-07-25 16:48 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/266550213f5e Need to look for Object.wait0() frame, not Object.wait(). This was suppose to have been pushed a while back with changeset 55911, which covered needed wait0() changes in vmSymbols.hpp. ! test/hotspot/jtreg/serviceability/tmtools/jstack/WaitNotifyThreadTest.java From ron.pressler at oracle.com Fri Jul 26 17:14:46 2019 From: ron.pressler at oracle.com (ron.pressler at oracle.com) Date: Fri, 26 Jul 2019 17:14:46 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907261714.x6QHElWl000113@aojmv0008.oracle.com> Changeset: d96849b90380 Author: rpressler Date: 2019-07-26 17:24 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/d96849b90380 set anchor in freeze before call to JvmtiExport::post_continuation_yield and undo simplification to deoptimization ! src/hotspot/cpu/x86/abstractInterpreter_x86.cpp ! src/hotspot/cpu/x86/continuation_x86.inline.hpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp ! src/hotspot/share/interpreter/interpreterRuntime.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuation.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/frame.cpp ! test/jdk/java/lang/Continuation/Basic.java ! test/jdk/java/lang/Continuation/Scoped.java Changeset: d657fe9599f8 Author: rpressler Date: 2019-07-26 17:26 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/d657fe9599f8 Merge ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/share/runtime/continuation.hpp From ron.pressler at oracle.com Sat Jul 27 00:53:44 2019 From: ron.pressler at oracle.com (ron.pressler at oracle.com) Date: Sat, 27 Jul 2019 00:53:44 +0000 Subject: hg: loom/loom: 2 new changesets Message-ID: <201907270053.x6R0rj1m007673@aojmv0008.oracle.com> Changeset: ea5944ef8c89 Author: rpressler Date: 2019-07-27 01:11 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/ea5944ef8c89 fix regression ! src/hotspot/cpu/x86/continuation_x86.inline.hpp ! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp ! src/hotspot/share/runtime/continuation.cpp Changeset: fb161fcd032a Author: rpressler Date: 2019-07-27 01:12 +0100 URL: https://hg.openjdk.java.net/loom/loom/rev/fb161fcd032a Merge From lei.yul at alibaba-inc.com Sat Jul 27 16:15:47 2019 From: lei.yul at alibaba-inc.com (Lei Yu) Date: Sun, 28 Jul 2019 00:15:47 +0800 Subject: =?UTF-8?B?QXV0b21hdGljYWxseSBjb252ZXJ0IFRocmVhZCB0byBGaWJlcg==?= Message-ID: <2f4b6434-9f32-4177-a301-c9d9d22b3b87.lei.yul@alibaba-inc.com> Hi, Based on our try of the Fiber API and experience with Wisp(similar to loom, lightweight concurrency construct implemented in Alibaba JDK, widely used internally), in addition to using explicit Fiber API, If we can consider automatically converting all normal Java threads as fibers ? The reasons come from: 1) New API is not free lunch for many existing libraries, need more code change efforts. You can use fibers in the Servlet containers to to handle the web requests. The desirable way is to replace the normal ThreadPoolExecutor with FiberScope.background()::schedule by Servlet container's API or configuration. However, for Tomcat as typical example, which has been widely, heavily used in Java web servers, we can not simply do this via configuration. Even the users can do such code change in Tomcat to use fiber , there is also some disadvantages. The intrinsic characteristics of ThreadPoolExecutor, e.g. poolSize, queuing behavior may have impact on the the application's behavior, such as limiting max number of concurrent requests. Directly replacing it with fiber for each request might result in losing such control. Ideally, the approach is to respect the these intrinsic characteristics imposed by ThreadPoolExecutor's and meanwhile, the underlying workers are created/run as fiber. Moreover, many third-party libraries usually create a lot of threads internally, for example in some of our production cases, the max number of threads per application might be more than 1000. We also expect that these threads can also be replaced by fibers to save resources. 2) Interaction overhead between Fiber and Thread Most of the distributed Java middleware are based on Netty. One of common usages is when the business thread needs doing RPC, it just delegates to Netty IO thread to handle request/response. When the response is coming in, the Netty IO thread wakes up the business thread which is waiting on Future to continue processing that response. The fact that if we just only convert the business thread as fiber, the Netty IO thread is still running as normal thread might discount performance benefits gained from lightweight scheduling - The fibers are scheduled by ForkJoinPool, however the ForkJoinPool itself and Netty IO thread are scheduled by the OS. By the way, actually Thread as Fiber feature has been implemented in Alibaba JDK, widely used in our e-commerce application. I was wondering if anyone is interested in this? not sure if anyone had started to work on this... If not, I'll volunteer to propose a design... Lei From ron.pressler at oracle.com Mon Jul 29 02:31:46 2019 From: ron.pressler at oracle.com (Ron Pressler) Date: Sun, 28 Jul 2019 19:31:46 -0700 Subject: Early Access Loom Builds Message-ID: Early Access OpenJDK binaries that include Project Loom are now available for download (the download page has a link to the Javadoc). [1] The release of Early Access builds does not indicate anything about the project's readiness or status other than us wanting to solicit feedback from a wider set of users. The best way to help is to download the Early Access binaries, try Loom out, and report about your experience. Both the API as well as the implementation are still far from stable, and are expected to change very frequently. We are mostly interested in feedback on the following: ?- Given current Loom limitations (such as held monitors pinning threads), how hard ? ?is it to migrate existing code to work well with fibers?? ?- Structured concurrency: is it helpful? What can be improved?? ?- Which use cases are important to you, and are they well-served by Loom? Loom is ultimately a project that is intended to help with scalability and performance, and both speed and footprint are primary concerns for the project. But while we are *very* interested in your performance/footprint *requirements* and the kind of workloads you want Loom to help with, performance/footprint benchmarks are not helpful at this stage, as the implementation is far from stable and experiences frequent changes with possibly drastic impact to speed/footprint. First we make it work; then we make it fast. Bug reports are welcome. If you encounter a bug, please report it to this mailing list. Your feedback on the experience of using Loom will not only be appreciated, but will help us deliver Loom sooner. Thank you! Ron [1] http://jdk.java.net/loom/ From forax at univ-mlv.fr Mon Jul 29 03:44:21 2019 From: forax at univ-mlv.fr (Remi Forax) Date: Mon, 29 Jul 2019 03:44:21 +0000 Subject: Early Access Loom Builds In-Reply-To: References: Message-ID: <3EDCE91E-D052-451F-AAF0-D63FC43DAB92@univ-mlv.fr> Champagne ! That's a nice milestone to reach. Remi On July 29, 2019 2:31:46 AM UTC, Ron Pressler wrote: >Early Access OpenJDK binaries that include Project Loom are now >available for >download (the download page has a link to the Javadoc). [1] > >The release of Early Access builds does not indicate anything about the >project's readiness or status other than us wanting to solicit feedback >from a >wider set of users. The best way to help is to download the Early >Access >binaries, try Loom out, and report about your experience. Both the API >as well >as the implementation are still far from stable, and are expected to >change very >frequently. > >We are mostly interested in feedback on the following: > > >?- Given current Loom limitations (such as held monitors pinning >threads), how hard >? ?is it to migrate existing code to work well with fibers?? >?- Structured concurrency: is it helpful? What can be improved?? >?- Which use cases are important to you, and are they well-served by >Loom? > >Loom is ultimately a project that is intended to help with scalability >and >performance, and both speed and footprint are primary concerns for the >project. >But while we are *very* interested in your performance/footprint >*requirements* >and the kind of workloads you want Loom to help with, >performance/footprint >benchmarks are not helpful at this stage, as the implementation is far >from >stable and experiences frequent changes with possibly drastic impact to >speed/footprint. First we make it work; then we make it fast. > >Bug reports are welcome. If you encounter a bug, please report it to >this >mailing list. > >Your feedback on the experience of using Loom will not only be >appreciated, but >will help us deliver Loom sooner. > >Thank you! > >Ron > > >[1] http://jdk.java.net/loom/ -- Envoy? de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma bri?vet?. From akarnokd at gmail.com Mon Jul 29 06:22:33 2019 From: akarnokd at gmail.com (=?UTF-8?Q?D=C3=A1vid_Karnok?=) Date: Mon, 29 Jul 2019 08:22:33 +0200 Subject: Early Access Loom Builds In-Reply-To: References: Message-ID: Great! Could you point me to the API docs of the relevant components (i.e., which classes to look at) and any up-to-date basic usage examples? Ron Pressler ezt ?rta (id?pont: 2019. j?l. 29., H?t 4:33): > Early Access OpenJDK binaries that include Project Loom are now available > for > download (the download page has a link to the Javadoc). [1] > > The release of Early Access builds does not indicate anything about the > project's readiness or status other than us wanting to solicit feedback > from a > wider set of users. The best way to help is to download the Early Access > binaries, try Loom out, and report about your experience. Both the API as > well > as the implementation are still far from stable, and are expected to > change very > frequently. > > We are mostly interested in feedback on the following: > > > - Given current Loom limitations (such as held monitors pinning threads), > how hard > is it to migrate existing code to work well with fibers? > - Structured concurrency: is it helpful? What can be improved? > - Which use cases are important to you, and are they well-served by Loom? > > Loom is ultimately a project that is intended to help with scalability and > performance, and both speed and footprint are primary concerns for the > project. > But while we are *very* interested in your performance/footprint > *requirements* > and the kind of workloads you want Loom to help with, performance/footprint > benchmarks are not helpful at this stage, as the implementation is far from > stable and experiences frequent changes with possibly drastic impact to > speed/footprint. First we make it work; then we make it fast. > > Bug reports are welcome. If you encounter a bug, please report it to this > mailing list. > > Your feedback on the experience of using Loom will not only be > appreciated, but > will help us deliver Loom sooner. > > Thank you! > > Ron > > > [1] http://jdk.java.net/loom/ > > > > From Alan.Bateman at oracle.com Mon Jul 29 12:51:21 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Mon, 29 Jul 2019 05:51:21 -0700 Subject: Early Access Loom Builds In-Reply-To: References: Message-ID: On 28/07/2019 23:22, D?vid Karnok wrote: > Great! > > Could you point me to the API docs of the relevant components (i.e., which > classes to look at) and any up-to-date basic usage examples? > The API docs are linked from the page with the build. If you type "Fiber" or "FiberScope" into the search box then it should get you going. There's a simple example in the FiberScope class description. There is ongoing churn in the API but when it's a bit more stable then we'll put examples on the wiki to make it easier to get started. -Alan From akarnokd at gmail.com Mon Jul 29 13:16:20 2019 From: akarnokd at gmail.com (=?UTF-8?Q?D=C3=A1vid_Karnok?=) Date: Mon, 29 Jul 2019 15:16:20 +0200 Subject: Early Access Loom Builds In-Reply-To: References: Message-ID: Thanks. I was hoping for some details on Continuation and ContinuationScope, but those are TBD. I'd like to ask a question because of that. 1) What happens when Continuation.run() is active but hasn't reached a yield() point and I call Continuation.run() from another thread? Example use case: let's assume a generator is emitting values based on how many such values have been requested. When the requests stop, the generator should yield until the requests happen again, which requests would then call run(). A race condition is possible when the generator sees the current requested amount to be zero, the other thread bumps this amount and calls run(), then the generator thread issues yield(). 2) What happens if multiple threads call Continuation.run()? Example use case: a consumer collects values from multiple async sources. The sources post to a (shared) queue and then would signal the consumer that data is ready. The consumer would check the queue and if it is/becomes empty, it would yield(). A race condition is possible when both async sources post to the queue and then both would issue run() to indicate the consumer can resume. Naturally, this can be turned into the case of question 1) by making sure only one of the sources can issue a run() at a time thus we are back to run()-yield() race. Alan Bateman ezt ?rta (id?pont: 2019. j?l. 29., H, 14:51): > On 28/07/2019 23:22, D?vid Karnok wrote: > > Great! > > > > Could you point me to the API docs of the relevant components (i.e., > which > > classes to look at) and any up-to-date basic usage examples? > > > The API docs are linked from the page with the build. If you type > "Fiber" or "FiberScope" into the search box then it should get you > going. There's a simple example in the FiberScope class description. > There is ongoing churn in the API but when it's a bit more stable then > we'll put examples on the wiki to make it easier to get started. > > -Alan > -- Best regards, David Karnok From Alan.Bateman at oracle.com Mon Jul 29 14:00:41 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Mon, 29 Jul 2019 07:00:41 -0700 Subject: Early Access Loom Builds In-Reply-To: References: Message-ID: <362458c1-3799-0f61-cfe5-8d88546831b8@oracle.com> On 29/07/2019 06:16, D?vid Karnok wrote: > Thanks. I was hoping for some details on Continuation and > ContinuationScope, but those are TBD. I'd like to ask a question > because of that. Continuations are used as a lower level construct in the current prototype. TBD if they will be exposed initially. In any case, the run method will throw IllegalStateException if continuation hasn't yielded. -Alan From qwwdfsad at gmail.com Mon Jul 29 18:03:29 2019 From: qwwdfsad at gmail.com (Vsevolod Tolstopyatov) Date: Mon, 29 Jul 2019 11:03:29 -0700 Subject: Crash in G1 barriers during freeze Message-ID: Hi, I've observed a crash in a particular Loom benchmark configuration: https://github.com/qwwdfsad/loomcrash The sample project contains steps to reproduce and corresponding hs_err logs. -- Best regards, Tolstopyatov Vsevolod From chris.plummer at oracle.com Tue Jul 30 22:31:10 2019 From: chris.plummer at oracle.com (chris.plummer at oracle.com) Date: Tue, 30 Jul 2019 22:31:10 +0000 Subject: hg: loom/loom: Adjust for the fact that yield events are now after the continuation has been frozen, so the continuation frames don't turn up when counting all frames on the stack. Message-ID: <201907302231.x6UMVAhN022972@aojmv0008.oracle.com> Changeset: 97fd77aa6d07 Author: cjplummer Date: 2019-07-30 15:30 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/97fd77aa6d07 Adjust for the fact that yield events are now after the continuation has been frozen, so the continuation frames don't turn up when counting all frames on the stack. ! src/hotspot/share/prims/jvmtiExport.cpp From chris.plummer at oracle.com Tue Jul 30 22:32:54 2019 From: chris.plummer at oracle.com (chris.plummer at oracle.com) Date: Tue, 30 Jul 2019 22:32:54 +0000 Subject: hg: loom/loom: Merge Message-ID: <201907302232.x6UMWtO6023537@aojmv0008.oracle.com> Changeset: 391424c5f103 Author: cjplummer Date: 2019-07-30 15:31 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/391424c5f103 Merge ! src/hotspot/share/prims/jvmtiExport.cpp From chris.plummer at oracle.com Tue Jul 30 22:34:52 2019 From: chris.plummer at oracle.com (chris.plummer at oracle.com) Date: Tue, 30 Jul 2019 22:34:52 +0000 Subject: hg: loom/loom: Adjust for the fact that yield events are now after the continuation has been frozen, so the continuation frames don't turn up when counting all frames on the stack. Message-ID: <201907302234.x6UMYqEE024175@aojmv0008.oracle.com> Changeset: e04a322a226c Author: cjplummer Date: 2019-07-30 15:33 -0700 URL: https://hg.openjdk.java.net/loom/loom/rev/e04a322a226c Adjust for the fact that yield events are now after the continuation has been frozen, so the continuation frames don't turn up when counting all frames on the stack. ! src/jdk.jdwp.agent/share/native/libjdwp/threadControl.c From akarnokd at gmail.com Wed Jul 31 06:47:55 2019 From: akarnokd at gmail.com (=?UTF-8?Q?D=C3=A1vid_Karnok?=) Date: Wed, 31 Jul 2019 08:47:55 +0200 Subject: Early Access Loom Builds In-Reply-To: <362458c1-3799-0f61-cfe5-8d88546831b8@oracle.com> References: <362458c1-3799-0f61-cfe5-8d88546831b8@oracle.com> Message-ID: Okay, I see. My next question is about FiberScope then. If I understand correctly, FiberScope.close blocks if run in a traditional thread and suspends if run in a Fiber. Thus opening a scope with try() in the main method will block the main thread (i.e., down to the OS level) until the execution falls out of try() and close is called, right? Now if I have code that runs on a single-threaded ExecutorService, a FiberScope still appears to block the underlying OS thread until try() finishes: var exec = Executors.newSingleThreadExecutor(); try { var f = exec.submit(() -> { try (var scope = FiberScope.open()) { System.out.println("In scope"); Thread.sleep(1000); } System.out.println("Out of scope"); return null; }); var f2 = exec.submit(() -> { System.out.println("Another task"); Thread.sleep(250); System.out.println("Back"); return null; }); f.get(); f2.get(); } finally { exec.shutdown(); } prints In scope Out of scope Another task Back "Another task" doesn't run until the first task ends. In practice, I don't think I can scope the entire application and rewrite forks to schedule(Executor, Runnable), partly because Executor may not even be available at that point. Is there a way (or does it make sense) to make FiberScope.open detect that it is running on an Executor thus it doesn't have to block but use it for resumption? Alan Bateman ezt ?rta (id?pont: 2019. j?l. 29., H, 16:00): > On 29/07/2019 06:16, D?vid Karnok wrote: > > Thanks. I was hoping for some details on Continuation and > > ContinuationScope, but those are TBD. I'd like to ask a question > > because of that. > Continuations are used as a lower level construct in the current > prototype. TBD if they will be exposed initially. In any case, the run > method will throw IllegalStateException if continuation hasn't yielded. > > -Alan > -- Best regards, David Karnok