From jbhateja at openjdk.java.net Wed Jun 1 17:03:17 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Wed, 1 Jun 2022 17:03:17 GMT Subject: [vectorIntrinsics] RFR: 8285281: [x86] Add C2 mid-end and back-end implementation for COMPRESS_BITS and EXPAND_BITS operations [v3] In-Reply-To: References: Message-ID: On Tue, 26 Apr 2022 10:46:59 GMT, Jatin Bhateja wrote: >> Summary of changes: >> - Patch intrinsifies following newly added Java SE APIs >> 1. Integer.compress >> 2. Integer.expand >> 3. Long.compress >> 4. Long.expand >> - Adds C2 IR nodes and corresponding ideal transformations for new operations. >> - Inline expansion of new vector operations COMPRESS_BITS and EXPAND_BITS are performed using their scalar counterparts and lane insertion/extraction operations. >> - Performance of JIT sequence generated using above approach vs directly vectorizing scalar algorithm using existing vector APIs is within in +/-%10 range depending on the width of the operation, since X86 offers direct instructions PEXT/PDEP for parallel bit extraction and deposition operations hence performance of scalar loop is always superior to corresponding vector operations. >> - Adds an IR framework based test to validate newly introduced IR transformations. >> >> Kindly review and share your feedback. >> >> Best Regards, >> Jatin > > Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision: > > 8285281: Review comments resolved. Pull request is created against JDK-mainline, closing this PR. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/195 From jbhateja at openjdk.java.net Wed Jun 1 17:03:18 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Wed, 1 Jun 2022 17:03:18 GMT Subject: [vectorIntrinsics] RFR: 8285281: [x86] Add C2 mid-end and back-end implementation for COMPRESS_BITS and EXPAND_BITS operations [v3] In-Reply-To: <_2fyaGHHsrqh9SNlmSiIyV4juDHmW8wM98Gg2tEVlFA=.52297821-8268-4db6-a9db-10782b5dff57@github.com> References: <_2fyaGHHsrqh9SNlmSiIyV4juDHmW8wM98Gg2tEVlFA=.52297821-8268-4db6-a9db-10782b5dff57@github.com> Message-ID: On Fri, 6 May 2022 07:13:43 GMT, Xiaohong Gong wrote: >> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision: >> >> 8285281: Review comments resolved. > > Please don't forget to add the new added vector ops like `CompressBitsV` and `ExpandBitsV` to function https://github.com/openjdk/jdk/blob/master/src/hotspot/share/adlc/formssel.cpp#L4208. Or the vector type info might be missing by matcher as expected. Thanks! Thanks @XiaohongGong , @theRealELiu for reviews. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/195 From jbhateja at openjdk.java.net Wed Jun 1 17:03:18 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Wed, 1 Jun 2022 17:03:18 GMT Subject: [vectorIntrinsics] Withdrawn: 8285281: [x86] Add C2 mid-end and back-end implementation for COMPRESS_BITS and EXPAND_BITS operations In-Reply-To: References: Message-ID: On Thu, 21 Apr 2022 13:15:59 GMT, Jatin Bhateja wrote: > Summary of changes: > - Patch intrinsifies following newly added Java SE APIs > 1. Integer.compress > 2. Integer.expand > 3. Long.compress > 4. Long.expand > - Adds C2 IR nodes and corresponding ideal transformations for new operations. > - Inline expansion of new vector operations COMPRESS_BITS and EXPAND_BITS are performed using their scalar counterparts and lane insertion/extraction operations. > - Performance of JIT sequence generated using above approach vs directly vectorizing scalar algorithm using existing vector APIs is within in +/-%10 range depending on the width of the operation, since X86 offers direct instructions PEXT/PDEP for parallel bit extraction and deposition operations hence performance of scalar loop is always superior to corresponding vector operations. > - Adds an IR framework based test to validate newly introduced IR transformations. > > Kindly review and share your feedback. > > Best Regards, > Jatin This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/195 From jrose at openjdk.java.net Wed Jun 1 17:25:58 2022 From: jrose at openjdk.java.net (John R Rose) Date: Wed, 1 Jun 2022 17:25:58 GMT Subject: [vectorIntrinsics] RFR: 8287289: Gather/Scatter with Index Vector In-Reply-To: References: Message-ID: On Wed, 25 May 2022 08:35:53 GMT, Joshua Zhu wrote: > When I assist engineers to apply VectorAPI in real business scenarios, I realize that Gather/Scatter APIs depend on indexMap residing in memory. > > When an index map is acquired by vector operations, it is represented by IntVector. To do Gather/Scatter operations, an extra integer array must be introduced and an explicit vector store is also required ahead of each Gather/Scatter. Furthermore, the redundant memory store may cause a performance penalty. > > Hence I submit this change for discussion. I propose to provide Gather/Scatter API supporting index vector. This patch only includes the change for Gather API. > It passed the jtreg tests for VectorAPI. This is a very nice experiment. I agree that the scatter/gather APIs need polishing; I think of them as proofs of concept, in their present form. It is probably useful to look towards Panama as a source for the best types for these operations, in their final form. (Hat tip to Paul Sandoz for this idea.) If we can figure out how to do scatter-gather over memory segments, that would support Java arrays (perhaps via convenience methods) and also support more general native programming scenarios, including ones which are not limited to 31-bit indexes into the Java heap. Therefore, I think a useful primitive looks like this: FloatVector fromArray( VectorSpecies species, MemorySegment a, IntVector indexVector); FloatVector fromArray( VectorSpecies species, MemorySegment a, LongVector indexVector); Note the overload. With Panama now available, Java has *two* natural index types, `int` and `long`. I think both are important. I know hardware usually support both. In particular, supporting `long` means that (with safety restrictions removed appropriately) scatter and gather can use full memory addresses, if the right "magic" memory segment is available. As a side note, I'd also like to see uniform support of subword types for scatter and gather. This is messy, but part of the value of Java is tastefully hiding such messes. The mess looks like this: A gather of subword types would require a word-wise gather plus lanewise shifting, followed by a contraction. It would probably also have to be done by parts, since the intermediates have lane size of 32 bits. It's much worse for scatter. A scatter of subword types should probably just call an out-of-line assembly routine. That is, in my opinion, the VectorIntrinsics API should not refuse "trouble making" scatters and gathers, but the JIT should use runtime support routines for them. The runtime support can use hand-crafted code to do a best-efforts scatter, and then serialize. That's probably faster than having the VI layer refuse to intrinsify, since the code shape emitted by the JIT will still be vectorized (except for the out-call to hand assembly). Over time, some or all of the hand-assembly might migrate into the JIT's emitted code. We are still adjusting that boundary for the `System.arraycopy` intrinsics, and this is a similar case I think. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/201 From jrose at openjdk.java.net Wed Jun 1 17:35:49 2022 From: jrose at openjdk.java.net (John R Rose) Date: Wed, 1 Jun 2022 17:35:49 GMT Subject: [vectorIntrinsics] RFR: 8287289: Gather/Scatter with Index Vector In-Reply-To: References: Message-ID: On Wed, 25 May 2022 08:35:53 GMT, Joshua Zhu wrote: > When I assist engineers to apply VectorAPI in real business scenarios, I realize that Gather/Scatter APIs depend on indexMap residing in memory. > > When an index map is acquired by vector operations, it is represented by IntVector. To do Gather/Scatter operations, an extra integer array must be introduced and an explicit vector store is also required ahead of each Gather/Scatter. Furthermore, the redundant memory store may cause a performance penalty. > > Hence I submit this change for discussion. I propose to provide Gather/Scatter API supporting index vector. This patch only includes the change for Gather API. > It passed the jtreg tests for VectorAPI. P.S. As long as I'm talking about scatter and gather, I should also point out that the above APIs (as well as the existing proof-of-concept APIs) do not support scatter or gather to/from more than one Java object at a time. This is another limitation I'd like to eventually remove. An API which could do this looks like 2-D scatter/gathers where the first dimension is an index (a real `int`) into a Java array of multiple objects. Panama lets us declare that this array can be of type `MemorySegment[]` and that's all you need. FloatVector fromArrays( VectorSpecies species, MemorySegment[] as, IntVector indexVector1, IntVector indexVector2); FloatVector fromArrays( VectorSpecies species, MemorySegment[] as, IntVector indexVector1, LongVector indexVector2); // and for constant second index: FloatVector fromArrays( VectorSpecies species, MemorySegment[] as, IntVector indexVector1, int index2); FloatVector fromArrays( VectorSpecies species, MemorySegment[] as, IntVector indexVector1, long index2); P.P.S. I suppose that the word `Array` in all of the above should be called `Memory` if embrace Panama. It's not really an array, except in a logical sense. Also I have omitted any discussion of index scaling and alignment. There might be more to say about those issues. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/201 From themode at outlook.fr Thu Jun 2 10:14:32 2022 From: themode at outlook.fr (Felix Cravic) Date: Thu, 2 Jun 2022 10:14:32 +0000 Subject: Opt-in for trivial native method calls Message-ID: Hello, coming here after a recommendation from reddit [0] I want to pitch my wish for the Linker API to support "trival" native function. My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. To give a relevant example that could take advantage of such feature, my current toy project [1] involve making the JVM version of Unity's burst compiler [2] which consist in JIT compiling JVM bytecode using LLVM with the hope of getting better performance for highly specialized code (custom intrinsics, stack allocation, value class without valhalla, other fanciness...). And while the calling latency does not make it impossible, it does make it inefficient for taking advantage of specialized instructions (that may not be available in the JDK api) and relatively small methods that could still outperform hotspot equivalent. I definitely agree that my situation is not the most common (I am responsible for all the native methods, generate class dynamically to create the static method handles) but giving access to low-level tweaks seem like a great solution to me. I am also not sure of what are the tradeoffs of these trivial methods (is it only a matter of safepoint?) so I would be happy to get more technical details. Thanks! [0] - https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ [1] - https://github.com/TheMode/Spe [2] - https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html From jzhu at openjdk.java.net Thu Jun 2 10:55:47 2022 From: jzhu at openjdk.java.net (Joshua Zhu) Date: Thu, 2 Jun 2022 10:55:47 GMT Subject: [vectorIntrinsics] RFR: 8287289: Gather/Scatter with Index Vector In-Reply-To: References: Message-ID: On Wed, 25 May 2022 08:35:53 GMT, Joshua Zhu wrote: > When I assist engineers to apply VectorAPI in real business scenarios, I realize that Gather/Scatter APIs depend on indexMap residing in memory. > > When an index map is acquired by vector operations, it is represented by IntVector. To do Gather/Scatter operations, an extra integer array must be introduced and an explicit vector store is also required ahead of each Gather/Scatter. Furthermore, the redundant memory store may cause a performance penalty. > > Hence I submit this change for discussion. I propose to provide Gather/Scatter API supporting index vector. This patch only includes the change for Gather API. > It passed the jtreg tests for VectorAPI. John, thanks a lot for your comments. > If we can figure out how to do scatter-gather over memory segments, that would support Java arrays (perhaps via convenience methods) and also support more general native programming scenarios, including ones which are not limited to 31-bit indexes into the Java heap. Make sense, I will follow your suggestion and implement Gather/Scatter operation over memory segments by int/long index. I think besides Gather/Scatter API on MemorySegment, the existing proof-of-concept APIs over Java arrays are still needed, right? As for the implementation of them, I will figure out whether the way that depends on memory segments is better. > As a side note, I'd also like to see uniform support of subword types for scatter and gather. This is messy, but part of the value of Java is tastefully hiding such messes. OK. Thanks. ------------- PR: https://git.openjdk.java.net/panama-vector/pull/201 From maurizio.cimadamore at oracle.com Thu Jun 2 11:11:04 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 2 Jun 2022 12:11:04 +0100 Subject: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: <2953705c-4ed7-0532-dd0c-071d560a4129@oracle.com> Hi Felix, this is on our radar. When I see discussion on these topics, I typically see the discussion bringing up two _different_ features: 1. drop state Java->Native transitions for simple calls (e.g. `getpid`) 2. pass heap objects to native functions directly (e.g. heap buffer, heap segments, strings, arrays, ...), this is sometimes referred to as "heap pinning" The two features are obviously related - disabling state transitions (1) effectively results in the thread going "native" no longer being able to safepoint. Since GC is "blocked" heap objects have addresses that can be "trusted" during the execution of the native call (hence (2)). But supporting pinning is definitively harder: if you rely on trivial call support, you can only trust heap addresses from native code - but the native code Panama calls knows nothing about JVM objects and pinned heap regions. And this is problematic for Panama, because the code that lowers memory segments to raw addresses is expressed in Java code (so we can't use heap addresses safely there). There are other options, such as that to use GC support for heap pinning [1], those might work (for the GC which support that feature). Back to trivial calls, the main limitations around trivial calls are: * no GC while running the trivial call (as thread won't safepoint) * if the trivial call tries to upcall to Java, the JVM will crash Summing up, we have already thought about these topics, and will probably do something to support some of these features. But we'd like to arrive with something that people would find useful - only adding support for trivial calls, while beneficial in a few specialized cases (like yours), is, alone, not powerful enough to subsume other use cases where e.g. people reach for critical JNI (because of lack of heap pinning). In other words, I think it's worth trying to solve both problems at once. Maurizio [1] - https://shipilev.net/jvm/anatomy-quarks/9-jni-critical-gclocker/ On 02/06/2022 11:14, Felix Cravic wrote: > Hello, coming here after a recommendation from reddit [0] I want to pitch my wish for the Linker API to support "trival" native function. > My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. > > To give a relevant example that could take advantage of such feature, my current toy project [1] involve making the JVM version of Unity's burst compiler [2] which consist in JIT compiling JVM bytecode using LLVM with the hope of getting better performance for highly specialized code (custom intrinsics, stack allocation, value class without valhalla, other fanciness...). And while the calling latency does not make it impossible, it does make it inefficient for taking advantage of specialized instructions (that may not be available in the JDK api) and relatively small methods that could still outperform hotspot equivalent. > > I definitely agree that my situation is not the most common (I am responsible for all the native methods, generate class dynamically to create the static method handles) but giving access to low-level tweaks seem like a great solution to me. I am also not sure of what are the tradeoffs of these trivial methods (is it only a matter of safepoint?) so I would be happy to get more technical details. > > Thanks! > > [0] - https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ > [1] - https://github.com/TheMode/Spe > [2] - https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html > From samuel.audet at gmail.com Thu Jun 2 11:49:07 2022 From: samuel.audet at gmail.com (Samuel Audet) Date: Thu, 2 Jun 2022 20:49:07 +0900 Subject: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: <7b127e80-f1f3-ad49-4571-ba1937cc70a9@gmail.com> Hi, 6ns is already pretty close to what you'd get for a function call in C/C++, without any Java involved. It sounds like what you're looking for is function inlining, which is actually a very common use case, and personally the only thing that I care about because if we can inline functions, we can implement all the features that this project is working on, but as libraries instead of as part of the core API. Unfortunately, function inlining is out of scope for Panama. You may want to check out this project for that though: https://github.com/alibaba/fastffi Samuel On 6/2/22 19:14, Felix Cravic wrote: > Hello, coming here after a recommendation from reddit [0] I want to pitch my wish for the Linker API to support "trival" native function. > My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. > > To give a relevant example that could take advantage of such feature, my current toy project [1] involve making the JVM version of Unity's burst compiler [2] which consist in JIT compiling JVM bytecode using LLVM with the hope of getting better performance for highly specialized code (custom intrinsics, stack allocation, value class without valhalla, other fanciness...). And while the calling latency does not make it impossible, it does make it inefficient for taking advantage of specialized instructions (that may not be available in the JDK api) and relatively small methods that could still outperform hotspot equivalent. > > I definitely agree that my situation is not the most common (I am responsible for all the native methods, generate class dynamically to create the static method handles) but giving access to low-level tweaks seem like a great solution to me. I am also not sure of what are the tradeoffs of these trivial methods (is it only a matter of safepoint?) so I would be happy to get more technical details. > > Thanks! > > [0] - https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ > [1] - https://github.com/TheMode/Spe > [2] - https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html > From jorn.vernee at oracle.com Thu Jun 2 14:47:43 2022 From: jorn.vernee at oracle.com (Jorn Vernee) Date: Thu, 2 Jun 2022 16:47:43 +0200 Subject: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: Hi Felix, The case you have in mind seems to be a native call to a single or few CPU instructions. Doing a native call for such cases is a bad choice. The native call overhead of the state transition from Java to native comes into play (as you've found). But even without that, there is a bunch of register shuffling needed to conform to the native ABI, since the register allocator in the JIT can not see through the native call. I think the right way to support such use cases is to implement them as a Java API + JIT intrinsic. That will make it so the JIT can fully understand the code, do inlining, proper register allocation instead of forcing all data to go through the C ABI, as well as other optimizations in combination with surrounding code (something that you will not typically see in the results of in a microbenchmark). Single/couple CPU instructions, or single system calls, seem the only real use cases for something like trivial calls/removed thread state transitions. And in those cases, native calls are just a bad solution for the reasons outlined above. Sure, it knocks a few nanoseconds off of a microbenchmark here and there, but in return it removes a bunch of safety rails. My fear is that most people will just see this as a "go fast" button, without really understanding the consequences, and not really being able to notice the difference any ways because their native code runs much longer. For the people who would benefit from this, there are much better solutions. So, overall, trivial calls in the form of an opt-in seems like a net loss to me. We are looking at being able to pin heap objects, such as arrays, and pass them to native code though. Jorn On 02/06/2022 12:14, Felix Cravic wrote: > Hello, coming here after a recommendation from reddit [0] I want to pitch my wish for the Linker API to support "trival" native function. > My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. > > To give a relevant example that could take advantage of such feature, my current toy project [1] involve making the JVM version of Unity's burst compiler [2] which consist in JIT compiling JVM bytecode using LLVM with the hope of getting better performance for highly specialized code (custom intrinsics, stack allocation, value class without valhalla, other fanciness...). And while the calling latency does not make it impossible, it does make it inefficient for taking advantage of specialized instructions (that may not be available in the JDK api) and relatively small methods that could still outperform hotspot equivalent. > > I definitely agree that my situation is not the most common (I am responsible for all the native methods, generate class dynamically to create the static method handles) but giving access to low-level tweaks seem like a great solution to me. I am also not sure of what are the tradeoffs of these trivial methods (is it only a matter of safepoint?) so I would be happy to get more technical details. > > Thanks! > > [0] - https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ > [1] - https://github.com/TheMode/Spe > [2] - https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html > From themode at outlook.fr Thu Jun 2 15:40:09 2022 From: themode at outlook.fr (Felix Cravic) Date: Thu, 2 Jun 2022 15:40:09 +0000 Subject: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: I agree with everything you said. If I could make a java/hotspot intrinsics without forking OpenJDK this is what I would do but unfortunately there doesn't seem to be a way around it. My plan is not to strictly make native calls to a few CPU instructions but the 5-9ns of overhead is roughly equivalent to a HashMap/ConcurrentHashMap write and x6 read on my system. In the grand scheme of thing this is not expensive, but it does put the bar a bit high concerning what you can do native efficiently. Alternatively, my project could replace the class bytecode (e.g., replacing object instantiation with multiple local variables to simulate a primitive class, retrieving my intrinsics...) similarly to other JVM languages, but it doesn't seem reliable. Could you explain what you mean by "there are much better solutions."? As I cannot think of any solution other than forking OpenJDK or using JVMCI ________________________________ De : Jorn Vernee Envoy? : jeudi 2 juin 2022 16:47 ? : Felix Cravic ; panama-dev at openjdk.java.net Objet : Re: Opt-in for trivial native method calls Hi Felix, The case you have in mind seems to be a native call to a single or few CPU instructions. Doing a native call for such cases is a bad choice. The native call overhead of the state transition from Java to native comes into play (as you've found). But even without that, there is a bunch of register shuffling needed to conform to the native ABI, since the register allocator in the JIT can not see through the native call. I think the right way to support such use cases is to implement them as a Java API + JIT intrinsic. That will make it so the JIT can fully understand the code, do inlining, proper register allocation instead of forcing all data to go through the C ABI, as well as other optimizations in combination with surrounding code (something that you will not typically see in the results of in a microbenchmark). Single/couple CPU instructions, or single system calls, seem the only real use cases for something like trivial calls/removed thread state transitions. And in those cases, native calls are just a bad solution for the reasons outlined above. Sure, it knocks a few nanoseconds off of a microbenchmark here and there, but in return it removes a bunch of safety rails. My fear is that most people will just see this as a "go fast" button, without really understanding the consequences, and not really being able to notice the difference any ways because their native code runs much longer. For the people who would benefit from this, there are much better solutions. So, overall, trivial calls in the form of an opt-in seems like a net loss to me. We are looking at being able to pin heap objects, such as arrays, and pass them to native code though. Jorn On 02/06/2022 12:14, Felix Cravic wrote: > Hello, coming here after a recommendation from reddit [0] I want to pitch my wish for the Linker API to support "trival" native function. > My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. > > To give a relevant example that could take advantage of such feature, my current toy project [1] involve making the JVM version of Unity's burst compiler [2] which consist in JIT compiling JVM bytecode using LLVM with the hope of getting better performance for highly specialized code (custom intrinsics, stack allocation, value class without valhalla, other fanciness...). And while the calling latency does not make it impossible, it does make it inefficient for taking advantage of specialized instructions (that may not be available in the JDK api) and relatively small methods that could still outperform hotspot equivalent. > > I definitely agree that my situation is not the most common (I am responsible for all the native methods, generate class dynamically to create the static method handles) but giving access to low-level tweaks seem like a great solution to me. I am also not sure of what are the tradeoffs of these trivial methods (is it only a matter of safepoint?) so I would be happy to get more technical details. > > Thanks! > > [0] - https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ > [1] - https://github.com/TheMode/Spe > [2] - https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html > From jorn.vernee at oracle.com Thu Jun 2 16:11:31 2022 From: jorn.vernee at oracle.com (Jorn Vernee) Date: Thu, 2 Jun 2022 18:11:31 +0200 Subject: [External] : RE: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: <4c6247e8-4fb6-af96-ee63-a4b8ac2fcf48@oracle.com> On 02/06/2022 17:40, Felix Cravic wrote: > I agree with everything you said. If I could make a java/hotspot > intrinsics without forking OpenJDK this is what I would do but > unfortunately there doesn't seem to be a way around it. Forking, or sending an enhancement request through the bug tracker, or to one of the mailing lists (probably core-libs + hotspot-compiler). If you have a good description of the particular use case, and why existing solutions don't work, people should be able to help you pretty easily. There might already be existing solutions that do what you want as well. > > My plan is not to strictly make native calls to a few CPU instructions > but the 5-9ns of overhead is roughly equivalent to a > HashMap/ConcurrentHashMap write and x6 read on my system. In the grand > scheme of thing this is not expensive, but it does put the bar a bit > high concerning what you can do native efficiently. My suggestion would be to shift bigger chunks of code into native, and try to minimize the number of transitions back and forth that are needed. Out-of-line calls (native or not) will always be relatively slow compared to inlined memory accesses like HashMap lookups/puts (that's the point I was trying to make :) ). > > Alternatively, my project could replace the class bytecode (e.g., > replacing object instantiation with multiple local variables to > simulate a primitive class, retrieving my intrinsics...) similarly to > other JVM languages, but it doesn't seem reliable. Note that the JIT (C2) already does this as well, if it can prove that the containing object identity/header is not needed. > > Could you explain what you mean by "there are much better solutions."? > As I cannot think of any solution other than forking OpenJDK or using > JVMCI I'm talking about adding a Java API + Intrinsic. Forking OpenJDK and implementing it yourself would be one way to do that. Filing an enhancement request would be another. Jorn > ------------------------------------------------------------------------ > *De :* Jorn Vernee > *Envoy? :* jeudi 2 juin 2022 16:47 > *? :* Felix Cravic ; panama-dev at openjdk.java.net > > *Objet :* Re: Opt-in for trivial native method calls > Hi Felix, > > The case you have in mind seems to be a native call to a single or few > CPU instructions. Doing a native call for such cases is a bad choice. > The native call overhead of the state transition from Java to native > comes into play (as you've found). But even without that, there is a > bunch of register shuffling needed to conform to the native ABI, since > the register allocator in the JIT can not see through the native call. > > I think the right way to support such use cases is to implement them as > a Java API + JIT intrinsic. That will make it so the JIT can fully > understand the code, do inlining, proper register allocation instead of > forcing all data to go through the C ABI, as well as other optimizations > in combination with surrounding code (something that you will not > typically see in the results of in a microbenchmark). > > Single/couple CPU instructions, or single system calls, seem the only > real use cases for something like trivial calls/removed thread state > transitions. And in those cases, native calls are just a bad solution > for the reasons outlined above. > > Sure, it knocks a few nanoseconds off of a microbenchmark here and > there, but in return it removes a bunch of safety rails. My fear is that > most people will just see this as a "go fast" button, without really > understanding the consequences, and not really being able to notice the > difference any ways because their native code runs much longer. For the > people who would benefit from this, there are much better solutions. > > So, overall, trivial calls in the form of an opt-in seems like a net > loss to me. > > We are looking at being able to pin heap objects, such as arrays, and > pass them to native code though. > > Jorn > > On 02/06/2022 12:14, Felix Cravic wrote: > > Hello, coming here after a recommendation from reddit [0] I want to > pitch my wish for the Linker API to support "trival" native function. > > My benchmark showed an average latency of around 6ns when calling a > native method, which is more than fine most of the time, but fall > short for inexpensive calls. > > > > To give a relevant example that could take advantage of such > feature, my current toy project [1] involve making the JVM version of > Unity's burst compiler [2] which consist in JIT compiling JVM bytecode > using LLVM with the hope of getting better performance for highly > specialized code (custom intrinsics, stack allocation, value class > without valhalla, other fanciness...). And while the calling latency > does not make it impossible, it does make it inefficient for taking > advantage of specialized instructions (that may not be available in > the JDK api) and relatively small methods that could still outperform > hotspot equivalent. > > > > I definitely agree that my situation is not the most common (I am > responsible for all the native methods, generate class dynamically to > create the static method handles) but giving access to low-level > tweaks seem like a great solution to me. I am also not sure of what > are the tradeoffs of these trivial methods (is it only a matter of > safepoint?) so I would be happy to get more technical details. > > > > Thanks! > > > > [0] - > https://www.reddit.com/r/java/comments/v33d44/panama_foreign_function_overhead_how_can_it_be/ > > > [1] - https://github.com/TheMode/Spe > > > [2] - > https://docs.unity3d.com/Packages/com.unity.burst at 0.2-preview.20/manual/index.html > > > From svkamath at openjdk.java.net Thu Jun 2 17:28:04 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Thu, 2 Jun 2022 17:28:04 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v2] In-Reply-To: References: Message-ID: > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Updated code as per review comment ------------- Changes: - all: https://git.openjdk.java.net/panama-vector/pull/164/files - new: https://git.openjdk.java.net/panama-vector/pull/164/files/cda8b06f..89c872d4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=01 - incr: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=00-01 Stats: 21 lines in 2 files changed: 14 ins; 1 del; 6 mod Patch: https://git.openjdk.java.net/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.java.net/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.java.net/panama-vector/pull/164 From aph-open at littlepinkcloud.com Thu Jun 2 17:41:17 2022 From: aph-open at littlepinkcloud.com (Andrew Haley) Date: Thu, 2 Jun 2022 18:41:17 +0100 Subject: Javadoc for Package java.lang.foreign Message-ID: <856be8df-3769-1826-25bb-918786f4edf1@littlepinkcloud.com> Contains this: var linker = Linker.nativeLinker(); MethodHandle strlen = linker.downcallHandle( linker.lookup("strlen").get(), FunctionDescriptor.of(ValueLayout.JAVA_LONG, ValueLayout.ADDRESS) ); try (var session = MemorySession.openConfined()) { var cString = MemorySegment.allocateNative(5 + 1, session); cString.setUtf8String("Hello"); long len = (long)strlen.invoke(cString); // 5 } I can't get it to work: PanamaExample.java:9: error: cannot find symbol (linker.lookup("strlen").get(), ^ symbol: method lookup(String) location: variable linker of type Linker Is this an old version of the API? -- Andrew Haley (he/him) Java Platform Lead Engineer Red Hat UK Ltd. https://keybase.io/andrewhaley EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671 From maurizio.cimadamore at oracle.com Thu Jun 2 17:55:07 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 2 Jun 2022 18:55:07 +0100 Subject: Javadoc for Package java.lang.foreign In-Reply-To: <856be8df-3769-1826-25bb-918786f4edf1@littlepinkcloud.com> References: <856be8df-3769-1826-25bb-918786f4edf1@littlepinkcloud.com> Message-ID: Good catch, seems like something was lost in there. You need: linker.defaultLookup().lookup("strlen").get() Maurizio On 02/06/2022 18:41, Andrew Haley wrote: > Contains this: > > var linker = Linker.nativeLinker(); > MethodHandle strlen = linker.downcallHandle( > ??? linker.lookup("strlen").get(), > ??? FunctionDescriptor.of(ValueLayout.JAVA_LONG, ValueLayout.ADDRESS) > ); > > try (var session = MemorySession.openConfined()) { > ??? var cString = MemorySegment.allocateNative(5 + 1, session); > ??? cString.setUtf8String("Hello"); > ??? long len = (long)strlen.invoke(cString); // 5 > } > > I can't get it to work: > > PanamaExample.java:9: error: cannot find symbol > ??????????? (linker.lookup("strlen").get(), > ?????????????????? ^ > ? symbol:?? method lookup(String) > ? location: variable linker of type Linker > > Is this an old version of the API? > From maurizio.cimadamore at oracle.com Thu Jun 2 17:58:28 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 2 Jun 2022 18:58:28 +0100 Subject: [External] : RE: Opt-in for trivial native method calls In-Reply-To: <4c6247e8-4fb6-af96-ee63-a4b8ac2fcf48@oracle.com> References: <4c6247e8-4fb6-af96-ee63-a4b8ac2fcf48@oracle.com> Message-ID: <7f7585a6-0f35-2d0e-5d49-6e66b12f2d02@oracle.com> On 02/06/2022 17:11, Jorn Vernee wrote: >> >> Could you explain what you mean by "there are much better >> solutions."? As I cannot think of any solution other than forking >> OpenJDK or using JVMCI > > I'm talking about adding a Java API + Intrinsic. Forking OpenJDK and > implementing it yourself would be one way to do that. Filing an > enhancement request would be another. Note that in the context of Project Panama, Vlad did some great work on this subject; code name is "Machine code snippets" http://mail.openjdk.java.net/pipermail/panama-dev/2015-December/000225.html Basically, what this does is to capture a piece of machine code as a MethodHandle. You will see in the email that Vlad is referring to the same problems you are referring to. While the technilogy underneat this is solid (and actually very in sync with the Linker API, which also produces a method handle out of some "foreign" gunk), the main problem is expressing the computation that goes in the method handle. Using hardcoded strings is too "raw", and not a way to go about this that feels right for the Java language. What we'd prefer is some sort of lambda expression which constructs a computation tree out of some API; this computation would not be compiled down into bytecode, but is instead kept in a more general IR, which the Java runtime can then turn into something more suitable, like an intrinsic (these techniques are also known as "quoting", and are available in some languages such as C# [1], and F# [2] among others). Maurizio [1] - https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/expression-trees/ [2] - https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/code-quotations From aph-open at littlepinkcloud.com Thu Jun 2 18:27:49 2022 From: aph-open at littlepinkcloud.com (Andrew Haley) Date: Thu, 2 Jun 2022 19:27:49 +0100 Subject: Javadoc for Package java.lang.foreign In-Reply-To: References: <856be8df-3769-1826-25bb-918786f4edf1@littlepinkcloud.com> Message-ID: On 6/2/22 18:55, Maurizio Cimadamore wrote: > Good catch, seems like something was lost in there. You need: > > linker.defaultLookup().lookup("strlen").get() That's not all: setUtf8String wants an offset. This version runs: long doit() throws Throwable { var linker = Linker.nativeLinker(); MethodHandle strlen = linker.downcallHandle( linker.defaultLookup().lookup("strlen").get(), FunctionDescriptor.of(ValueLayout.JAVA_LONG, ValueLayout.ADDRESS)); try (var session = MemorySession.openConfined()) { var cString = MemorySegment.allocateNative(5 + 1, session); cString.setUtf8String(0, "Hello"); long len = (long)strlen.invoke(cString); // 5 return len; } } -- Andrew Haley (he/him) Java Platform Lead Engineer Red Hat UK Ltd. https://keybase.io/andrewhaley EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671 From maurizio.cimadamore at oracle.com Thu Jun 2 20:41:58 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 2 Jun 2022 21:41:58 +0100 Subject: Javadoc for Package java.lang.foreign In-Reply-To: References: <856be8df-3769-1826-25bb-918786f4edf1@littlepinkcloud.com> Message-ID: <66955df0-9d8f-835a-b0b3-34613843eee5@oracle.com> Thanks Andrew https://github.com/openjdk/jdk/pull/9005 Maurizio On 02/06/2022 19:27, Andrew Haley wrote: > On 6/2/22 18:55, Maurizio Cimadamore wrote: >> Good catch, seems like something was lost in there. You need: >> >> linker.defaultLookup().lookup("strlen").get() > > That's not all: setUtf8String wants an offset. > > This version runs: > > ??? long doit() throws Throwable { > ??????? var linker = Linker.nativeLinker(); > ??????? MethodHandle strlen = linker.downcallHandle( > ???????????? linker.defaultLookup().lookup("strlen").get(), > ???????????? FunctionDescriptor.of(ValueLayout.JAVA_LONG, > ValueLayout.ADDRESS)); > > ??????? try (var session = MemorySession.openConfined()) { > ??????????? var cString = MemorySegment.allocateNative(5 + 1, session); > ??????????? cString.setUtf8String(0, "Hello"); > ??????????? long len = (long)strlen.invoke(cString); // 5 > ??????????? return len; > ??????? } > ??? } > > From aph-open at littlepinkcloud.com Fri Jun 3 10:47:46 2022 From: aph-open at littlepinkcloud.com (Andrew Haley) Date: Fri, 3 Jun 2022 11:47:46 +0100 Subject: Opt-in for trivial native method calls In-Reply-To: References: Message-ID: <6936c5a4-42db-fce5-d1b0-484cbfbe780a@littlepinkcloud.com> On 6/2/22 11:14, Felix Cravic wrote: > My benchmark showed an average latency of around 6ns when calling a native method, which is more than fine most of the time, but fall short for inexpensive calls. So this is a rather long email, for which I apologize, but I made a JMH benchmark to measure where all the time goes, and I got this result. This was just for my curiosity, but I though it useful enough that it might prove to be illuminating to other readers. It doesn't seem to be doing much that's inessential, although I do wonder about all those vzeroupper instructions. There's a vzeroupper in set_last_Java_frame(), one in restore_cpu_control_state_after_jni(), and another in reset_last_Java_frame(). The operations are: Save the {sp, bp, pc} in the current JavaThread. Set the JavaThread to _thread_in_native. Shuffle the args into the native registers. Call the function. Full fence. Safepoint poll. Reguard stack. I don't think there's any fat here except one vzeroupper. The rest is simply what you have to do in order to transition from Java to native. Decoding RuntimeStub - nep_invoker_blob 0x00007fdb43b97490 -------------------------------------------------------------------------------- 0x00007fdb43b97520: push %rbp 2.63% 0x00007fdb43b97521: mov %rsp,%rbp 0x00007fdb43b97524: sub $0x10,%rsp ;; { thread java2native 0x00007fdb43b97528: vzeroupper 5.03% 0x00007fdb43b9752b: mov %rbp,0x320(%r15) 0x00007fdb43b97532: movabs $0x7fdb43b97528,%r10 0.03% 0x00007fdb43b9753c: mov %r10,0x318(%r15) 0x00007fdb43b97543: mov %rsp,0x310(%r15) 2.92% 0x00007fdb43b9754a: movl $0x4,0x3c4(%r15) ;; } thread java2native ;; { argument shuffle ;; bt=long 0x00007fdb43b97555: mov %rcx,%rax ;; bt=int 0x00007fdb43b97558: mov %rdx,%rdi ;; bt=long 0x00007fdb43b9755b: mov %rsi,%r10 ;; } argument shuffle 0x00007fdb43b9755e: call *%r10 ;; { thread native2java 0.13% 0x00007fdb43b97561: vzeroupper 5.71% 0x00007fdb43b97564: movl $0x5,0x3c4(%r15) 8.85% 0x00007fdb43b9756f: lock addl $0x0,-0x40(%rsp) 15.89% 0x00007fdb43b97575: cmp 0x3c8(%r15),%rbp 3.37% ? 0x00007fdb43b9757c: ja 0x00007fdb43b975d5 ? 0x00007fdb43b97582: cmpl $0x0,0x3c0(%r15) ?? 0x00007fdb43b9758d: jne 0x00007fdb43b975d5 ?? 0x00007fdb43b97593: movl $0x8,0x3c4(%r15) ?? ;; reguard stack check ?? 0x00007fdb43b9759e: cmpl $0x2,0x450(%r15) ?? 0x00007fdb43b975a9: je 0x00007fdb43b975fb ?? 0x00007fdb43b975af: movq $0x0,0x310(%r15) 0.03% ?? 0x00007fdb43b975ba: movq $0x0,0x320(%r15) ?? 0x00007fdb43b975c5: movq $0x0,0x318(%r15) 2.27% ?? 0x00007fdb43b975d0: vzeroupper ?? ;; } thread native2java 39.69% ?? 0x00007fdb43b975d3: leave ?? 0x00007fdb43b975d4: ret ?? ;; { L_safepoint_poll_slow_path ?? 0x00007fdb43b975d5: vzeroupper 0x00007fdb43b975d8: mov %rax,(%rsp) 0x00007fdb43b975dc: mov %r15,%rdi 0x00007fdb43b975df: mov %rsp,%r12 0x00007fdb43b975e2: sub $0x0,%rsp 0x00007fdb43b975e6: and $0xfffffffffffffff0,%rsp 0x00007fdb43b975ea: call 0x00007fdb526b8950 = JavaThread::check_special_condition_for_native_trans(JavaThread*) .................................................................................................... 86.54% Here's the JMH benchmark: package org.sample; import java.lang.invoke.*; import java.lang.foreign.*; import java.util.concurrent.TimeUnit; import org.openjdk.jmh.annotations.*; @BenchmarkMode(Mode.AverageTime) @OutputTimeUnit(TimeUnit.NANOSECONDS) @State(Scope.Thread) public class PanamaExample3 { static final Linker linker; static final MethodHandle c_abs; static { linker = Linker.nativeLinker(); c_abs = linker.downcallHandle (linker.defaultLookup().lookup("abs").get(), FunctionDescriptor.of(ValueLayout.JAVA_INT, ValueLayout.JAVA_INT)); } @Benchmark public int doit() throws Throwable { int len = (int)c_abs.invoke(-5); // 5 return len; } public static void main(String[] args) throws Throwable { System.out.println(new PanamaExample3().doit()); } } -- Andrew Haley (he/him) Java Platform Lead Engineer Red Hat UK Ltd. https://keybase.io/andrewhaley EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671 From duke at openjdk.java.net Fri Jun 3 11:08:54 2022 From: duke at openjdk.java.net (duke) Date: Fri, 3 Jun 2022 11:08:54 GMT Subject: git: openjdk/panama-foreign: foreign-memaccess+abi: 94 new changesets Message-ID: <53183934-8b0c-4486-a503-6b6b637fb3e2@openjdk.org> Changeset: 777f813e Author: Hannes Walln?fer Date: 2022-05-27 11:09:26 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/777f813e9b2688034d77523b4142dd67e1d9f38b 8268422: Find a better way to select releases in "New API" page Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SummaryListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Table.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TableHeader.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlAttr.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/script.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/checkStylesheetClasses/CheckStylesheetClasses.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java ! test/langtools/jdk/javadoc/lib/javadoc/tester/JavadocTester.java ! test/langtools/jdk/javadoc/testJavadocTester/TestJavadocTester.java Changeset: be933185 Author: Claes Redestad Date: 2022-05-27 12:10:40 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/be93318576896e8f5f9733ae1f7e3e74d63f5594 8287292: Improve TransformKey to pack more kinds of transforms efficiently Reviewed-by: jlaskey, jvernee, mchung ! src/java.base/share/classes/java/lang/invoke/LambdaForm.java ! src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java Changeset: f2bc4476 Author: Zhengyu Gu Date: 2022-05-27 12:16:04 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f2bc4476593938094263f0d85fc9bdd369e95237 8271406: Kitchensink failed with "assert(early->flag() == current->flag()) failed: Should be the same" Reviewed-by: coleenp, dholmes, stuefe ! src/hotspot/share/services/memReporter.cpp Changeset: 63eb0b7e Author: Erik Gahlin Date: 2022-05-27 13:00:02 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/63eb0b7e8606dd9cd145e92eeeb744ff5b7be569 8282947: JFR: Dump on shutdown live-locks in some conditions Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/ChunksChannel.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecording.java + test/jdk/jdk/jfr/api/recording/dump/TestDumpDevNull.java Changeset: 6520843f Author: Brian Burkhalter Date: 2022-05-27 15:23:01 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6520843f86f638fe4d1e5b3358fab5799daca654 8287003: InputStreamReader::read() can return zero despite writing a char in the buffer Reviewed-by: jpai, rriggs ! src/java.base/share/classes/sun/nio/cs/StreamDecoder.java ! test/jdk/java/io/InputStreamReader/ReadCharBuffer.java Changeset: 0df47482 Author: Erik Gahlin Date: 2022-05-27 21:02:53 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0df4748216ab71937cfcfb86a2d66f3568bced1e 8287463: JFR: Disable TestDevNull.java on Windows Reviewed-by: mgronlun ! test/jdk/jdk/jfr/api/recording/dump/TestDumpDevNull.java Changeset: d3e781de Author: Vladimir Ivanov Date: 2022-05-27 21:23:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d3e781de086d557a88105da965ff8a7f9126019c 8287223: C1: Inlining attempt through MH::invokeBasic() with null receiver Reviewed-by: kvn ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/opto/callGenerator.cpp + test/hotspot/jtreg/compiler/jsr292/NullConstantMHReceiver.java Changeset: ed8e8ac2 Author: Joe Wang Date: 2022-05-27 21:47:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ed8e8ac2892af3a0a70b95330e01ec976d3fea3c 8284400: Improve XPath exception handling Reviewed-by: lancea, naoto ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPath.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java ! test/jaxp/javax/xml/jaxp/unittest/xpath/XPathExceptionTest.java Changeset: 410a25d5 Author: Yasumasa Suenaga Date: 2022-05-28 02:09:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/410a25d59a11b6a627bbb0a2c405c2c2be19f464 8286562: GCC 12 reports some compiler warnings Reviewed-by: ihse, kbarrett, prr ! make/modules/java.desktop/lib/Awt2dLibraries.gmk ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdBits.inline.hpp ! src/hotspot/share/oops/array.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/java.base/unix/native/libjli/java_md_common.c Changeset: 66340372 Author: Ichiroh Takiguchi Date: 2022-05-28 05:33:08 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/66340372d595aeb4b3dfd9169a8448f363097256 8287362: FieldAccessWatch testcase failed on AIX platform Reviewed-by: cjplummer, mdoerr ! test/hotspot/jtreg/compiler/jsr292/cr8026328/libTest8026328.c ! test/hotspot/jtreg/runtime/jni/FastGetField/libFastGetField.c ! test/hotspot/jtreg/serviceability/jvmti/FieldAccessWatch/libFieldAccessWatch.c ! test/hotspot/jtreg/serviceability/jvmti/GetClassMethods/libOverpassMethods.cpp Changeset: 2c461acf Author: David Holmes Date: 2022-05-28 06:12:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2c461acfebd28fe5ef62805cbb004f91a3b18f08 8287492: ProblemList compiler/jvmci/errors/TestInvalidDebugInfo.java Reviewed-by: mikael, kvn ! test/hotspot/jtreg/ProblemList.txt Changeset: a6e2e223 Author: Erik Gahlin Date: 2022-05-28 17:22:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a6e2e223ea0339117c89f46e074a92dc2f31dfd5 8285008: JFR: jdk/jfr/jmx/streaming/TestClose.java failed with "Exception: Expected repository to be empty" Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java ! test/jdk/jdk/jfr/jmx/streaming/TestClose.java Changeset: 36350bf1 Author: Erik Gahlin Date: 2022-05-29 13:56:33 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/36350bf1be1ae3c5b58cc7c7ca95acd9bfa26949 8287484: JFR: Seal RecordedObject Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordedObject.java Changeset: 3d2d0395 Author: Anthony Vanelverdinghe Committer: Jaikiran Pai Date: 2022-05-29 14:26:19 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3d2d039538b906cedd9188ed94b7ba55c275ff7f 8287440: Typo in package-info.java of java.util.random Reviewed-by: darcy, iris, jpai ! src/java.base/share/classes/java/util/random/package-info.java Changeset: 5848a60c Author: jeremy Committer: Laurent Bourg?s Date: 2022-05-30 06:06:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/5848a60c01747728cbdde1e9d8a244079fd88c14 8286093: java/awt/geom/Path2D/UnitTest.java failed with "RuntimeException: 2D bounds too small" Reviewed-by: prr ! src/java.desktop/share/classes/java/awt/geom/Path2D.java ! test/jdk/java/awt/geom/Path2D/UnitTest.java Changeset: 744b822a Author: Maxim Kartashev Committer: Ioi Lam Date: 2022-05-30 06:18:47 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/744b822ab194a0f7ef4e7a4053be32c6a0889efc 8287073: NPE from CgroupV2Subsystem.getInstance() Reviewed-by: vkempik, iklam ! src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java Changeset: a27ba1a3 Author: Yasumasa Suenaga Date: 2022-05-30 07:02:07 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a27ba1a3db5f0b4eb75b6cca94f33398e7b695cc 8287363: null pointer should use NULL instead of 0 Reviewed-by: kbarrett, stuefe, alanb ! src/java.base/unix/native/libjli/java_md_common.c Changeset: 447ae006 Author: Xiaolin Zheng Committer: Fei Yang Date: 2022-05-30 07:45:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/447ae006163b00cc46cac1c7ebe201de311bf1a1 8287418: riscv: Fix correctness issue of MacroAssembler::movptr Reviewed-by: fjiang, yadongwang, fyang ! src/hotspot/cpu/riscv/assembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetNMethod_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.hpp ! src/hotspot/cpu/riscv/nativeInst_riscv.cpp Changeset: 1b9987cb Author: Zhuojun Miao Committer: Christian Hagedorn Date: 2022-05-30 07:52:49 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1b9987cb08611a98e6351876aa7da4e56d4a5d2e 8287288: Fix some typos in C1 Reviewed-by: aph, dholmes, dlong, chagedorn ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp ! src/hotspot/share/c1/c1_LIR.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LIRGenerator.hpp Changeset: 19fb8ab8 Author: Nick Gasson Date: 2022-05-30 08:09:28 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/19fb8ab8b9a3366850ed224c35f3cd163c0511e5 8287195: AArch64: Client VM build failure after JDK-8283689 Reviewed-by: jvernee, adinn ! src/hotspot/cpu/aarch64/foreignGlobals_aarch64.cpp Changeset: d8331737 Author: Nick Gasson Date: 2022-05-30 08:12:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d8331737ad09fb989c492bdfe3868a7ae66e32af 8286711: AArch64: serviceability agent tests fail with PAC enabled Reviewed-by: dholmes, cjplummer ! src/hotspot/cpu/aarch64/pauth_aarch64.hpp ! src/hotspot/cpu/aarch64/vmStructs_aarch64.hpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.hpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/aarch64/AARCH64Frame.java Changeset: eb8d067b Author: Martin Doerr Date: 2022-05-30 08:57:58 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/eb8d067b56287a201ca102299e6b756417e5cf1b 8287433: [PPC64] g1_write_barrier_pre needs extension for Loom Reviewed-by: rrich, stuefe ! src/hotspot/cpu/ppc/gc/g1/g1BarrierSetAssembler_ppc.cpp Changeset: b1b96746 Author: Martin Doerr Date: 2022-05-30 09:00:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b1b96746633487901cbc504ccd074cb856ed5327 8287437: Temporarily disable Continuations::enabled() for platforms which don't have an implementation, yet Reviewed-by: shade, alanb, rrich ! src/hotspot/share/runtime/continuation.cpp Changeset: 73ba7fdc Author: Thomas Schatzl Date: 2022-05-30 09:17:12 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/73ba7fdce838ba8a2c227a972c176311e6cc0b41 8287157: Clean up G1Policy::next_gc_should_be_mixed() Reviewed-by: lkorinth ! src/hotspot/share/gc/g1/g1Policy.cpp ! src/hotspot/share/gc/g1/g1Policy.hpp Changeset: f086d945 Author: Christoph Langer Date: 2022-05-30 14:59:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f086d945c31d3673e0a49017e3d4e99b189253fe 8287378: GHA: Update cygwin to fix issues in langtools tests on Windows Reviewed-by: aturbanov, shade ! .github/workflows/submit.yml Changeset: 1606d554 Author: Christoph Langer Date: 2022-05-30 15:01:17 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1606d5545b8daad840575b7cfd97b94fd8a3d41d 8286855: javac error on invalid jar should only print filename Reviewed-by: jpai, mdoerr ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java Changeset: 0c420e03 Author: Maurizio Cimadamore Date: 2022-05-30 15:40:06 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0c420e03ae24144a8146edb39f546841da33e381 8287430: MemorySessionImpl::addOrCleanupIfFail does not rethrow exceptions Reviewed-by: jvernee ! src/java.base/share/classes/jdk/internal/foreign/MemorySessionImpl.java Changeset: b2ba9fc9 Author: Johan Sj?l?n Committer: Stefan Karlsson Date: 2022-05-30 16:53:35 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b2ba9fc9f696fe3d452ad809d540f4618f5f215a 8286180: Enable construction of LogStreamImpl from LogMessageImpl Reviewed-by: dholmes, stefank ! src/hotspot/share/logging/logHandle.hpp ! src/hotspot/share/logging/logMessage.hpp ! src/hotspot/share/logging/logStream.cpp ! src/hotspot/share/logging/logStream.hpp ! src/hotspot/share/logging/logTagSet.hpp ! test/hotspot/gtest/logging/test_logStream.cpp Changeset: 8a9aeff1 Author: Andrey Turbanov Date: 2022-05-31 06:59:03 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8a9aeff18cd7b26f62934e5892fc87d25f249595 8287497: Use String.contains() instead of String.indexOf() in java.naming Reviewed-by: aefimov, rriggs, jpai ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapAttribute.java ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapClient.java ! src/java.naming/share/classes/com/sun/jndi/ldap/ext/StartTlsResponseImpl.java ! src/java.naming/share/classes/javax/naming/NameImpl.java Changeset: 8f59422d Author: Roberto Casta?eda Lozano Date: 2022-05-31 06:59:49 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8f59422d357a00a2270a8f421966977e3979c2fb 8285558: IGV: scheduling crashes on control-unreachable CFG nodes Reviewed-by: kvn, chagedorn ! src/utils/IdealGraphVisualizer/ServerCompiler/src/main/java/com/sun/hotspot/igv/servercompiler/ServerCompilerScheduler.java Changeset: 6e55a72f Author: Roberto Casta?eda Lozano Date: 2022-05-31 08:38:11 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6e55a72f25f7273e3a8a19e0b9a97669b84808e9 8287438: IGV: scheduling crashes on non-block-start Region with multiple predecessors Reviewed-by: kvn, chagedorn ! src/utils/IdealGraphVisualizer/ServerCompiler/src/main/java/com/sun/hotspot/igv/servercompiler/ServerCompilerScheduler.java Changeset: c6e04164 Author: Dmitry Kulikov Committer: Alexey Ivanov Date: 2022-05-31 10:14:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c6e041649514b964f5baaa88880c4d146275db8d 8282863: java/awt/FullScreen/FullscreenWindowProps/FullscreenWindowProps.java fails on Windows 10 with HiDPI screen Reviewed-by: serb, aivanov ! src/java.desktop/windows/classes/sun/awt/Win32GraphicsDevice.java ! test/jdk/java/awt/FullScreen/FullscreenWindowProps/FullscreenWindowProps.java Changeset: 7ef69935 Author: Jan Lahoda Date: 2022-05-31 11:04:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/7ef6993576006d5fd09186870064d4dc1996e846 8276836: Error in javac caused by switch expression without result expressions: Internal error: stack sim error Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Code.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java + test/langtools/tools/javac/switchexpr/SwitchExpressionNoValue.java Changeset: 1b44f6c4 Author: Aleksey Shipilev Date: 2022-05-31 13:48:18 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1b44f6c483cfb2c8c2f304281654b56fda967719 8287526: java/nio/channels/FileChannel/LargeMapTest.java fails on 32-bit systems Reviewed-by: alanb, stuefe ! test/jdk/java/nio/channels/FileChannel/LargeMapTest.java Changeset: 171a7cdd Author: Jan Lahoda Date: 2022-05-31 15:01:38 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/171a7cdd5d44265b17541e17304e9ebed376a9fd 8286895: InternalError: Exception during analyze Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! test/langtools/jdk/jshell/ErrorRecoveryTest.java + test/langtools/tools/javac/recovery/NoCrashForError.java + test/langtools/tools/javac/recovery/NoCrashForError.out Changeset: 6f6486e9 Author: Jatin Bhateja Date: 2022-05-31 16:02:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6f6486e97743eadfb20b4175e1b4b2b05b59a17a 8284960: Integration of JEP 426: Vector API (Fourth Incubator) Co-authored-by: Jatin Bhateja Co-authored-by: Paul Sandoz Co-authored-by: Sandhya Viswanathan Co-authored-by: Smita Kamath Co-authored-by: Joshua Zhu Co-authored-by: Xiaohong Gong Co-authored-by: John R Rose Co-authored-by: Eric Liu Co-authored-by: Ningsheng Jian Reviewed-by: ngasson, vlivanov, mcimadamore, jlahoda, kvn ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/aarch64_neon.ad ! src/hotspot/cpu/aarch64/aarch64_neon_ad.m4 ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.hpp ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/matcher_x86.hpp ! src/hotspot/cpu/x86/stubGenerator_x86_32.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.hpp ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.hpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/matcher.cpp ! src/hotspot/share/opto/mulnode.hpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/subnode.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/vectorIntrinsics.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp ! src/hotspot/share/prims/vectorSupport.cpp ! src/hotspot/share/prims/vectorSupport.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/java.base/share/classes/jdk/internal/misc/X-ScopedMemoryAccess.java.template ! src/java.base/share/classes/jdk/internal/vm/vector/VectorSupport.java ! src/java.base/share/classes/module-info.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Preview.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractMask.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractSpecies.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorIntrinsics.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorMask.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorOperators.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorSpecies.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.amd64/src/jdk/vm/ci/amd64/AMD64.java ! test/hotspot/gtest/aarch64/aarch64-asmtest.py ! test/hotspot/gtest/aarch64/asmtest.out.h ! test/hotspot/jtreg/compiler/vectorapi/TestIntrinsicBailOut.java ! test/hotspot/jtreg/compiler/vectorapi/TestVectorErgonomics.java ! test/hotspot/jtreg/compiler/vectorapi/VectorMemoryAlias.java ! test/hotspot/jtreg/compiler/vectorapi/VectorRebracket128Test.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX1.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX2.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512BW.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512DQ.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastNeon.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastSVE.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorReinterpret.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/tests/TestVectorDoubleExpandShrink.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/tests/TestVectorExpandShrink.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/utils/VectorReshapeHelper.java ! test/hotspot/jtreg/compiler/vectorization/TestPopCountVectorLong.java ! test/jdk/jdk/incubator/vector/AbstractVectorLoadStoreTest.java ! test/jdk/jdk/incubator/vector/Byte128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte128VectorTests.java ! test/jdk/jdk/incubator/vector/Byte256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte256VectorTests.java ! test/jdk/jdk/incubator/vector/Byte512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte512VectorTests.java ! test/jdk/jdk/incubator/vector/Byte64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte64VectorTests.java ! test/jdk/jdk/incubator/vector/ByteMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/ByteMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Double128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double128VectorTests.java ! test/jdk/jdk/incubator/vector/Double256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double256VectorTests.java ! test/jdk/jdk/incubator/vector/Double512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double512VectorTests.java ! test/jdk/jdk/incubator/vector/Double64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double64VectorTests.java ! test/jdk/jdk/incubator/vector/DoubleMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/DoubleMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Float128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float128VectorTests.java ! test/jdk/jdk/incubator/vector/Float256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float256VectorTests.java ! test/jdk/jdk/incubator/vector/Float512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float512VectorTests.java ! test/jdk/jdk/incubator/vector/Float64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float64VectorTests.java ! test/jdk/jdk/incubator/vector/FloatMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/FloatMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Int128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int128VectorTests.java ! test/jdk/jdk/incubator/vector/Int256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int256VectorTests.java ! test/jdk/jdk/incubator/vector/Int512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int512VectorTests.java ! test/jdk/jdk/incubator/vector/Int64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int64VectorTests.java ! test/jdk/jdk/incubator/vector/IntMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/IntMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Long128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long128VectorTests.java ! test/jdk/jdk/incubator/vector/Long256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long256VectorTests.java ! test/jdk/jdk/incubator/vector/Long512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long512VectorTests.java ! test/jdk/jdk/incubator/vector/Long64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long64VectorTests.java ! test/jdk/jdk/incubator/vector/LongMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/LongMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Short128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short128VectorTests.java ! test/jdk/jdk/incubator/vector/Short256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short256VectorTests.java ! test/jdk/jdk/incubator/vector/Short512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short512VectorTests.java ! test/jdk/jdk/incubator/vector/Short64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short64VectorTests.java ! test/jdk/jdk/incubator/vector/ShortMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/ShortMaxVectorTests.java ! test/jdk/jdk/incubator/vector/VectorReshapeTests.java ! test/jdk/jdk/incubator/vector/gen-template.sh ! test/jdk/jdk/incubator/vector/gen-tests.sh ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-Broadcast-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-BoolReduction-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-BoolReduction-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Broadcast.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare-Broadcast.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare-Masked.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare.template + test/jdk/jdk/incubator/vector/templates/Unit-CompressExpand.template ! test/jdk/jdk/incubator/vector/templates/Unit-Get-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Miscellaneous.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Masked-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-Masked-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Shift-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Shift-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Single-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-Masked-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Broadcast-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Broadcast-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Double-Broadcast-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Double-Broadcast-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Test.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unary-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-Masked-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Zero.template ! test/jdk/jdk/incubator/vector/templates/Unit-footer.template ! test/jdk/jdk/incubator/vector/templates/Unit-header.template ! test/jdk/jdk/incubator/vector/templates/X-LoadStoreTest.java.template ! test/lib-test/jdk/test/whitebox/CPUInfoTest.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/BlackScholes.java + test/micro/org/openjdk/bench/jdk/incubator/vector/MaskCastOperationsBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/MaskQueryOperationsBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/MaskedLogicOpts.java + test/micro/org/openjdk/bench/jdk/incubator/vector/MemorySegmentVectorAccess.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/RotateBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreBytes.java - test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreShort.java + test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreShorts.java Changeset: d5b6c7bd Author: Xue-Lei Andrew Fan Date: 2022-05-31 17:44:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d5b6c7bde1ae1ddcc9ad31b99480b67a913ff20a 8287384: Speed up jdk.test.lib.util.ForceGC Reviewed-by: rriggs, bchristi, dfuchs, mchung ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 37a51300 Author: liach Committer: Roger Riggs Date: 2022-05-31 18:29:07 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/37a513003c654297d81fc71b64c604f0ab8075cb 8287064: Modernize ProxyGenerator.PrimitiveTypeInfo Reviewed-by: rriggs, mchung ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java Changeset: e0382c55 Author: liach Committer: Roger Riggs Date: 2022-05-31 18:30:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e0382c552348d108e906792ad8ca7067f9f805ec 8285401: Proxy class initializer should use 3-arg `Class.forName` to avoid unnecessary class initialization Reviewed-by: rriggs, mchung ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java + test/jdk/java/lang/reflect/Proxy/LazyInitializationTest.java Changeset: 8df5f105 Author: Srinivas Mandalika Committer: Phil Race Date: 2022-05-31 19:37:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8df5f1058fb7244b65fa67bff8fd5a5282d70594 8282857: Create a regression test for JDK-4702690 Reviewed-by: kizune, serb + test/jdk/javax/accessibility/JScrollPaneAccessibleRelationsTest.java Changeset: cfdbde11 Author: Srinivas Mandalika Committer: Phil Race Date: 2022-05-31 19:38:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cfdbde11f0bc2b61590eec2aaa9906f13c64e19e 8282778: Create a regression test for JDK-4699544 Reviewed-by: kizune, serb + test/jdk/javax/accessibility/JRootPaneAccessiblAtTest.java Changeset: 8db5247e Author: lawrence.andrews Committer: Phil Race Date: 2022-05-31 19:39:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8db5247ebc827bf4a428c2d46ebdda778be57860 8282771: Create test case for JDK-8262981 Reviewed-by: kizune + test/jdk/javax/accessibility/JSlider/AccessibleAction/JSliderAccessibleAction.java Changeset: 97bd4c25 Author: Phil Race Date: 2022-05-31 20:14:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/97bd4c255a319ce626a316ed211ef1fd7d0f1e14 8286159: Memory leak in getAllConfigs of awt_GraphicsEnv.c:585 Reviewed-by: psadhukhan, aivanov ! src/java.desktop/unix/native/libawt_xawt/awt/awt_GraphicsEnv.c Changeset: f5bbade9 Author: Andrey Turbanov Date: 2022-05-31 21:07:33 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f5bbade9e40ed99d53d50c828d672b4eaab35018 8287544: Replace uses of StringBuffer with StringBuilder in java.naming Reviewed-by: rriggs, aefimov, vtewari ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapName.java ! src/java.naming/share/classes/javax/naming/NameImpl.java Changeset: 8fc201e5 Author: Jonathan Gibbons Date: 2022-05-31 22:59:59 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8fc201e5bb7cb909a8bf496a751793b91b73631b 8285939: javadoc java.lang.Record should not have "Direct Known Subclasses:" section Reviewed-by: prappo, hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassUseMapper.java ! test/langtools/jdk/javadoc/doclet/testRecordTypes/TestRecordTypes.java Changeset: 3deb58a8 Author: Jaikiran Pai Date: 2022-06-01 03:55:55 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3deb58a89a79fd562fe0736e753e6a677234c8c7 8287318: ConcurrentModificationException in sun.net.httpserver.ServerImpl$Dispatcher Reviewed-by: dfuchs ! src/jdk.httpserver/share/classes/sun/net/httpserver/ServerImpl.java Changeset: 71599763 Author: Aleksey Shipilev Date: 2022-06-01 06:02:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/71599763359055c81afbe5e04d6034b7bb3f3606 8287520: Shrink x86_32 problemlists after JDK-8287437 Reviewed-by: alanb ! test/hotspot/jtreg/ProblemList.txt ! test/jdk/ProblemList.txt ! test/langtools/ProblemList.txt Changeset: 78469713 Author: Adam Sotona Date: 2022-06-01 06:13:29 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/784697138182f104c30f8365b01f67be4d28083c 8236569: -Xss not multiple of 4K does not work for the main thread on macOS Reviewed-by: dholmes, stuefe ! src/java.base/macosx/native/libjli/java_md_macosx.m ! src/java.base/share/classes/sun/launcher/resources/launcher.properties ! src/java.base/share/man/java.1 ! src/java.base/unix/native/libjli/java_md.c Changeset: e0e15def Author: Magnus Ihse Bursie Date: 2022-06-01 09:03:24 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e0e15def24c4c93c863ff459788bea23ef99d790 8287366: Improve test failure reporting in GHA Reviewed-by: clanger ! .github/workflows/submit.yml Changeset: 0ef3d855 Author: Feilong Jiang Committer: Fei Yang Date: 2022-06-01 09:29:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0ef3d8551d85c9004087464d656074dac753acfd 8287552: riscv: Fix comment typo in li64 Co-authored-by: Dingli Zhang Reviewed-by: fyang ! src/hotspot/cpu/riscv/assembler_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp Changeset: 48f19e43 Author: Alexey Ushakov Date: 2022-06-01 09:48:15 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/48f19e43c5ceeed6b8f714fc921566f9260c78db 8287453: RenderPerfTest incorrectly measures performance Reviewed-by: prr ! test/jdk/performance/client/RenderPerfTest/Makefile ! test/jdk/performance/client/RenderPerfTest/build.xml - test/jdk/performance/client/RenderPerfTest/src/renderperf/RenderPerfLCDTest.java ! test/jdk/performance/client/RenderPerfTest/src/renderperf/RenderPerfTest.java Changeset: 168b226b Author: Sergey Tsypanov Committer: Roger Riggs Date: 2022-06-01 13:31:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/168b226b0f7a3b067bf11616e5a92908f63be450 8282662: Use List.of() factory method to reduce memory consumption Reviewed-by: redestad, rriggs ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/nio/file/FileTreeIterator.java ! src/java.base/share/classes/sun/security/validator/EndEntityChecker.java ! src/java.base/unix/classes/sun/nio/fs/UnixFileSystem.java Changeset: b2b4ee21 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-01 14:10:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b2b4ee212f06c606fc51e03ff33642035f4a4328 8287233: Crash in Continuation.enterSpecial: stop: tried to execute native method as non-native Reviewed-by: dholmes, pchilanomate ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/oops/method.cpp Changeset: f8eb7a89 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-01 14:11:55 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f8eb7a892f2fe78671d2211e35369c7ff2ed24fa 8287512: continuationEntry.hpp has incomplete definitions Reviewed-by: coleenp, pchilanomate ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/share/runtime/continuationEntry.cpp ! src/hotspot/share/runtime/continuationEntry.hpp ! src/hotspot/share/runtime/continuationEntry.inline.hpp Changeset: e3791ecf Author: Yasumasa Suenaga Date: 2022-06-01 14:41:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e3791ecfe42ccb34548dd23d159087a86b669a46 8287491: compiler/jvmci/errors/TestInvalidDebugInfo.java fails new assert: assert((uint)t < T_CONFLICT + 1) failed: invalid type # Reviewed-by: kvn, dnsimon ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidDebugInfo.java Changeset: 774928f9 Author: Aleksey Shipilev Date: 2022-06-01 14:57:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/774928f9447e961ec26a76e03dbf2143ffdcc05d 8287625: ProblemList jdk/jshell/HighlightUITest.java on all platforms Reviewed-by: jlahoda ! test/langtools/ProblemList.txt Changeset: 8071b231 Author: Brian Burkhalter Date: 2022-06-01 15:15:53 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8071b2311caaacd714d74f12aee6cb7c2fe700fa 8287237: (fs) Files.probeContentType returns null if filename contains hash mark on Linux Reviewed-by: rriggs, jpai, vtewari ! src/java.base/share/classes/sun/net/www/MimeTable.java ! test/jdk/java/nio/file/Files/probeContentType/Basic.java Changeset: 67ecd303 Author: Ioi Lam Date: 2022-06-01 15:51:47 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/67ecd30327086c5d7628c4156f8d9dcccb0f4d09 8287398: Allow concurrent execution of hotspot docker tests Reviewed-by: shade, mseledtsov, sgehwolf - test/hotspot/jtreg/containers/docker/TEST.properties ! test/lib/jdk/test/lib/containers/docker/Common.java Changeset: 239ac2a5 Author: Zhengyu Gu Date: 2022-06-01 17:01:22 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/239ac2a5d4c9a13e10e8c75324cd51f5f825337d 8286829: Shenandoah: fix Shenandoah Loom support Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSetNMethod.cpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.hpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahNMethod.cpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahSTWMark.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp Changeset: 27ad1d55 Author: Andrey Turbanov Date: 2022-06-01 18:14:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/27ad1d5549ebb65053ca2061e89d970ac3fe23a5 8287602: (fs) Avoid redundant HashMap.containsKey call in MimeTypesFileTypeDetector.putIfAbsent Reviewed-by: bpb, jpai, alanb ! src/java.base/unix/classes/sun/nio/fs/MimeTypesFileTypeDetector.java Changeset: 4caf1ef3 Author: Andrey Turbanov Date: 2022-06-01 18:15:59 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/4caf1ef389fd02bf53a9b7ed33d3b57fdaa79bd2 8287390: Cleanup Map usage in AuthenticationInfo.requestAuthentication Reviewed-by: dfuchs, jpai ! src/java.base/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java Changeset: cdb47688 Author: Dean Long Date: 2022-06-01 18:28:21 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cdb476888a65b8ee2538f08b4b1dbb245874a262 8287396: LIR_Opr::vreg_number() and data() can return negative number Reviewed-by: kvn, chagedorn ! src/hotspot/share/c1/c1_LIR.hpp Changeset: 2f191442 Author: Ana Marsh Committer: Vladimir Kozlov Date: 2022-06-01 20:19:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2f1914424936eebd2478ca9d3100f88abb2d199c 8282024: add EscapeAnalysis statistics under PrintOptoStatistics Reviewed-by: xliu, kvn ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/escape.hpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp Changeset: 72bcf2aa Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-01 21:53:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/72bcf2aa03d53b0f68eb07a902575b4e8628d859 4511638: Double.toString(double) sometimes produces incorrect results Reviewed-by: aturbanov, darcy, bpb ! src/java.base/share/classes/java/lang/AbstractStringBuilder.java ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java + src/java.base/share/classes/jdk/internal/math/DoubleToDecimal.java + src/java.base/share/classes/jdk/internal/math/FloatToDecimal.java + src/java.base/share/classes/jdk/internal/math/MathUtils.java ! test/hotspot/jtreg/vmTestbase/jit/FloatingPoint/FPCompare/TestFPBinop/TestFPBinop.gold ! test/hotspot/jtreg/vmTestbase/jit/t/t047/t047.gold ! test/jdk/java/lang/String/concat/ImplicitStringConcatBoundaries.java + test/jdk/jdk/internal/math/ToDecimal/DoubleToDecimalTest.java + test/jdk/jdk/internal/math/ToDecimal/FloatToDecimalTest.java + test/jdk/jdk/internal/math/ToDecimal/MathUtilsTest.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/BasicChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/DoubleToDecimalChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/FloatToDecimalChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/MathUtilsChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/ToDecimalChecker.java ! test/langtools/tools/javac/sym/ElementStructureTest.java Changeset: 6030c0e4 Author: liach Committer: Jonathan Gibbons Date: 2022-06-01 23:05:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6030c0e4033655e7ce282f43c2216b4e29411c22 8287118: Use monospace font for annotation default values Reviewed-by: hannesw, jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeMemberWriterImpl.java ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Changeset: 07d24509 Author: Prasanta Sadhukhan Date: 2022-06-02 03:39:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/07d24509a68cc06f062b8249f207bc0d2148c79b 8213531: Test javax/swing/border/TestTitledBorderLeak.java fails Reviewed-by: prr ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/border/TestTitledBorderLeak.java Changeset: d7341ae4 Author: Prasanta Sadhukhan Date: 2022-06-02 03:40:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d7341ae42e11fd08508c5f9c67c09c44b62da59b 8286846: test/jdk/javax/swing/plaf/aqua/CustomComboBoxFocusTest.java fails on mac aarch64 Reviewed-by: tr, prr, honkar ! test/jdk/javax/swing/plaf/aqua/CustomComboBoxFocusTest.java Changeset: a82417fa Author: Adam Sotona Date: 2022-06-02 06:20:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a82417fa190a132313f6734a75f1998858c164fd 8233269: Improve handling of JAVA_ARGS Reviewed-by: erikj ! make/common/modules/LauncherCommon.gmk Changeset: 199832a7 Author: Emanuel Peter Date: 2022-06-02 06:49:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/199832a7101ca9dbfe7744ca0a1c4ff11d8832f2 8283466: C2: missing skeleton predicates in peeled loop Reviewed-by: roland, chagedorn ! src/hotspot/share/opto/loopPredicate.cpp ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/loopnode.hpp + test/hotspot/jtreg/compiler/loopopts/TestPeelingSkeletonPredicateInitialization.java Changeset: 6ff2d89e Author: Alan Bateman Date: 2022-06-02 09:02:37 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6ff2d89ea11934bb13c8a419e7bad4fd40f76759 8287496: Alternative virtual thread implementation that maps to OS thread Reviewed-by: rehn, mchung ! make/data/hotspot-symbols/symbols-unix ! src/hotspot/cpu/aarch64/globals_aarch64.hpp ! src/hotspot/cpu/arm/globals_arm.hpp ! src/hotspot/cpu/ppc/globals_ppc.hpp ! src/hotspot/cpu/riscv/globals_riscv.hpp ! src/hotspot/cpu/s390/globals_s390.hpp ! src/hotspot/cpu/x86/globals_x86.hpp ! src/hotspot/cpu/zero/globals_zero.hpp ! src/hotspot/share/classfile/vmClassMacros.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/include/jvm.h ! src/hotspot/share/interpreter/abstractInterpreter.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/services/threadService.cpp ! src/hotspot/share/services/threadService.hpp + src/java.base/share/classes/java/lang/BaseVirtualThread.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/Thread.java ! src/java.base/share/classes/java/lang/ThreadBuilders.java ! src/java.base/share/classes/java/lang/VirtualThread.java ! src/java.base/share/classes/jdk/internal/vm/Continuation.java + src/java.base/share/classes/jdk/internal/vm/ContinuationSupport.java + src/java.base/share/native/libjava/ContinuationSupport.c ! src/java.base/share/native/libjava/PreviewFeatures.c ! src/java.management/share/classes/java/lang/management/ThreadInfo.java ! src/java.management/share/classes/sun/management/ThreadImpl.java ! src/java.management/share/classes/sun/management/Util.java ! test/hotspot/jtreg/TEST.ROOT ! test/hotspot/jtreg/runtime/cds/appcds/redefineClass/RedefineRunningMethods_Shared.java ! test/hotspot/jtreg/runtime/vthread/JNIMonitor/JNIMonitor.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetFrameCount/framecnt01/framecnt01.java ! test/jdk/TEST.ROOT ! test/jdk/com/sun/jdi/JdbOptions.java ! test/jdk/java/lang/Thread/virtual/CustomScheduler.java ! test/jdk/java/lang/Thread/virtual/GetStackTraceWhenRunnable.java ! test/jdk/java/lang/Thread/virtual/HoldsLock.java ! test/jdk/java/lang/Thread/virtual/JfrEvents.java ! test/jdk/java/lang/Thread/virtual/ParkWithFixedThreadPool.java ! test/jdk/java/lang/Thread/virtual/Reflection.java ! test/jdk/java/lang/Thread/virtual/StackTraces.java ! test/jdk/java/lang/Thread/virtual/ThreadAPI.java ! test/jdk/java/lang/Thread/virtual/ThreadBuilders.java ! test/jdk/java/lang/Thread/virtual/TracePinnedThreads.java ! test/jdk/java/lang/Thread/virtual/stress/GetStackTraceALot.java ! test/jdk/java/lang/Thread/virtual/stress/Skynet.java ! test/jdk/java/lang/Thread/virtual/stress/SleepALot.java ! test/jdk/java/lang/Thread/virtual/stress/TimedGet.java ! test/jdk/java/lang/instrument/ParallelTransformerLoaderTest.java ! test/jdk/java/lang/management/ThreadMXBean/VirtualThreadDeadlocks.java ! test/jdk/java/lang/management/ThreadMXBean/VirtualThreads.java ! test/jdk/java/net/vthread/BlockingSocketOps.java ! test/jdk/java/nio/channels/vthread/BlockingChannelOps.java ! test/jdk/jdk/internal/vm/Continuation/Basic.java ! test/jdk/jdk/internal/vm/Continuation/ClassUnloading.java ! test/jdk/jdk/internal/vm/Continuation/Fuzz.java ! test/jdk/jdk/internal/vm/Continuation/HumongousStack.java ! test/jdk/jdk/internal/vm/Continuation/LiveFramesDriver.java ! test/jdk/jdk/internal/vm/Continuation/Scoped.java ! test/jdk/jdk/jfr/event/runtime/TestThreadEndEvent.java ! test/jdk/jdk/jfr/event/runtime/TestThreadSleepEvent.java ! test/jdk/jdk/jfr/event/runtime/TestThreadStartEvent.java ! test/jdk/jdk/jfr/event/runtime/TestVirtualThreadEndEvent.java ! test/jdk/jdk/jfr/event/runtime/TestVirtualThreadStartEvent.java ! test/jdk/jdk/jfr/jvm/TestThreadExclusion.java ! test/jdk/jdk/jfr/jvm/TestVirtualThreadExclusion.java ! test/jdk/jdk/jfr/threading/TestDeepVirtualStackTrace.java ! test/jdk/jdk/jfr/threading/TestManyVirtualThreads.java ! test/jdk/jdk/jfr/threading/TestNestedVirtualThreads.java ! test/jtreg-ext/requires/VMProps.java Changeset: bddef715 Author: Magnus Ihse Bursie Date: 2022-06-02 12:49:35 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/bddef7151849a213926ffdd86a7e228db66606b1 8287724: Fix various issues with msys2 Reviewed-by: erikj ! make/autoconf/boot-jdk.m4 ! make/autoconf/platform.m4 ! make/scripts/fixpath.sh Changeset: 5acac223 Author: Patricio Chilano Mateo Date: 2022-06-02 13:32:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/5acac2238fdc4ffe6ef290456e01cc559d811557 8286830: ~HandshakeState should not touch oops Reviewed-by: dholmes, rehn ! src/hotspot/share/runtime/handshake.cpp ! src/hotspot/share/runtime/handshake.hpp ! src/hotspot/share/runtime/thread.cpp ! test/hotspot/jtreg/runtime/Thread/StopAtExit.java ! test/hotspot/jtreg/runtime/Thread/SuspendAtExit.java Changeset: c78392db Author: Jonathan Gibbons Date: 2022-06-02 15:12:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c78392db4dd7c31db9eea608a335f6d9239c6a55 8287606: standardize spelling of subtype and supertype etc in comments Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/Reporter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Navigation.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseOptions.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ElementsTable.java Changeset: 3cfd38ca Author: Aleksey Shipilev Date: 2022-06-02 15:58:08 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3cfd38caf10c18f71c0fc8c9a09c0d1179373ce7 8287726: Fix JVMTI tests with "requires vm.continuations" after JDK-8287496 Reviewed-by: alanb, rehn, lmesnik ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/serviceability/jvmti/GetOwnedMonitorInfo/GetOwnedMonitorInfoTest.java ! test/hotspot/jtreg/serviceability/jvmti/GetOwnedMonitorStackDepthInfo/GetOwnedMonitorStackDepthInfoTest.java ! test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorVMEventsTest.java ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineRunningMethods.java ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineRunningMethodsWithBacktrace.java ! test/hotspot/jtreg/serviceability/jvmti/events/Breakpoint/breakpoint01/breakpoint01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ClassLoad/classload01/classload01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ClassPrepare/classprep01/classprep01.java ! test/hotspot/jtreg/serviceability/jvmti/events/Exception/exception01/exception01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ExceptionCatch/excatch01/excatch01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc01/fieldacc01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc02/fieldacc02.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc03/fieldacc03.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc04/fieldacc04.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldModification/fieldmod01/fieldmod01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldModification/fieldmod02/fieldmod02.java ! test/hotspot/jtreg/serviceability/jvmti/events/FramePop/framepop01/framepop01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FramePop/framepop02/framepop02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodEntry/mentry01/mentry01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodEntry/mentry02/mentry02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodExit/mexit01/mexit01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodExit/mexit02/mexit02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorContendedEnter/mcontenter01/mcontenter01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorContendedEntered/mcontentered01/mcontentered01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorWait/monitorwait01/monitorwait01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorWaited/monitorwaited01/monitorwaited01.java ! test/hotspot/jtreg/serviceability/jvmti/events/SingleStep/singlestep01/singlestep01.java ! test/hotspot/jtreg/serviceability/jvmti/events/SingleStep/singlestep03/singlestep03.java ! test/hotspot/jtreg/serviceability/jvmti/stress/StackTrace/NotSuspended/GetStackTraceNotSuspendedStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/stress/StackTrace/Suspended/GetStackTraceSuspendedStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/stress/ThreadLocalStorage/SetGetThreadLocalStorageStressTest/SetGetThreadLocalStorageStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetAllThreads/allthr01/allthr01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetCurrentContendedMonitor/contmon01/contmon01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetCurrentContendedMonitor/contmon02/contmon02.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetFrameCount/framecnt01/framecnt01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/GetStackTraceCurrentThreadTest/GetStackTraceCurrentThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr03/getstacktr03.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr04/getstacktr04.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr05/getstacktr05.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr06/getstacktr06.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr07/getstacktr07.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr08/getstacktr08.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadInfo/thrinfo01/thrinfo01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat01/thrstat01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat03/thrstat03.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat05/thrstat05.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/BreakpointInYieldTest/BreakpointInYieldTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContFramePopTest/ContFramePopTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContYieldBreakPointTest/ContYieldBreakPointTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContinuationTest/ContinuationTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/GetSetLocalTest/GetSetLocalTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/InterruptThreadTest/InterruptThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/MethodExitTest/MethodExitTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/NullAsCurrentThreadTest/NullAsCurrentThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/PinnedTaskTest/PinnedTaskTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/RawMonitorTest/RawMonitorTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/RedefineClasses/RedefineRunningMethods.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SelfSuspendDisablerTest/SelfSuspendDisablerTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResume1/SuspendResume1.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResume2/SuspendResume2.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResumeAll/SuspendResumeAll.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadMonitorTest/VThreadMonitorTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadNotifyFramePopTest/VThreadNotifyFramePopTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadTest/VThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadUnsupportedTest/VThreadUnsupportedTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/WaitNotifySuspendedVThreadTest/WaitNotifySuspendedVThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/premain/AgentWithVThreadTest.java Changeset: e51ca1de Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-02 16:45:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e51ca1dee33d69c74f7f1dc2292db2f04c4ccf4c 8287171: Refactor null caller tests to a single directory Reviewed-by: ihse, mchung ! make/test/JtregNativeJdk.gmk ! test/jdk/TEST.groups - test/jdk/java/lang/ClassLoader/exeNullCallerClassLoaderTest/NullCallerClassLoaderTest.java - test/jdk/java/lang/ClassLoader/exeNullCallerClassLoaderTest/exeNullCallerClassLoaderTest.c - test/jdk/java/lang/invoke/MethodHandles/exeNullCallerLookup/NullCallerLookupTest.java - test/jdk/java/lang/invoke/MethodHandles/exeNullCallerLookup/exeNullCallerLookupTest.c - test/jdk/java/lang/module/exeNullCallerGetResource/NullCallerGetResource.java - test/jdk/java/lang/module/exeNullCallerGetResource/exeNullCallerGetResource.c - test/jdk/java/util/ResourceBundle/exeNullCallerResourceBundle/NullCallerResourceBundle.java - test/jdk/java/util/ResourceBundle/exeNullCallerResourceBundle/exeNullCallerResourceBundle.c + test/jdk/jni/nullCaller/CallHelper.hpp + test/jdk/jni/nullCaller/NullCallerTest.java + test/jdk/jni/nullCaller/exeNullCallerTest.cpp = test/jdk/jni/nullCaller/src/n/closed/ClosedResources.java + test/jdk/jni/nullCaller/src/n/closed/test.txt = test/jdk/jni/nullCaller/src/n/module-info.java + test/jdk/jni/nullCaller/src/n/open/NullCallerResource.properties = test/jdk/jni/nullCaller/src/n/open/OpenResources.java + test/jdk/jni/nullCaller/src/n/open/test.txt Changeset: 1fcbaa41 Author: Thomas Schatzl Date: 2022-06-02 17:16:24 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1fcbaa411628c46ca6980942b6f6a5ef7062e16f 8278598: AlignmentReserve is repeatedly reinitialized Reviewed-by: ayang, iwalulya ! src/hotspot/share/gc/shared/collectedHeap.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/plab.cpp ! src/hotspot/share/gc/shared/plab.hpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.cpp Changeset: 49e24f0c Author: Andrew Haley Date: 2022-06-02 17:31:32 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/49e24f0cd833b77006540e871aa7d427628c058f 8287567: AArch64: Implement post-call NOPs Reviewed-by: adinn, rbackman, dlong ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp ! src/hotspot/cpu/aarch64/nativeInst_aarch64.hpp ! src/hotspot/share/code/codeCache.inline.hpp Changeset: 13596cdf Author: Brian Burkhalter Date: 2022-06-02 17:36:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/13596cdf695e67819aadcc08c6d9f05b1eb18442 8287097: (fs) Files::copy requires an undocumented permission when copying from the default file system to a non-default file system Reviewed-by: chegar, alanb ! src/java.base/share/classes/java/nio/file/CopyMoveHelper.java + test/jdk/java/nio/file/Files/CopyToNonDefaultFS.java + test/jdk/java/nio/file/Files/copy.policy Changeset: 7f44f572 Author: vamsi-parasa Committer: Jatin Bhateja Date: 2022-06-02 17:42:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/7f44f572ea451a1f38b446a6ef64ffb27e3eb3fe 8285868: x86 intrinsics for floating point method isInfinite Reviewed-by: kvn, jbhateja ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/intrinsicnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java + test/hotspot/jtreg/compiler/intrinsics/TestDoubleClassCheck.java + test/hotspot/jtreg/compiler/intrinsics/TestFloatClassCheck.java + test/micro/org/openjdk/bench/java/lang/DoubleClassCheck.java + test/micro/org/openjdk/bench/java/lang/FloatClassCheck.java Changeset: ccec5d1e Author: Man Cao Date: 2022-06-02 18:12:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ccec5d1e8529c8211cc678d8acc8d37fe461cb51 8287704: Small logging clarification about shrunk bytes after heap shrinkage Co-authored-by: Jonathan Joo Reviewed-by: tschatzl ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp Changeset: 26d24263 Author: Naoto Sato Date: 2022-06-02 18:35:20 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/26d24263c7db6d8f722afefc975b03cb575fa6ee 8287340: Refactor old code using StringTokenizer in locale related code Reviewed-by: iris, joehw ! src/java.base/share/classes/sun/util/cldr/CLDRLocaleProviderAdapter.java ! src/java.base/share/classes/sun/util/locale/provider/JRELocaleProviderAdapter.java ! src/java.base/share/classes/sun/util/locale/provider/LocaleProviderAdapter.java ! test/jdk/sun/util/locale/provider/Bug8038436.java Changeset: 37e1835b Author: Mandy Chung Date: 2022-06-02 19:13:16 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/37e1835be76f5f141ba0dc067578bfe767ca94ed 8287746: ProblemList jni/nullCaller/NullCallerTest.java Reviewed-by: alanb, dcubed ! test/jdk/ProblemList.txt Changeset: 26048ea2 Author: Andrey Turbanov Date: 2022-06-02 19:28:20 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/26048ea21e0da6505d8452bd33a4d37b1bd5ce74 8287695: Use String.contains() instead of String.indexOf() in jdk.hotspot.agent Reviewed-by: cjplummer ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/CommandProcessor.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/StreamMonitor.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/SystemDictionaryHelper.java Changeset: b5a646ee Author: Xiaolin Zheng Committer: Vladimir Kozlov Date: 2022-06-02 20:31:26 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b5a646ee6cfd432cef6b7e69a177959227a38ace 8287425: Remove unnecessary register push for MacroAssembler::check_klass_subtype_slow_path Co-authored-by: Wei Kuai Reviewed-by: kvn ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp Changeset: 409157d2 Author: Alexander Matveev Date: 2022-06-02 21:44:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/409157d2af0e124756bf8c0d996ba8658a9714b7 8287125: [macos] Multiple jpackage tests fail/timeout on same host Reviewed-by: asemenyuk ! test/jdk/tools/jpackage/share/ArgumentsTest.java ! test/jdk/tools/jpackage/share/MultiNameTwoPhaseTest.java ! test/jdk/tools/jpackage/share/jdk/jpackage/tests/MainClassTest.java Changeset: 2776ff3b Author: Phil Race Date: 2022-06-02 22:44:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2776ff3b038e53703138e5ff09d5b666cbe26ba9 8276266: Clean up incorrect client-libs ProblemList.txt entries Reviewed-by: serb, kizune ! test/jdk/ProblemList.txt Changeset: cbaeb00f Author: Alexey Ushakov Date: 2022-06-02 23:51:01 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cbaeb00fcea7fb8942838610c2d68e27d290fb58 8287600: AA Ovals not rendered under metal Reviewed-by: aghaisas, prr ! src/java.desktop/macosx/native/libawt_lwawt/java2d/metal/MTLRenderQueue.m Changeset: deb06539 Author: Jonathan Gibbons Date: 2022-06-02 23:53:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/deb06539b00e5fd5c29795277b2f90da0c9ff5d5 8287337: SnippetUtils should throw exceptions if snippets not found Reviewed-by: hannesw ! test/langtools/jdk/javadoc/doclet/testDocletExample/TestDocletExample.java ! test/langtools/tools/lib/snippets/SnippetUtils.java Changeset: ba9ee8cb Author: Maurizio Cimadamore Date: 2022-06-03 00:17:45 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ba9ee8cb286268f1d6a2820508334aaaf3131e15 8287748: Fix issues in java.lang.foreign package javadoc Reviewed-by: jvernee ! src/java.base/share/classes/java/lang/foreign/package-info.java Changeset: b544b8b7 Author: Ioi Lam Date: 2022-06-03 05:59:32 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b544b8b7d43907e93263db31ba3cc6d5951bcaee 8276789: Support C++ lambda in ResourceHashtable::iterate Reviewed-by: stefank, coleenp ! src/hotspot/share/cds/dumpTimeClassInfo.cpp ! src/hotspot/share/cds/dumpTimeClassInfo.hpp ! src/hotspot/share/cds/dumpTimeClassInfo.inline.hpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/utilities/resourceHash.hpp Changeset: 625821da Author: Aleksey Shipilev Date: 2022-06-03 07:24:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/625821dae7589b510de00ffd506a592ddb606318 8287661: Fix and improve BitMap::print_on(outputStream*) Reviewed-by: stefank ! src/hotspot/share/utilities/bitMap.cpp ! test/hotspot/gtest/utilities/test_bitMap.cpp Changeset: 407abf5d Author: Tejesh R Committer: Prasanta Sadhukhan Date: 2022-06-03 07:46:17 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/407abf5d65af918e6d9bfed1f4cc7d4cfd74ce24 8233477: [Win LAF]The tooltip doesn't display correctly in Win LAF Reviewed-by: psadhukhan, prr, honkar + test/jdk/javax/swing/JToolTip/bug5047379.java Changeset: c5379d9a Author: duke Date: 2022-06-03 11:01:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c5379d9a5ae99e9945ee0cee6409d3613bde1240 Automatic merge of jdk:master into master Changeset: 3d11035d Author: duke Date: 2022-06-03 11:01:28 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3d11035dc8520eb45cd0a11829ee41e0c833c597 Automatic merge of master into foreign-memaccess+abi From duke at openjdk.java.net Fri Jun 3 11:14:16 2022 From: duke at openjdk.java.net (duke) Date: Fri, 3 Jun 2022 11:14:16 GMT Subject: git: openjdk/panama-foreign: master: 93 new changesets Message-ID: <6a70fbdd-24e2-4733-8df4-1d8ba3422f38@openjdk.org> Changeset: 777f813e Author: Hannes Walln?fer Date: 2022-05-27 11:09:26 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/777f813e9b2688034d77523b4142dd67e1d9f38b 8268422: Find a better way to select releases in "New API" page Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllClassesIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SummaryListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Table.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TableHeader.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlAttr.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/script.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/checkStylesheetClasses/CheckStylesheetClasses.java ! test/langtools/jdk/javadoc/doclet/testModules/TestModules.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java ! test/langtools/jdk/javadoc/lib/javadoc/tester/JavadocTester.java ! test/langtools/jdk/javadoc/testJavadocTester/TestJavadocTester.java Changeset: be933185 Author: Claes Redestad Date: 2022-05-27 12:10:40 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/be93318576896e8f5f9733ae1f7e3e74d63f5594 8287292: Improve TransformKey to pack more kinds of transforms efficiently Reviewed-by: jlaskey, jvernee, mchung ! src/java.base/share/classes/java/lang/invoke/LambdaForm.java ! src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java Changeset: f2bc4476 Author: Zhengyu Gu Date: 2022-05-27 12:16:04 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f2bc4476593938094263f0d85fc9bdd369e95237 8271406: Kitchensink failed with "assert(early->flag() == current->flag()) failed: Should be the same" Reviewed-by: coleenp, dholmes, stuefe ! src/hotspot/share/services/memReporter.cpp Changeset: 63eb0b7e Author: Erik Gahlin Date: 2022-05-27 13:00:02 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/63eb0b7e8606dd9cd145e92eeeb744ff5b7be569 8282947: JFR: Dump on shutdown live-locks in some conditions Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/ChunksChannel.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecording.java + test/jdk/jdk/jfr/api/recording/dump/TestDumpDevNull.java Changeset: 6520843f Author: Brian Burkhalter Date: 2022-05-27 15:23:01 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6520843f86f638fe4d1e5b3358fab5799daca654 8287003: InputStreamReader::read() can return zero despite writing a char in the buffer Reviewed-by: jpai, rriggs ! src/java.base/share/classes/sun/nio/cs/StreamDecoder.java ! test/jdk/java/io/InputStreamReader/ReadCharBuffer.java Changeset: 0df47482 Author: Erik Gahlin Date: 2022-05-27 21:02:53 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0df4748216ab71937cfcfb86a2d66f3568bced1e 8287463: JFR: Disable TestDevNull.java on Windows Reviewed-by: mgronlun ! test/jdk/jdk/jfr/api/recording/dump/TestDumpDevNull.java Changeset: d3e781de Author: Vladimir Ivanov Date: 2022-05-27 21:23:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d3e781de086d557a88105da965ff8a7f9126019c 8287223: C1: Inlining attempt through MH::invokeBasic() with null receiver Reviewed-by: kvn ! src/hotspot/share/c1/c1_GraphBuilder.cpp ! src/hotspot/share/opto/callGenerator.cpp + test/hotspot/jtreg/compiler/jsr292/NullConstantMHReceiver.java Changeset: ed8e8ac2 Author: Joe Wang Date: 2022-05-27 21:47:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ed8e8ac2892af3a0a70b95330e01ec976d3fea3c 8284400: Improve XPath exception handling Reviewed-by: lancea, naoto ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPath.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java ! test/jaxp/javax/xml/jaxp/unittest/xpath/XPathExceptionTest.java Changeset: 410a25d5 Author: Yasumasa Suenaga Date: 2022-05-28 02:09:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/410a25d59a11b6a627bbb0a2c405c2c2be19f464 8286562: GCC 12 reports some compiler warnings Reviewed-by: ihse, kbarrett, prr ! make/modules/java.desktop/lib/Awt2dLibraries.gmk ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdBits.inline.hpp ! src/hotspot/share/oops/array.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/java.base/unix/native/libjli/java_md_common.c Changeset: 66340372 Author: Ichiroh Takiguchi Date: 2022-05-28 05:33:08 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/66340372d595aeb4b3dfd9169a8448f363097256 8287362: FieldAccessWatch testcase failed on AIX platform Reviewed-by: cjplummer, mdoerr ! test/hotspot/jtreg/compiler/jsr292/cr8026328/libTest8026328.c ! test/hotspot/jtreg/runtime/jni/FastGetField/libFastGetField.c ! test/hotspot/jtreg/serviceability/jvmti/FieldAccessWatch/libFieldAccessWatch.c ! test/hotspot/jtreg/serviceability/jvmti/GetClassMethods/libOverpassMethods.cpp Changeset: 2c461acf Author: David Holmes Date: 2022-05-28 06:12:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2c461acfebd28fe5ef62805cbb004f91a3b18f08 8287492: ProblemList compiler/jvmci/errors/TestInvalidDebugInfo.java Reviewed-by: mikael, kvn ! test/hotspot/jtreg/ProblemList.txt Changeset: a6e2e223 Author: Erik Gahlin Date: 2022-05-28 17:22:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a6e2e223ea0339117c89f46e074a92dc2f31dfd5 8285008: JFR: jdk/jfr/jmx/streaming/TestClose.java failed with "Exception: Expected repository to be empty" Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java ! test/jdk/jdk/jfr/jmx/streaming/TestClose.java Changeset: 36350bf1 Author: Erik Gahlin Date: 2022-05-29 13:56:33 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/36350bf1be1ae3c5b58cc7c7ca95acd9bfa26949 8287484: JFR: Seal RecordedObject Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordedObject.java Changeset: 3d2d0395 Author: Anthony Vanelverdinghe Committer: Jaikiran Pai Date: 2022-05-29 14:26:19 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3d2d039538b906cedd9188ed94b7ba55c275ff7f 8287440: Typo in package-info.java of java.util.random Reviewed-by: darcy, iris, jpai ! src/java.base/share/classes/java/util/random/package-info.java Changeset: 5848a60c Author: jeremy Committer: Laurent Bourg?s Date: 2022-05-30 06:06:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/5848a60c01747728cbdde1e9d8a244079fd88c14 8286093: java/awt/geom/Path2D/UnitTest.java failed with "RuntimeException: 2D bounds too small" Reviewed-by: prr ! src/java.desktop/share/classes/java/awt/geom/Path2D.java ! test/jdk/java/awt/geom/Path2D/UnitTest.java Changeset: 744b822a Author: Maxim Kartashev Committer: Ioi Lam Date: 2022-05-30 06:18:47 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/744b822ab194a0f7ef4e7a4053be32c6a0889efc 8287073: NPE from CgroupV2Subsystem.getInstance() Reviewed-by: vkempik, iklam ! src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java Changeset: a27ba1a3 Author: Yasumasa Suenaga Date: 2022-05-30 07:02:07 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a27ba1a3db5f0b4eb75b6cca94f33398e7b695cc 8287363: null pointer should use NULL instead of 0 Reviewed-by: kbarrett, stuefe, alanb ! src/java.base/unix/native/libjli/java_md_common.c Changeset: 447ae006 Author: Xiaolin Zheng Committer: Fei Yang Date: 2022-05-30 07:45:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/447ae006163b00cc46cac1c7ebe201de311bf1a1 8287418: riscv: Fix correctness issue of MacroAssembler::movptr Reviewed-by: fjiang, yadongwang, fyang ! src/hotspot/cpu/riscv/assembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetNMethod_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.hpp ! src/hotspot/cpu/riscv/nativeInst_riscv.cpp Changeset: 1b9987cb Author: Zhuojun Miao Committer: Christian Hagedorn Date: 2022-05-30 07:52:49 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1b9987cb08611a98e6351876aa7da4e56d4a5d2e 8287288: Fix some typos in C1 Reviewed-by: aph, dholmes, dlong, chagedorn ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp ! src/hotspot/share/c1/c1_LIR.hpp ! src/hotspot/share/c1/c1_LIRGenerator.cpp ! src/hotspot/share/c1/c1_LIRGenerator.hpp Changeset: 19fb8ab8 Author: Nick Gasson Date: 2022-05-30 08:09:28 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/19fb8ab8b9a3366850ed224c35f3cd163c0511e5 8287195: AArch64: Client VM build failure after JDK-8283689 Reviewed-by: jvernee, adinn ! src/hotspot/cpu/aarch64/foreignGlobals_aarch64.cpp Changeset: d8331737 Author: Nick Gasson Date: 2022-05-30 08:12:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d8331737ad09fb989c492bdfe3868a7ae66e32af 8286711: AArch64: serviceability agent tests fail with PAC enabled Reviewed-by: dholmes, cjplummer ! src/hotspot/cpu/aarch64/pauth_aarch64.hpp ! src/hotspot/cpu/aarch64/vmStructs_aarch64.hpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.hpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/aarch64/AARCH64Frame.java Changeset: eb8d067b Author: Martin Doerr Date: 2022-05-30 08:57:58 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/eb8d067b56287a201ca102299e6b756417e5cf1b 8287433: [PPC64] g1_write_barrier_pre needs extension for Loom Reviewed-by: rrich, stuefe ! src/hotspot/cpu/ppc/gc/g1/g1BarrierSetAssembler_ppc.cpp Changeset: b1b96746 Author: Martin Doerr Date: 2022-05-30 09:00:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b1b96746633487901cbc504ccd074cb856ed5327 8287437: Temporarily disable Continuations::enabled() for platforms which don't have an implementation, yet Reviewed-by: shade, alanb, rrich ! src/hotspot/share/runtime/continuation.cpp Changeset: 73ba7fdc Author: Thomas Schatzl Date: 2022-05-30 09:17:12 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/73ba7fdce838ba8a2c227a972c176311e6cc0b41 8287157: Clean up G1Policy::next_gc_should_be_mixed() Reviewed-by: lkorinth ! src/hotspot/share/gc/g1/g1Policy.cpp ! src/hotspot/share/gc/g1/g1Policy.hpp Changeset: f086d945 Author: Christoph Langer Date: 2022-05-30 14:59:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f086d945c31d3673e0a49017e3d4e99b189253fe 8287378: GHA: Update cygwin to fix issues in langtools tests on Windows Reviewed-by: aturbanov, shade ! .github/workflows/submit.yml Changeset: 1606d554 Author: Christoph Langer Date: 2022-05-30 15:01:17 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1606d5545b8daad840575b7cfd97b94fd8a3d41d 8286855: javac error on invalid jar should only print filename Reviewed-by: jpai, mdoerr ! src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java Changeset: 0c420e03 Author: Maurizio Cimadamore Date: 2022-05-30 15:40:06 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0c420e03ae24144a8146edb39f546841da33e381 8287430: MemorySessionImpl::addOrCleanupIfFail does not rethrow exceptions Reviewed-by: jvernee ! src/java.base/share/classes/jdk/internal/foreign/MemorySessionImpl.java Changeset: b2ba9fc9 Author: Johan Sj?l?n Committer: Stefan Karlsson Date: 2022-05-30 16:53:35 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b2ba9fc9f696fe3d452ad809d540f4618f5f215a 8286180: Enable construction of LogStreamImpl from LogMessageImpl Reviewed-by: dholmes, stefank ! src/hotspot/share/logging/logHandle.hpp ! src/hotspot/share/logging/logMessage.hpp ! src/hotspot/share/logging/logStream.cpp ! src/hotspot/share/logging/logStream.hpp ! src/hotspot/share/logging/logTagSet.hpp ! test/hotspot/gtest/logging/test_logStream.cpp Changeset: 8a9aeff1 Author: Andrey Turbanov Date: 2022-05-31 06:59:03 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8a9aeff18cd7b26f62934e5892fc87d25f249595 8287497: Use String.contains() instead of String.indexOf() in java.naming Reviewed-by: aefimov, rriggs, jpai ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapAttribute.java ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapClient.java ! src/java.naming/share/classes/com/sun/jndi/ldap/ext/StartTlsResponseImpl.java ! src/java.naming/share/classes/javax/naming/NameImpl.java Changeset: 8f59422d Author: Roberto Casta?eda Lozano Date: 2022-05-31 06:59:49 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8f59422d357a00a2270a8f421966977e3979c2fb 8285558: IGV: scheduling crashes on control-unreachable CFG nodes Reviewed-by: kvn, chagedorn ! src/utils/IdealGraphVisualizer/ServerCompiler/src/main/java/com/sun/hotspot/igv/servercompiler/ServerCompilerScheduler.java Changeset: 6e55a72f Author: Roberto Casta?eda Lozano Date: 2022-05-31 08:38:11 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6e55a72f25f7273e3a8a19e0b9a97669b84808e9 8287438: IGV: scheduling crashes on non-block-start Region with multiple predecessors Reviewed-by: kvn, chagedorn ! src/utils/IdealGraphVisualizer/ServerCompiler/src/main/java/com/sun/hotspot/igv/servercompiler/ServerCompilerScheduler.java Changeset: c6e04164 Author: Dmitry Kulikov Committer: Alexey Ivanov Date: 2022-05-31 10:14:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c6e041649514b964f5baaa88880c4d146275db8d 8282863: java/awt/FullScreen/FullscreenWindowProps/FullscreenWindowProps.java fails on Windows 10 with HiDPI screen Reviewed-by: serb, aivanov ! src/java.desktop/windows/classes/sun/awt/Win32GraphicsDevice.java ! test/jdk/java/awt/FullScreen/FullscreenWindowProps/FullscreenWindowProps.java Changeset: 7ef69935 Author: Jan Lahoda Date: 2022-05-31 11:04:50 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/7ef6993576006d5fd09186870064d4dc1996e846 8276836: Error in javac caused by switch expression without result expressions: Internal error: stack sim error Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Code.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java + test/langtools/tools/javac/switchexpr/SwitchExpressionNoValue.java Changeset: 1b44f6c4 Author: Aleksey Shipilev Date: 2022-05-31 13:48:18 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1b44f6c483cfb2c8c2f304281654b56fda967719 8287526: java/nio/channels/FileChannel/LargeMapTest.java fails on 32-bit systems Reviewed-by: alanb, stuefe ! test/jdk/java/nio/channels/FileChannel/LargeMapTest.java Changeset: 171a7cdd Author: Jan Lahoda Date: 2022-05-31 15:01:38 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/171a7cdd5d44265b17541e17304e9ebed376a9fd 8286895: InternalError: Exception during analyze Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! test/langtools/jdk/jshell/ErrorRecoveryTest.java + test/langtools/tools/javac/recovery/NoCrashForError.java + test/langtools/tools/javac/recovery/NoCrashForError.out Changeset: 6f6486e9 Author: Jatin Bhateja Date: 2022-05-31 16:02:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6f6486e97743eadfb20b4175e1b4b2b05b59a17a 8284960: Integration of JEP 426: Vector API (Fourth Incubator) Co-authored-by: Jatin Bhateja Co-authored-by: Paul Sandoz Co-authored-by: Sandhya Viswanathan Co-authored-by: Smita Kamath Co-authored-by: Joshua Zhu Co-authored-by: Xiaohong Gong Co-authored-by: John R Rose Co-authored-by: Eric Liu Co-authored-by: Ningsheng Jian Reviewed-by: ngasson, vlivanov, mcimadamore, jlahoda, kvn ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/aarch64_neon.ad ! src/hotspot/cpu/aarch64/aarch64_neon_ad.m4 ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.hpp ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/matcher_x86.hpp ! src/hotspot/cpu/x86/stubGenerator_x86_32.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.hpp ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.hpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/matcher.cpp ! src/hotspot/share/opto/mulnode.hpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/subnode.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/vectorIntrinsics.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp ! src/hotspot/share/prims/vectorSupport.cpp ! src/hotspot/share/prims/vectorSupport.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! src/java.base/share/classes/jdk/internal/misc/X-ScopedMemoryAccess.java.template ! src/java.base/share/classes/jdk/internal/vm/vector/VectorSupport.java ! src/java.base/share/classes/module-info.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Preview.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractMask.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractSpecies.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorIntrinsics.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorMask.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorOperators.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorSpecies.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.amd64/src/jdk/vm/ci/amd64/AMD64.java ! test/hotspot/gtest/aarch64/aarch64-asmtest.py ! test/hotspot/gtest/aarch64/asmtest.out.h ! test/hotspot/jtreg/compiler/vectorapi/TestIntrinsicBailOut.java ! test/hotspot/jtreg/compiler/vectorapi/TestVectorErgonomics.java ! test/hotspot/jtreg/compiler/vectorapi/VectorMemoryAlias.java ! test/hotspot/jtreg/compiler/vectorapi/VectorRebracket128Test.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX1.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX2.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512BW.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastAVX512DQ.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastNeon.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorCastSVE.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/TestVectorReinterpret.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/tests/TestVectorDoubleExpandShrink.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/tests/TestVectorExpandShrink.java ! test/hotspot/jtreg/compiler/vectorapi/reshape/utils/VectorReshapeHelper.java ! test/hotspot/jtreg/compiler/vectorization/TestPopCountVectorLong.java ! test/jdk/jdk/incubator/vector/AbstractVectorLoadStoreTest.java ! test/jdk/jdk/incubator/vector/Byte128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte128VectorTests.java ! test/jdk/jdk/incubator/vector/Byte256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte256VectorTests.java ! test/jdk/jdk/incubator/vector/Byte512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte512VectorTests.java ! test/jdk/jdk/incubator/vector/Byte64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Byte64VectorTests.java ! test/jdk/jdk/incubator/vector/ByteMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/ByteMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Double128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double128VectorTests.java ! test/jdk/jdk/incubator/vector/Double256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double256VectorTests.java ! test/jdk/jdk/incubator/vector/Double512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double512VectorTests.java ! test/jdk/jdk/incubator/vector/Double64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Double64VectorTests.java ! test/jdk/jdk/incubator/vector/DoubleMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/DoubleMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Float128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float128VectorTests.java ! test/jdk/jdk/incubator/vector/Float256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float256VectorTests.java ! test/jdk/jdk/incubator/vector/Float512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float512VectorTests.java ! test/jdk/jdk/incubator/vector/Float64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Float64VectorTests.java ! test/jdk/jdk/incubator/vector/FloatMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/FloatMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Int128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int128VectorTests.java ! test/jdk/jdk/incubator/vector/Int256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int256VectorTests.java ! test/jdk/jdk/incubator/vector/Int512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int512VectorTests.java ! test/jdk/jdk/incubator/vector/Int64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Int64VectorTests.java ! test/jdk/jdk/incubator/vector/IntMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/IntMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Long128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long128VectorTests.java ! test/jdk/jdk/incubator/vector/Long256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long256VectorTests.java ! test/jdk/jdk/incubator/vector/Long512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long512VectorTests.java ! test/jdk/jdk/incubator/vector/Long64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Long64VectorTests.java ! test/jdk/jdk/incubator/vector/LongMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/LongMaxVectorTests.java ! test/jdk/jdk/incubator/vector/Short128VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short128VectorTests.java ! test/jdk/jdk/incubator/vector/Short256VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short256VectorTests.java ! test/jdk/jdk/incubator/vector/Short512VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short512VectorTests.java ! test/jdk/jdk/incubator/vector/Short64VectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/Short64VectorTests.java ! test/jdk/jdk/incubator/vector/ShortMaxVectorLoadStoreTests.java ! test/jdk/jdk/incubator/vector/ShortMaxVectorTests.java ! test/jdk/jdk/incubator/vector/VectorReshapeTests.java ! test/jdk/jdk/incubator/vector/gen-template.sh ! test/jdk/jdk/incubator/vector/gen-tests.sh ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-Broadcast-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Binary-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-BoolReduction-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-BoolReduction-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Broadcast.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare-Broadcast.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare-Masked.template ! test/jdk/jdk/incubator/vector/templates/Unit-Compare.template + test/jdk/jdk/incubator/vector/templates/Unit-CompressExpand.template ! test/jdk/jdk/incubator/vector/templates/Unit-Get-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Miscellaneous.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Masked-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-Masked-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-op-func.template ! test/jdk/jdk/incubator/vector/templates/Unit-Reduction-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Shift-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Shift-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Single-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-Masked-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Slice-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Broadcast-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Broadcast-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Double-Broadcast-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Double-Broadcast-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Masked-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-Scalar-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Ternary-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Test.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unary-op-math.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-Masked-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-bop.template ! test/jdk/jdk/incubator/vector/templates/Unit-Unslice-op.template ! test/jdk/jdk/incubator/vector/templates/Unit-Zero.template ! test/jdk/jdk/incubator/vector/templates/Unit-footer.template ! test/jdk/jdk/incubator/vector/templates/Unit-header.template ! test/jdk/jdk/incubator/vector/templates/X-LoadStoreTest.java.template ! test/lib-test/jdk/test/whitebox/CPUInfoTest.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/BlackScholes.java + test/micro/org/openjdk/bench/jdk/incubator/vector/MaskCastOperationsBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/MaskQueryOperationsBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/MaskedLogicOpts.java + test/micro/org/openjdk/bench/jdk/incubator/vector/MemorySegmentVectorAccess.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/RotateBenchmark.java ! test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreBytes.java - test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreShort.java + test/micro/org/openjdk/bench/jdk/incubator/vector/TestLoadStoreShorts.java Changeset: d5b6c7bd Author: Xue-Lei Andrew Fan Date: 2022-05-31 17:44:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d5b6c7bde1ae1ddcc9ad31b99480b67a913ff20a 8287384: Speed up jdk.test.lib.util.ForceGC Reviewed-by: rriggs, bchristi, dfuchs, mchung ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 37a51300 Author: liach Committer: Roger Riggs Date: 2022-05-31 18:29:07 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/37a513003c654297d81fc71b64c604f0ab8075cb 8287064: Modernize ProxyGenerator.PrimitiveTypeInfo Reviewed-by: rriggs, mchung ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java Changeset: e0382c55 Author: liach Committer: Roger Riggs Date: 2022-05-31 18:30:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e0382c552348d108e906792ad8ca7067f9f805ec 8285401: Proxy class initializer should use 3-arg `Class.forName` to avoid unnecessary class initialization Reviewed-by: rriggs, mchung ! src/java.base/share/classes/java/lang/reflect/ProxyGenerator.java + test/jdk/java/lang/reflect/Proxy/LazyInitializationTest.java Changeset: 8df5f105 Author: Srinivas Mandalika Committer: Phil Race Date: 2022-05-31 19:37:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8df5f1058fb7244b65fa67bff8fd5a5282d70594 8282857: Create a regression test for JDK-4702690 Reviewed-by: kizune, serb + test/jdk/javax/accessibility/JScrollPaneAccessibleRelationsTest.java Changeset: cfdbde11 Author: Srinivas Mandalika Committer: Phil Race Date: 2022-05-31 19:38:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cfdbde11f0bc2b61590eec2aaa9906f13c64e19e 8282778: Create a regression test for JDK-4699544 Reviewed-by: kizune, serb + test/jdk/javax/accessibility/JRootPaneAccessiblAtTest.java Changeset: 8db5247e Author: lawrence.andrews Committer: Phil Race Date: 2022-05-31 19:39:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8db5247ebc827bf4a428c2d46ebdda778be57860 8282771: Create test case for JDK-8262981 Reviewed-by: kizune + test/jdk/javax/accessibility/JSlider/AccessibleAction/JSliderAccessibleAction.java Changeset: 97bd4c25 Author: Phil Race Date: 2022-05-31 20:14:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/97bd4c255a319ce626a316ed211ef1fd7d0f1e14 8286159: Memory leak in getAllConfigs of awt_GraphicsEnv.c:585 Reviewed-by: psadhukhan, aivanov ! src/java.desktop/unix/native/libawt_xawt/awt/awt_GraphicsEnv.c Changeset: f5bbade9 Author: Andrey Turbanov Date: 2022-05-31 21:07:33 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f5bbade9e40ed99d53d50c828d672b4eaab35018 8287544: Replace uses of StringBuffer with StringBuilder in java.naming Reviewed-by: rriggs, aefimov, vtewari ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapName.java ! src/java.naming/share/classes/javax/naming/NameImpl.java Changeset: 8fc201e5 Author: Jonathan Gibbons Date: 2022-05-31 22:59:59 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8fc201e5bb7cb909a8bf496a751793b91b73631b 8285939: javadoc java.lang.Record should not have "Direct Known Subclasses:" section Reviewed-by: prappo, hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassUseMapper.java ! test/langtools/jdk/javadoc/doclet/testRecordTypes/TestRecordTypes.java Changeset: 3deb58a8 Author: Jaikiran Pai Date: 2022-06-01 03:55:55 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3deb58a89a79fd562fe0736e753e6a677234c8c7 8287318: ConcurrentModificationException in sun.net.httpserver.ServerImpl$Dispatcher Reviewed-by: dfuchs ! src/jdk.httpserver/share/classes/sun/net/httpserver/ServerImpl.java Changeset: 71599763 Author: Aleksey Shipilev Date: 2022-06-01 06:02:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/71599763359055c81afbe5e04d6034b7bb3f3606 8287520: Shrink x86_32 problemlists after JDK-8287437 Reviewed-by: alanb ! test/hotspot/jtreg/ProblemList.txt ! test/jdk/ProblemList.txt ! test/langtools/ProblemList.txt Changeset: 78469713 Author: Adam Sotona Date: 2022-06-01 06:13:29 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/784697138182f104c30f8365b01f67be4d28083c 8236569: -Xss not multiple of 4K does not work for the main thread on macOS Reviewed-by: dholmes, stuefe ! src/java.base/macosx/native/libjli/java_md_macosx.m ! src/java.base/share/classes/sun/launcher/resources/launcher.properties ! src/java.base/share/man/java.1 ! src/java.base/unix/native/libjli/java_md.c Changeset: e0e15def Author: Magnus Ihse Bursie Date: 2022-06-01 09:03:24 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e0e15def24c4c93c863ff459788bea23ef99d790 8287366: Improve test failure reporting in GHA Reviewed-by: clanger ! .github/workflows/submit.yml Changeset: 0ef3d855 Author: Feilong Jiang Committer: Fei Yang Date: 2022-06-01 09:29:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/0ef3d8551d85c9004087464d656074dac753acfd 8287552: riscv: Fix comment typo in li64 Co-authored-by: Dingli Zhang Reviewed-by: fyang ! src/hotspot/cpu/riscv/assembler_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp Changeset: 48f19e43 Author: Alexey Ushakov Date: 2022-06-01 09:48:15 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/48f19e43c5ceeed6b8f714fc921566f9260c78db 8287453: RenderPerfTest incorrectly measures performance Reviewed-by: prr ! test/jdk/performance/client/RenderPerfTest/Makefile ! test/jdk/performance/client/RenderPerfTest/build.xml - test/jdk/performance/client/RenderPerfTest/src/renderperf/RenderPerfLCDTest.java ! test/jdk/performance/client/RenderPerfTest/src/renderperf/RenderPerfTest.java Changeset: 168b226b Author: Sergey Tsypanov Committer: Roger Riggs Date: 2022-06-01 13:31:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/168b226b0f7a3b067bf11616e5a92908f63be450 8282662: Use List.of() factory method to reduce memory consumption Reviewed-by: redestad, rriggs ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/nio/file/FileTreeIterator.java ! src/java.base/share/classes/sun/security/validator/EndEntityChecker.java ! src/java.base/unix/classes/sun/nio/fs/UnixFileSystem.java Changeset: b2b4ee21 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-01 14:10:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b2b4ee212f06c606fc51e03ff33642035f4a4328 8287233: Crash in Continuation.enterSpecial: stop: tried to execute native method as non-native Reviewed-by: dholmes, pchilanomate ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/oops/method.cpp Changeset: f8eb7a89 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-01 14:11:55 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/f8eb7a892f2fe78671d2211e35369c7ff2ed24fa 8287512: continuationEntry.hpp has incomplete definitions Reviewed-by: coleenp, pchilanomate ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/share/runtime/continuationEntry.cpp ! src/hotspot/share/runtime/continuationEntry.hpp ! src/hotspot/share/runtime/continuationEntry.inline.hpp Changeset: e3791ecf Author: Yasumasa Suenaga Date: 2022-06-01 14:41:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e3791ecfe42ccb34548dd23d159087a86b669a46 8287491: compiler/jvmci/errors/TestInvalidDebugInfo.java fails new assert: assert((uint)t < T_CONFLICT + 1) failed: invalid type # Reviewed-by: kvn, dnsimon ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidDebugInfo.java Changeset: 774928f9 Author: Aleksey Shipilev Date: 2022-06-01 14:57:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/774928f9447e961ec26a76e03dbf2143ffdcc05d 8287625: ProblemList jdk/jshell/HighlightUITest.java on all platforms Reviewed-by: jlahoda ! test/langtools/ProblemList.txt Changeset: 8071b231 Author: Brian Burkhalter Date: 2022-06-01 15:15:53 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/8071b2311caaacd714d74f12aee6cb7c2fe700fa 8287237: (fs) Files.probeContentType returns null if filename contains hash mark on Linux Reviewed-by: rriggs, jpai, vtewari ! src/java.base/share/classes/sun/net/www/MimeTable.java ! test/jdk/java/nio/file/Files/probeContentType/Basic.java Changeset: 67ecd303 Author: Ioi Lam Date: 2022-06-01 15:51:47 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/67ecd30327086c5d7628c4156f8d9dcccb0f4d09 8287398: Allow concurrent execution of hotspot docker tests Reviewed-by: shade, mseledtsov, sgehwolf - test/hotspot/jtreg/containers/docker/TEST.properties ! test/lib/jdk/test/lib/containers/docker/Common.java Changeset: 239ac2a5 Author: Zhengyu Gu Date: 2022-06-01 17:01:22 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/239ac2a5d4c9a13e10e8c75324cd51f5f825337d 8286829: Shenandoah: fix Shenandoah Loom support Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSetNMethod.cpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.hpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahNMethod.cpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahSTWMark.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp Changeset: 27ad1d55 Author: Andrey Turbanov Date: 2022-06-01 18:14:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/27ad1d5549ebb65053ca2061e89d970ac3fe23a5 8287602: (fs) Avoid redundant HashMap.containsKey call in MimeTypesFileTypeDetector.putIfAbsent Reviewed-by: bpb, jpai, alanb ! src/java.base/unix/classes/sun/nio/fs/MimeTypesFileTypeDetector.java Changeset: 4caf1ef3 Author: Andrey Turbanov Date: 2022-06-01 18:15:59 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/4caf1ef389fd02bf53a9b7ed33d3b57fdaa79bd2 8287390: Cleanup Map usage in AuthenticationInfo.requestAuthentication Reviewed-by: dfuchs, jpai ! src/java.base/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java Changeset: cdb47688 Author: Dean Long Date: 2022-06-01 18:28:21 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cdb476888a65b8ee2538f08b4b1dbb245874a262 8287396: LIR_Opr::vreg_number() and data() can return negative number Reviewed-by: kvn, chagedorn ! src/hotspot/share/c1/c1_LIR.hpp Changeset: 2f191442 Author: Ana Marsh Committer: Vladimir Kozlov Date: 2022-06-01 20:19:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2f1914424936eebd2478ca9d3100f88abb2d199c 8282024: add EscapeAnalysis statistics under PrintOptoStatistics Reviewed-by: xliu, kvn ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/escape.hpp ! src/hotspot/share/opto/macro.cpp ! src/hotspot/share/opto/macro.hpp Changeset: 72bcf2aa Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-01 21:53:54 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/72bcf2aa03d53b0f68eb07a902575b4e8628d859 4511638: Double.toString(double) sometimes produces incorrect results Reviewed-by: aturbanov, darcy, bpb ! src/java.base/share/classes/java/lang/AbstractStringBuilder.java ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java + src/java.base/share/classes/jdk/internal/math/DoubleToDecimal.java + src/java.base/share/classes/jdk/internal/math/FloatToDecimal.java + src/java.base/share/classes/jdk/internal/math/MathUtils.java ! test/hotspot/jtreg/vmTestbase/jit/FloatingPoint/FPCompare/TestFPBinop/TestFPBinop.gold ! test/hotspot/jtreg/vmTestbase/jit/t/t047/t047.gold ! test/jdk/java/lang/String/concat/ImplicitStringConcatBoundaries.java + test/jdk/jdk/internal/math/ToDecimal/DoubleToDecimalTest.java + test/jdk/jdk/internal/math/ToDecimal/FloatToDecimalTest.java + test/jdk/jdk/internal/math/ToDecimal/MathUtilsTest.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/BasicChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/DoubleToDecimalChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/FloatToDecimalChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/MathUtilsChecker.java + test/jdk/jdk/internal/math/ToDecimal/java.base/jdk/internal/math/ToDecimalChecker.java ! test/langtools/tools/javac/sym/ElementStructureTest.java Changeset: 6030c0e4 Author: liach Committer: Jonathan Gibbons Date: 2022-06-01 23:05:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6030c0e4033655e7ce282f43c2216b4e29411c22 8287118: Use monospace font for annotation default values Reviewed-by: hannesw, jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeMemberWriterImpl.java ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Changeset: 07d24509 Author: Prasanta Sadhukhan Date: 2022-06-02 03:39:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/07d24509a68cc06f062b8249f207bc0d2148c79b 8213531: Test javax/swing/border/TestTitledBorderLeak.java fails Reviewed-by: prr ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/border/TestTitledBorderLeak.java Changeset: d7341ae4 Author: Prasanta Sadhukhan Date: 2022-06-02 03:40:52 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/d7341ae42e11fd08508c5f9c67c09c44b62da59b 8286846: test/jdk/javax/swing/plaf/aqua/CustomComboBoxFocusTest.java fails on mac aarch64 Reviewed-by: tr, prr, honkar ! test/jdk/javax/swing/plaf/aqua/CustomComboBoxFocusTest.java Changeset: a82417fa Author: Adam Sotona Date: 2022-06-02 06:20:36 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/a82417fa190a132313f6734a75f1998858c164fd 8233269: Improve handling of JAVA_ARGS Reviewed-by: erikj ! make/common/modules/LauncherCommon.gmk Changeset: 199832a7 Author: Emanuel Peter Date: 2022-06-02 06:49:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/199832a7101ca9dbfe7744ca0a1c4ff11d8832f2 8283466: C2: missing skeleton predicates in peeled loop Reviewed-by: roland, chagedorn ! src/hotspot/share/opto/loopPredicate.cpp ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/loopnode.hpp + test/hotspot/jtreg/compiler/loopopts/TestPeelingSkeletonPredicateInitialization.java Changeset: 6ff2d89e Author: Alan Bateman Date: 2022-06-02 09:02:37 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/6ff2d89ea11934bb13c8a419e7bad4fd40f76759 8287496: Alternative virtual thread implementation that maps to OS thread Reviewed-by: rehn, mchung ! make/data/hotspot-symbols/symbols-unix ! src/hotspot/cpu/aarch64/globals_aarch64.hpp ! src/hotspot/cpu/arm/globals_arm.hpp ! src/hotspot/cpu/ppc/globals_ppc.hpp ! src/hotspot/cpu/riscv/globals_riscv.hpp ! src/hotspot/cpu/s390/globals_s390.hpp ! src/hotspot/cpu/x86/globals_x86.hpp ! src/hotspot/cpu/zero/globals_zero.hpp ! src/hotspot/share/classfile/vmClassMacros.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/include/jvm.h ! src/hotspot/share/interpreter/abstractInterpreter.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/globals.hpp ! src/hotspot/share/services/threadService.cpp ! src/hotspot/share/services/threadService.hpp + src/java.base/share/classes/java/lang/BaseVirtualThread.java ! src/java.base/share/classes/java/lang/System.java ! src/java.base/share/classes/java/lang/Thread.java ! src/java.base/share/classes/java/lang/ThreadBuilders.java ! src/java.base/share/classes/java/lang/VirtualThread.java ! src/java.base/share/classes/jdk/internal/vm/Continuation.java + src/java.base/share/classes/jdk/internal/vm/ContinuationSupport.java + src/java.base/share/native/libjava/ContinuationSupport.c ! src/java.base/share/native/libjava/PreviewFeatures.c ! src/java.management/share/classes/java/lang/management/ThreadInfo.java ! src/java.management/share/classes/sun/management/ThreadImpl.java ! src/java.management/share/classes/sun/management/Util.java ! test/hotspot/jtreg/TEST.ROOT ! test/hotspot/jtreg/runtime/cds/appcds/redefineClass/RedefineRunningMethods_Shared.java ! test/hotspot/jtreg/runtime/vthread/JNIMonitor/JNIMonitor.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetFrameCount/framecnt01/framecnt01.java ! test/jdk/TEST.ROOT ! test/jdk/com/sun/jdi/JdbOptions.java ! test/jdk/java/lang/Thread/virtual/CustomScheduler.java ! test/jdk/java/lang/Thread/virtual/GetStackTraceWhenRunnable.java ! test/jdk/java/lang/Thread/virtual/HoldsLock.java ! test/jdk/java/lang/Thread/virtual/JfrEvents.java ! test/jdk/java/lang/Thread/virtual/ParkWithFixedThreadPool.java ! test/jdk/java/lang/Thread/virtual/Reflection.java ! test/jdk/java/lang/Thread/virtual/StackTraces.java ! test/jdk/java/lang/Thread/virtual/ThreadAPI.java ! test/jdk/java/lang/Thread/virtual/ThreadBuilders.java ! test/jdk/java/lang/Thread/virtual/TracePinnedThreads.java ! test/jdk/java/lang/Thread/virtual/stress/GetStackTraceALot.java ! test/jdk/java/lang/Thread/virtual/stress/Skynet.java ! test/jdk/java/lang/Thread/virtual/stress/SleepALot.java ! test/jdk/java/lang/Thread/virtual/stress/TimedGet.java ! test/jdk/java/lang/instrument/ParallelTransformerLoaderTest.java ! test/jdk/java/lang/management/ThreadMXBean/VirtualThreadDeadlocks.java ! test/jdk/java/lang/management/ThreadMXBean/VirtualThreads.java ! test/jdk/java/net/vthread/BlockingSocketOps.java ! test/jdk/java/nio/channels/vthread/BlockingChannelOps.java ! test/jdk/jdk/internal/vm/Continuation/Basic.java ! test/jdk/jdk/internal/vm/Continuation/ClassUnloading.java ! test/jdk/jdk/internal/vm/Continuation/Fuzz.java ! test/jdk/jdk/internal/vm/Continuation/HumongousStack.java ! test/jdk/jdk/internal/vm/Continuation/LiveFramesDriver.java ! test/jdk/jdk/internal/vm/Continuation/Scoped.java ! test/jdk/jdk/jfr/event/runtime/TestThreadEndEvent.java ! test/jdk/jdk/jfr/event/runtime/TestThreadSleepEvent.java ! test/jdk/jdk/jfr/event/runtime/TestThreadStartEvent.java ! test/jdk/jdk/jfr/event/runtime/TestVirtualThreadEndEvent.java ! test/jdk/jdk/jfr/event/runtime/TestVirtualThreadStartEvent.java ! test/jdk/jdk/jfr/jvm/TestThreadExclusion.java ! test/jdk/jdk/jfr/jvm/TestVirtualThreadExclusion.java ! test/jdk/jdk/jfr/threading/TestDeepVirtualStackTrace.java ! test/jdk/jdk/jfr/threading/TestManyVirtualThreads.java ! test/jdk/jdk/jfr/threading/TestNestedVirtualThreads.java ! test/jtreg-ext/requires/VMProps.java Changeset: bddef715 Author: Magnus Ihse Bursie Date: 2022-06-02 12:49:35 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/bddef7151849a213926ffdd86a7e228db66606b1 8287724: Fix various issues with msys2 Reviewed-by: erikj ! make/autoconf/boot-jdk.m4 ! make/autoconf/platform.m4 ! make/scripts/fixpath.sh Changeset: 5acac223 Author: Patricio Chilano Mateo Date: 2022-06-02 13:32:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/5acac2238fdc4ffe6ef290456e01cc559d811557 8286830: ~HandshakeState should not touch oops Reviewed-by: dholmes, rehn ! src/hotspot/share/runtime/handshake.cpp ! src/hotspot/share/runtime/handshake.hpp ! src/hotspot/share/runtime/thread.cpp ! test/hotspot/jtreg/runtime/Thread/StopAtExit.java ! test/hotspot/jtreg/runtime/Thread/SuspendAtExit.java Changeset: c78392db Author: Jonathan Gibbons Date: 2022-06-02 15:12:09 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c78392db4dd7c31db9eea608a335f6d9239c6a55 8287606: standardize spelling of subtype and supertype etc in comments Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/Reporter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractTreeWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Navigation.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseOptions.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AbstractMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ElementsTable.java Changeset: 3cfd38ca Author: Aleksey Shipilev Date: 2022-06-02 15:58:08 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/3cfd38caf10c18f71c0fc8c9a09c0d1179373ce7 8287726: Fix JVMTI tests with "requires vm.continuations" after JDK-8287496 Reviewed-by: alanb, rehn, lmesnik ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/serviceability/jvmti/GetOwnedMonitorInfo/GetOwnedMonitorInfoTest.java ! test/hotspot/jtreg/serviceability/jvmti/GetOwnedMonitorStackDepthInfo/GetOwnedMonitorStackDepthInfoTest.java ! test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorVMEventsTest.java ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineRunningMethods.java ! test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/RedefineRunningMethodsWithBacktrace.java ! test/hotspot/jtreg/serviceability/jvmti/events/Breakpoint/breakpoint01/breakpoint01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ClassLoad/classload01/classload01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ClassPrepare/classprep01/classprep01.java ! test/hotspot/jtreg/serviceability/jvmti/events/Exception/exception01/exception01.java ! test/hotspot/jtreg/serviceability/jvmti/events/ExceptionCatch/excatch01/excatch01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc01/fieldacc01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc02/fieldacc02.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc03/fieldacc03.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldAccess/fieldacc04/fieldacc04.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldModification/fieldmod01/fieldmod01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FieldModification/fieldmod02/fieldmod02.java ! test/hotspot/jtreg/serviceability/jvmti/events/FramePop/framepop01/framepop01.java ! test/hotspot/jtreg/serviceability/jvmti/events/FramePop/framepop02/framepop02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodEntry/mentry01/mentry01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodEntry/mentry02/mentry02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodExit/mexit01/mexit01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MethodExit/mexit02/mexit02.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorContendedEnter/mcontenter01/mcontenter01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorContendedEntered/mcontentered01/mcontentered01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorWait/monitorwait01/monitorwait01.java ! test/hotspot/jtreg/serviceability/jvmti/events/MonitorWaited/monitorwaited01/monitorwaited01.java ! test/hotspot/jtreg/serviceability/jvmti/events/SingleStep/singlestep01/singlestep01.java ! test/hotspot/jtreg/serviceability/jvmti/events/SingleStep/singlestep03/singlestep03.java ! test/hotspot/jtreg/serviceability/jvmti/stress/StackTrace/NotSuspended/GetStackTraceNotSuspendedStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/stress/StackTrace/Suspended/GetStackTraceSuspendedStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/stress/ThreadLocalStorage/SetGetThreadLocalStorageStressTest/SetGetThreadLocalStorageStressTest.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetAllThreads/allthr01/allthr01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetCurrentContendedMonitor/contmon01/contmon01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetCurrentContendedMonitor/contmon02/contmon02.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetFrameCount/framecnt01/framecnt01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/GetStackTraceCurrentThreadTest/GetStackTraceCurrentThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr03/getstacktr03.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr04/getstacktr04.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr05/getstacktr05.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr06/getstacktr06.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr07/getstacktr07.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetStackTrace/getstacktr08/getstacktr08.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadInfo/thrinfo01/thrinfo01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat01/thrstat01.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat03/thrstat03.java ! test/hotspot/jtreg/serviceability/jvmti/thread/GetThreadState/thrstat05/thrstat05.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/BreakpointInYieldTest/BreakpointInYieldTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContFramePopTest/ContFramePopTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContYieldBreakPointTest/ContYieldBreakPointTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/ContinuationTest/ContinuationTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/GetSetLocalTest/GetSetLocalTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/InterruptThreadTest/InterruptThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/MethodExitTest/MethodExitTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/NullAsCurrentThreadTest/NullAsCurrentThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/PinnedTaskTest/PinnedTaskTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/RawMonitorTest/RawMonitorTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/RedefineClasses/RedefineRunningMethods.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SelfSuspendDisablerTest/SelfSuspendDisablerTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResume1/SuspendResume1.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResume2/SuspendResume2.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/SuspendResumeAll/SuspendResumeAll.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadMonitorTest/VThreadMonitorTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadNotifyFramePopTest/VThreadNotifyFramePopTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadTest/VThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadUnsupportedTest/VThreadUnsupportedTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/WaitNotifySuspendedVThreadTest/WaitNotifySuspendedVThreadTest.java ! test/hotspot/jtreg/serviceability/jvmti/vthread/premain/AgentWithVThreadTest.java Changeset: e51ca1de Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-02 16:45:05 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/e51ca1dee33d69c74f7f1dc2292db2f04c4ccf4c 8287171: Refactor null caller tests to a single directory Reviewed-by: ihse, mchung ! make/test/JtregNativeJdk.gmk ! test/jdk/TEST.groups - test/jdk/java/lang/ClassLoader/exeNullCallerClassLoaderTest/NullCallerClassLoaderTest.java - test/jdk/java/lang/ClassLoader/exeNullCallerClassLoaderTest/exeNullCallerClassLoaderTest.c - test/jdk/java/lang/invoke/MethodHandles/exeNullCallerLookup/NullCallerLookupTest.java - test/jdk/java/lang/invoke/MethodHandles/exeNullCallerLookup/exeNullCallerLookupTest.c - test/jdk/java/lang/module/exeNullCallerGetResource/NullCallerGetResource.java - test/jdk/java/lang/module/exeNullCallerGetResource/exeNullCallerGetResource.c - test/jdk/java/util/ResourceBundle/exeNullCallerResourceBundle/NullCallerResourceBundle.java - test/jdk/java/util/ResourceBundle/exeNullCallerResourceBundle/exeNullCallerResourceBundle.c + test/jdk/jni/nullCaller/CallHelper.hpp + test/jdk/jni/nullCaller/NullCallerTest.java + test/jdk/jni/nullCaller/exeNullCallerTest.cpp = test/jdk/jni/nullCaller/src/n/closed/ClosedResources.java + test/jdk/jni/nullCaller/src/n/closed/test.txt = test/jdk/jni/nullCaller/src/n/module-info.java + test/jdk/jni/nullCaller/src/n/open/NullCallerResource.properties = test/jdk/jni/nullCaller/src/n/open/OpenResources.java + test/jdk/jni/nullCaller/src/n/open/test.txt Changeset: 1fcbaa41 Author: Thomas Schatzl Date: 2022-06-02 17:16:24 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/1fcbaa411628c46ca6980942b6f6a5ef7062e16f 8278598: AlignmentReserve is repeatedly reinitialized Reviewed-by: ayang, iwalulya ! src/hotspot/share/gc/shared/collectedHeap.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/plab.cpp ! src/hotspot/share/gc/shared/plab.hpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.cpp Changeset: 49e24f0c Author: Andrew Haley Date: 2022-06-02 17:31:32 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/49e24f0cd833b77006540e871aa7d427628c058f 8287567: AArch64: Implement post-call NOPs Reviewed-by: adinn, rbackman, dlong ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp ! src/hotspot/cpu/aarch64/nativeInst_aarch64.hpp ! src/hotspot/share/code/codeCache.inline.hpp Changeset: 13596cdf Author: Brian Burkhalter Date: 2022-06-02 17:36:25 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/13596cdf695e67819aadcc08c6d9f05b1eb18442 8287097: (fs) Files::copy requires an undocumented permission when copying from the default file system to a non-default file system Reviewed-by: chegar, alanb ! src/java.base/share/classes/java/nio/file/CopyMoveHelper.java + test/jdk/java/nio/file/Files/CopyToNonDefaultFS.java + test/jdk/java/nio/file/Files/copy.policy Changeset: 7f44f572 Author: vamsi-parasa Committer: Jatin Bhateja Date: 2022-06-02 17:42:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/7f44f572ea451a1f38b446a6ef64ffb27e3eb3fe 8285868: x86 intrinsics for floating point method isInfinite Reviewed-by: kvn, jbhateja ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/intrinsicnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java + test/hotspot/jtreg/compiler/intrinsics/TestDoubleClassCheck.java + test/hotspot/jtreg/compiler/intrinsics/TestFloatClassCheck.java + test/micro/org/openjdk/bench/java/lang/DoubleClassCheck.java + test/micro/org/openjdk/bench/java/lang/FloatClassCheck.java Changeset: ccec5d1e Author: Man Cao Date: 2022-06-02 18:12:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ccec5d1e8529c8211cc678d8acc8d37fe461cb51 8287704: Small logging clarification about shrunk bytes after heap shrinkage Co-authored-by: Jonathan Joo Reviewed-by: tschatzl ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp Changeset: 26d24263 Author: Naoto Sato Date: 2022-06-02 18:35:20 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/26d24263c7db6d8f722afefc975b03cb575fa6ee 8287340: Refactor old code using StringTokenizer in locale related code Reviewed-by: iris, joehw ! src/java.base/share/classes/sun/util/cldr/CLDRLocaleProviderAdapter.java ! src/java.base/share/classes/sun/util/locale/provider/JRELocaleProviderAdapter.java ! src/java.base/share/classes/sun/util/locale/provider/LocaleProviderAdapter.java ! test/jdk/sun/util/locale/provider/Bug8038436.java Changeset: 37e1835b Author: Mandy Chung Date: 2022-06-02 19:13:16 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/37e1835be76f5f141ba0dc067578bfe767ca94ed 8287746: ProblemList jni/nullCaller/NullCallerTest.java Reviewed-by: alanb, dcubed ! test/jdk/ProblemList.txt Changeset: 26048ea2 Author: Andrey Turbanov Date: 2022-06-02 19:28:20 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/26048ea21e0da6505d8452bd33a4d37b1bd5ce74 8287695: Use String.contains() instead of String.indexOf() in jdk.hotspot.agent Reviewed-by: cjplummer ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/CommandProcessor.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/StreamMonitor.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/SystemDictionaryHelper.java Changeset: b5a646ee Author: Xiaolin Zheng Committer: Vladimir Kozlov Date: 2022-06-02 20:31:26 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b5a646ee6cfd432cef6b7e69a177959227a38ace 8287425: Remove unnecessary register push for MacroAssembler::check_klass_subtype_slow_path Co-authored-by: Wei Kuai Reviewed-by: kvn ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp Changeset: 409157d2 Author: Alexander Matveev Date: 2022-06-02 21:44:51 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/409157d2af0e124756bf8c0d996ba8658a9714b7 8287125: [macos] Multiple jpackage tests fail/timeout on same host Reviewed-by: asemenyuk ! test/jdk/tools/jpackage/share/ArgumentsTest.java ! test/jdk/tools/jpackage/share/MultiNameTwoPhaseTest.java ! test/jdk/tools/jpackage/share/jdk/jpackage/tests/MainClassTest.java Changeset: 2776ff3b Author: Phil Race Date: 2022-06-02 22:44:39 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/2776ff3b038e53703138e5ff09d5b666cbe26ba9 8276266: Clean up incorrect client-libs ProblemList.txt entries Reviewed-by: serb, kizune ! test/jdk/ProblemList.txt Changeset: cbaeb00f Author: Alexey Ushakov Date: 2022-06-02 23:51:01 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/cbaeb00fcea7fb8942838610c2d68e27d290fb58 8287600: AA Ovals not rendered under metal Reviewed-by: aghaisas, prr ! src/java.desktop/macosx/native/libawt_lwawt/java2d/metal/MTLRenderQueue.m Changeset: deb06539 Author: Jonathan Gibbons Date: 2022-06-02 23:53:23 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/deb06539b00e5fd5c29795277b2f90da0c9ff5d5 8287337: SnippetUtils should throw exceptions if snippets not found Reviewed-by: hannesw ! test/langtools/jdk/javadoc/doclet/testDocletExample/TestDocletExample.java ! test/langtools/tools/lib/snippets/SnippetUtils.java Changeset: ba9ee8cb Author: Maurizio Cimadamore Date: 2022-06-03 00:17:45 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/ba9ee8cb286268f1d6a2820508334aaaf3131e15 8287748: Fix issues in java.lang.foreign package javadoc Reviewed-by: jvernee ! src/java.base/share/classes/java/lang/foreign/package-info.java Changeset: b544b8b7 Author: Ioi Lam Date: 2022-06-03 05:59:32 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/b544b8b7d43907e93263db31ba3cc6d5951bcaee 8276789: Support C++ lambda in ResourceHashtable::iterate Reviewed-by: stefank, coleenp ! src/hotspot/share/cds/dumpTimeClassInfo.cpp ! src/hotspot/share/cds/dumpTimeClassInfo.hpp ! src/hotspot/share/cds/dumpTimeClassInfo.inline.hpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/utilities/resourceHash.hpp Changeset: 625821da Author: Aleksey Shipilev Date: 2022-06-03 07:24:42 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/625821dae7589b510de00ffd506a592ddb606318 8287661: Fix and improve BitMap::print_on(outputStream*) Reviewed-by: stefank ! src/hotspot/share/utilities/bitMap.cpp ! test/hotspot/gtest/utilities/test_bitMap.cpp Changeset: 407abf5d Author: Tejesh R Committer: Prasanta Sadhukhan Date: 2022-06-03 07:46:17 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/407abf5d65af918e6d9bfed1f4cc7d4cfd74ce24 8233477: [Win LAF]The tooltip doesn't display correctly in Win LAF Reviewed-by: psadhukhan, prr, honkar + test/jdk/javax/swing/JToolTip/bug5047379.java Changeset: c5379d9a Author: duke Date: 2022-06-03 11:01:10 +0000 URL: https://git.openjdk.java.net/panama-foreign/commit/c5379d9a5ae99e9945ee0cee6409d3613bde1240 Automatic merge of jdk:master into master From gnodet at apache.org Fri Jun 3 12:47:47 2022 From: gnodet at apache.org (Guillaume Nodet) Date: Fri, 3 Jun 2022 14:47:47 +0200 Subject: Access to OS specific constants Message-ID: I'm experimenting JEP 424 to support Jansi ( https://github.com/fusesource/jansi), JLine (https://github.com/jline/jline3) and mvnd (https://github.com/apache/maven-mvnd). I've been able to replace a few native calls with the experimental API [1]. However, there's one thing I'd be missing in order to completely get rid of the native code : the java code needs to call the ioctl function [2], but that one takes an integer which value is defined in C headers. In my case, this is the TIOCGWINSZ constant, which is defined in my library class [3] and initialized in the native code [4]. When the libraries are using JNA, I need to define specific constants for each system, see [5], [6], [7]. But this kinda defeats the purpose of portability. Any idea how to work around this problem ? Cheers, Guillaume Nodet [1] https://github.com/fusesource/jansi/tree/jep-424 [2] https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/AnsiConsoleHelper.java#L82 [3] https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/internal/CLibrary.java#L63 [4] https://github.com/fusesource/jansi/blob/jep-424/src/main/native/jansi.c#L58 [5] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/freebsd/CLibrary.java#L250 [6] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/linux/CLibrary.java#L267 [7] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/solaris/CLibrary.java#L267 -- ------------------------ Guillaume Nodet From sundararajan.athijegannathan at oracle.com Fri Jun 3 13:30:01 2022 From: sundararajan.athijegannathan at oracle.com (Sundararajan Athijegannathan) Date: Fri, 3 Jun 2022 13:30:01 +0000 Subject: Access to OS specific constants In-Reply-To: References: Message-ID: Are those constants #define'd as macros in headers? If so, you can extract (even selectively filter by --include-macro option). If those are from platform specific headers, you can still extract multiple headers and use a import static * -Sundar ________________________________ From: panama-dev on behalf of Guillaume Nodet Sent: 03 June 2022 18:17 To: panama-dev at openjdk.java.net Subject: Access to OS specific constants I'm experimenting JEP 424 to support Jansi ( https://github.com/fusesource/jansi), JLine (https://github.com/jline/jline3) and mvnd (https://github.com/apache/maven-mvnd). I've been able to replace a few native calls with the experimental API [1]. However, there's one thing I'd be missing in order to completely get rid of the native code : the java code needs to call the ioctl function [2], but that one takes an integer which value is defined in C headers. In my case, this is the TIOCGWINSZ constant, which is defined in my library class [3] and initialized in the native code [4]. When the libraries are using JNA, I need to define specific constants for each system, see [5], [6], [7]. But this kinda defeats the purpose of portability. Any idea how to work around this problem ? Cheers, Guillaume Nodet [1] https://github.com/fusesource/jansi/tree/jep-424 [2] https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/AnsiConsoleHelper.java#L82 [3] https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/internal/CLibrary.java#L63 [4] https://github.com/fusesource/jansi/blob/jep-424/src/main/native/jansi.c#L58 [5] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/freebsd/CLibrary.java#L250 [6] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/linux/CLibrary.java#L267 [7] https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/solaris/CLibrary.java#L267 -- ------------------------ Guillaume Nodet From gnodet at apache.org Fri Jun 3 13:53:02 2022 From: gnodet at apache.org (Guillaume Nodet) Date: Fri, 3 Jun 2022 15:53:02 +0200 Subject: Access to OS specific constants In-Reply-To: References: Message-ID: Yes, those constants are defined as macros in headers. The "--include-macro" is for jextract, right ? But this will generate static code for the platform I'm running jextract on IIUC. My problem is that those constants do not have the same values, depending on the OS, so I do need something dynamic. Le ven. 3 juin 2022 ? 15:30, Sundararajan Athijegannathan < sundararajan.athijegannathan at oracle.com> a ?crit : > Are those constants #define'd as macros in headers? If so, you can extract > (even selectively filter by --include-macro option). If those are from > platform specific headers, you can still extract multiple headers and use a > import static * > > -Sundar > ------------------------------ > *From:* panama-dev on behalf of > Guillaume Nodet > *Sent:* 03 June 2022 18:17 > *To:* panama-dev at openjdk.java.net > *Subject:* Access to OS specific constants > > I'm experimenting JEP 424 to support Jansi ( > https://github.com/fusesource/jansi), JLine ( > https://github.com/jline/jline3) > and mvnd (https://github.com/apache/maven-mvnd). > > I've been able to replace a few native calls with the experimental API > [1]. However, there's one thing I'd be missing in order to completely get > rid of the native code : the java code needs to call the ioctl function > [2], but that one takes an integer which value is defined in C headers. In > my case, this is the TIOCGWINSZ constant, which is defined in my library > class [3] and initialized in the native code [4]. When the libraries are > using JNA, I need to define specific constants for each system, see [5], > [6], [7]. But this kinda defeats the purpose of portability. > > Any idea how to work around this problem ? > > Cheers, > Guillaume Nodet > > [1] https://github.com/fusesource/jansi/tree/jep-424 > [2] > > https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/AnsiConsoleHelper.java#L82 > [3] > > https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/internal/CLibrary.java#L63 > [4] > > https://github.com/fusesource/jansi/blob/jep-424/src/main/native/jansi.c#L58 > [5] > > https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/freebsd/CLibrary.java#L250 > [6] > > https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/linux/CLibrary.java#L267 > [7] > > https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/solaris/CLibrary.java#L267 > > -- > ------------------------ > Guillaume Nodet > -- ------------------------ Guillaume Nodet From maurizio.cimadamore at oracle.com Fri Jun 3 14:15:20 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 3 Jun 2022 15:15:20 +0100 Subject: Access to OS specific constants In-Reply-To: References: Message-ID: Hi, the API does not provide a way to probe the OS/arch. Our linker implementation does it with this blob of code: https://github.com/openjdk/panama-foreign/blob/foreign-memaccess%2Babi/src/java.base/share/classes/jdk/internal/foreign/CABI.java#L39 There is nothing magic in here, just some checks on JDK properties, so I believe this code could be more or less copied into your project. Of course it would be nice one day to provide an official query mechanism. Maurizio On 03/06/2022 14:53, Guillaume Nodet wrote: > Yes, those constants are defined as macros in headers. > The "--include-macro" is for jextract, right ? But this will generate > static code for the platform I'm running jextract on IIUC. My problem is > that those constants do not have the same values, depending on the OS, so I > do need something dynamic. > > Le ven. 3 juin 2022 ? 15:30, Sundararajan Athijegannathan < > sundararajan.athijegannathan at oracle.com> a ?crit : > >> Are those constants #define'd as macros in headers? If so, you can extract >> (even selectively filter by --include-macro option). If those are from >> platform specific headers, you can still extract multiple headers and use a >> import static * >> >> -Sundar >> ------------------------------ >> *From:* panama-dev on behalf of >> Guillaume Nodet >> *Sent:* 03 June 2022 18:17 >> *To:* panama-dev at openjdk.java.net >> *Subject:* Access to OS specific constants >> >> I'm experimenting JEP 424 to support Jansi ( >> https://github.com/fusesource/jansi), JLine ( >> https://github.com/jline/jline3) >> and mvnd (https://github.com/apache/maven-mvnd). >> >> I've been able to replace a few native calls with the experimental API >> [1]. However, there's one thing I'd be missing in order to completely get >> rid of the native code : the java code needs to call the ioctl function >> [2], but that one takes an integer which value is defined in C headers. In >> my case, this is the TIOCGWINSZ constant, which is defined in my library >> class [3] and initialized in the native code [4]. When the libraries are >> using JNA, I need to define specific constants for each system, see [5], >> [6], [7]. But this kinda defeats the purpose of portability. >> >> Any idea how to work around this problem ? >> >> Cheers, >> Guillaume Nodet >> >> [1] https://github.com/fusesource/jansi/tree/jep-424 >> [2] >> >> https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/AnsiConsoleHelper.java#L82 >> [3] >> >> https://github.com/fusesource/jansi/blob/jep-424/src/main/java/org/fusesource/jansi/internal/CLibrary.java#L63 >> [4] >> >> https://github.com/fusesource/jansi/blob/jep-424/src/main/native/jansi.c#L58 >> [5] >> >> https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/freebsd/CLibrary.java#L250 >> [6] >> >> https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/linux/CLibrary.java#L267 >> [7] >> >> https://github.com/jline/jline3/blob/master/terminal-jna/src/main/java/org/jline/terminal/impl/jna/solaris/CLibrary.java#L267 >> >> -- >> ------------------------ >> Guillaume Nodet >> > From leerho at gmail.com Fri Jun 3 16:56:18 2022 From: leerho at gmail.com (leerho) Date: Fri, 3 Jun 2022 09:56:18 -0700 Subject: Using Layouts on heap - JDK18 Message-ID: Hi, It is straightforward to create a native MemorySegment governed by a layout, but I can't see a way to create a heap segment governed by a layout (without a copy). We need to be able to read and write to structs on-heap as well as off-heap. Being able to overlay a Layout on a segment derived from a ByteBuffer or from a mapped file would also be useful. Perhaps these could be implemented via a slice? What I would like to see is something like: *MemorySegment *allocate*(MemoryLayout layout); //base resource is byte[]* OR > *MemorySegment *asSlice*(long offset, MemoryLayout layout)* The second could be applied to any base resource, not just off-heap. Am I missing something? Cheers, Lee. From maurizio.cimadamore at oracle.com Fri Jun 3 17:06:20 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 3 Jun 2022 18:06:20 +0100 Subject: Using Layouts on heap - JDK18 In-Reply-To: References: Message-ID: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> Hi Lee, in terms of heap allocation, how is your "allocate" different from this: ``` MemorySegment segment = MemorySegment.ofArray(new byte[layout.byteSize()]); ``` The above doesn't do any copy, it just creates a segment view over the array. (note that the carrier type used is important here - e.g. a segment that wraps a byte[] has different properties when it comes to alignment, than a segment that wraps long[]). But then you bring up the slice method, which makes me think that, perhaps you aren't after allocation at all - you have an existing segment and you want to slice it, using a layout. I think the slicing API overload you describe is a nice one (and one that I found myself wanting at times too). Is "layout-oriented" slicing the main use case you are referring to here? If we do this the "right" way, the slicing method would have to take into account the required alignment of the provided layout and either: * throw if the slice is not compatible with the layout alignment constraints, or * align the slice Of these I would probably prefer the former, because it's "less magic". Maurizio On 03/06/2022 17:56, leerho wrote: > Hi, > It is straightforward to create a native MemorySegment governed by a > layout, but I can't see a way to create a heap segment governed by a layout > (without a copy). We need to be able to read and write to structs on-heap > as well as off-heap. Being able to overlay a Layout on a segment derived > from a ByteBuffer or from a mapped file would also be useful. Perhaps these > could be implemented via a slice? > > What I would like to see is something like: > > *MemorySegment *allocate*(MemoryLayout layout); //base resource is byte[]* > > OR > >> *MemorySegment *asSlice*(long offset, MemoryLayout layout)* > > The second could be applied to any base resource, not just off-heap. > > Am I missing something? > > Cheers, > Lee. From leerho at gmail.com Fri Jun 3 17:59:48 2022 From: leerho at gmail.com (leerho) Date: Fri, 3 Jun 2022 10:59:48 -0700 Subject: Using Layouts on heap - JDK18 In-Reply-To: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> References: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> Message-ID: Maurizio, > ``` > MemorySegment segment = MemorySegment.ofArray(new byte[layout.byteSize()]); > ``` I thought of that too. It is obvious that I can derive a byteSize from the layout, which passes to the ofArray method, but it isn't obvious to me that I can subsequently access the array using the layout as I don't see any linkage between the layout and the segment, because the ofArray method is just getting a size and is oblivious to the fact that I'm using a layout to get it. Similarly, I can't find any reference in the Layout API of a way to "assign" a layout to a (previously created) segment. I am just learning about layouts so I may be missing something. ### > * throw if the slice is not compatible with the layout alignment > constraints, or > * align the slice 1. If the slice is just bytes wouldn't that always work? 2. I'm not sure what "align the slice" means? What would happen underneath? If the segment was created from an int[], and the layout alignment required byte alignment -- what would "align the slice" do? ##### Your mentioning of the alignment issue brings up another "asymmetry" that I am somewhat troubled by. The "segment.asByteBuffer()" method is very limited to the case where the segment was created from pure bytes. If a segment wraps a heap int[], and I try to acquire a ByteBuffer from the segment it fails. (And I do see the caveat "Throws UnsupportedOperationException" ... " in the Javadocs.) What also surprised me is that internally inside the segment you retain the int[] structure! Why? Why don't you just convert all inputs to just bytes? This is very different from ByteBuffer, where I can extract any of the multibyte primitive arrays from the raw bytes of the buffer, because the raw resource under the ByteBuffer is just a blob of bytes. And Unsafe provides even more flexibility. I can start with an array of longs and extract an array of ints because the underlying resource view of Unsafe is just bytes. So I am surprised you didn't do that here. I would think that having the internal view being just a blob of bytes would be the most flexible. If you want me to provide you with a use case for this I can provide you one. Lee. On Fri, Jun 3, 2022 at 10:06 AM Maurizio Cimadamore < maurizio.cimadamore at oracle.com> wrote: > Hi Lee, > in terms of heap allocation, how is your "allocate" different from this: > > ``` > MemorySegment segment = MemorySegment.ofArray(new byte[layout.byteSize()]); > ``` > > The above doesn't do any copy, it just creates a segment view over the > array. (note that the carrier type used is important here - e.g. a > segment that wraps a byte[] has different properties when it comes to > alignment, than a segment that wraps long[]). > > But then you bring up the slice method, which makes me think that, > perhaps you aren't after allocation at all - you have an existing > segment and you want to slice it, using a layout. > > I think the slicing API overload you describe is a nice one (and one > that I found myself wanting at times too). Is "layout-oriented" slicing > the main use case you are referring to here? > > If we do this the "right" way, the slicing method would have to take > into account the required alignment of the provided layout and either: > > * throw if the slice is not compatible with the layout alignment > constraints, or > * align the slice > > Of these I would probably prefer the former, because it's "less magic". > > Maurizio > > On 03/06/2022 17:56, leerho wrote: > > Hi, > > It is straightforward to create a native MemorySegment governed by a > > layout, but I can't see a way to create a heap segment governed by a > layout > > (without a copy). We need to be able to read and write to structs > on-heap > > as well as off-heap. Being able to overlay a Layout on a segment derived > > from a ByteBuffer or from a mapped file would also be useful. Perhaps > these > > could be implemented via a slice? > > > > What I would like to see is something like: > > > > *MemorySegment *allocate*(MemoryLayout layout); //base resource is > byte[]* > > > > OR > > > >> *MemorySegment *asSlice*(long offset, MemoryLayout layout)* > > > > The second could be applied to any base resource, not just off-heap. > > > > Am I missing something? > > > > Cheers, > > Lee. > From maurizio.cimadamore at oracle.com Fri Jun 3 18:08:58 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 3 Jun 2022 19:08:58 +0100 Subject: Using Layouts on heap - JDK18 In-Reply-To: References: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> Message-ID: <9a32f5e8-1952-da19-996e-4de8de17e4a7@oracle.com> On 03/06/2022 18:59, leerho wrote: > Maurizio, > > ``` > MemorySegment segment = MemorySegment.ofArray(new > byte[layout.byteSize()]); > ``` > > > I thought of that too. It is obvious?that I can derive a byteSize from > the layout, which passes to the ofArray method, but it isn't obvious > to me that I can subsequently access the array using the layout as I > don't see any linkage between the layout and the segment, because the > ofArray method is just getting a size and is oblivious to the fact > that I'm using a layout to get it.? Similarly, I can't find any > reference in the Layout API of a way to "assign" a layout to a > (previously created) segment. Layouts cannot be "assigned" to segments. Layouts and segments are orthogonal abstractions. You create a segment, which contain some bytes, then you use layouts to _dereference_ the segment. A layout has knowledge about size, alignment and endianness, so if you pass that (along with a segment) to a dereference API, you have all the ingredients you need. > > I am just learning about layouts so I may be missing something. > > ### > > * throw if the slice is not compatible with the layout alignment > constraints, or > * align the slice > > 1. If the slice is just bytes wouldn't that always work? > 2. I'm not sure what "align the slice" means? What would happen > underneath?? If the segment was created from an int[], and the layout > alignment required byte alignment -- what would "align the slice" do? > > ##### > Your mentioning of the alignment issue brings up another "asymmetry" > that I am somewhat troubled by. > > The "segment.asByteBuffer()" method is very limited to the case where > the segment was created from pure bytes.? If a segment wraps a heap > int[], and I try to acquire a ByteBuffer from the segment it fails.? > ?(And I do see the caveat "Throws UnsupportedOperationException" ... " > in the Javadocs.)? What also surprised me is that internally inside > the segment you retain the int[] structure!? Why?? Why don't you just > convert all inputs to just bytes? You mean copying int[] into a byte[] ? That would not be just a "view" then, it would allocate memory. All the "as" methods are meant to create views over memory, and not copy contents. > > This is very different from ByteBuffer, where I can extract any of the > multibyte primitive arrays from the raw bytes of the buffer, because > the raw resource under the ByteBuffer is just a blob of bytes.? And > Unsafe provides even more flexibility.? I can start with an array of > longs and extract an array of ints because the underlying resource > view of Unsafe is just bytes.? ?So I am surprised you didn't do that > here.? I would think that having the internal view being just a blob > of bytes would be the most flexible.? ? If you want me to provide you > with a use case?for this I can provide you one. I think you are mistaken w.r.t. ByteBuffer. A ByteBuffer is backed by a byte[] - you can't turn that into an int[] w/o copying. I also don't think that there is an Unsafe facility that lets you view a portion of a long[] as an int[] (you need a new Object header for the int[], so... again... allocation and copy). Maybe you are talking about different things? Please provide a snippet of code using either Unsafe or ByteBuffer that does something that you think MemorySegment does not support. Perhaps the discussion would be easier that way. Thanks Maurizio > Lee. > > > > On Fri, Jun 3, 2022 at 10:06 AM Maurizio Cimadamore > wrote: > > Hi Lee, > in terms of heap allocation, how is your "allocate" different from > this: > > ``` > MemorySegment segment = MemorySegment.ofArray(new > byte[layout.byteSize()]); > ``` > > The above doesn't do any copy, it just creates a segment view over > the > array. (note that the carrier type used is important here - e.g. a > segment that wraps a byte[] has different properties when it comes to > alignment, than a segment that wraps long[]). > > But then you bring up the slice method, which makes me think that, > perhaps you aren't after allocation at all - you have an existing > segment and you want to slice it, using a layout. > > I think the slicing API overload you describe is a nice one (and one > that I found myself wanting at times too). Is "layout-oriented" > slicing > the main use case you are referring to here? > > If we do this the "right" way, the slicing method would have to take > into account the required alignment of the provided layout and either: > > * throw if the slice is not compatible with the layout alignment > constraints, or > * align the slice > > Of these I would probably prefer the former, because it's "less > magic". > > Maurizio > > On 03/06/2022 17:56, leerho wrote: > > Hi, > > It is straightforward to create a native MemorySegment governed by a > > layout, but I can't see a way to create a heap segment governed > by a layout > > (without a copy).? We need to be able to read and write to > structs on-heap > > as well as off-heap.? Being able to overlay a Layout on a > segment derived > > from a ByteBuffer or from a mapped file would also be useful. > Perhaps these > > could be implemented via a slice? > > > > What I would like to see is something like: > > > > *MemorySegment *allocate*(MemoryLayout layout);? //base resource > is byte[]* > > > > OR > > > >> *MemorySegment *asSlice*(long offset, MemoryLayout layout)* > > > > The second could be applied to any base resource, not just off-heap. > > > > Am I missing something? > > > > Cheers, > > Lee. > From leerho at gmail.com Fri Jun 3 20:57:54 2022 From: leerho at gmail.com (leerho) Date: Fri, 3 Jun 2022 13:57:54 -0700 Subject: Using Layouts on heap - JDK18 In-Reply-To: <9a32f5e8-1952-da19-996e-4de8de17e4a7@oracle.com> References: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> <9a32f5e8-1952-da19-996e-4de8de17e4a7@oracle.com> Message-ID: Maurizio, Thank you for your patience! You are correct. I was mistaken. Extracting an array of any type from ByteBuffer, MemorySegment or Unsafe requires a copy operation ... With the possible exception of ByteBuffer, which allows access to the underlying byte[] via array(). Similarly with IntBuffer.array() if it was initialized with an int[]. (Whether this is safe or a good idea or not is another issue.) I do note that MemorySegment does not allow this. When using unsafe: unsafe.getInt(Object, offsetBytes/*includes object header*/); The object can be practically anything including any of the primitive arrays. In other words, the unsafe view of the world is strictly bytes. If you give in a long[], it loses the information that it was a long array. It is just bytes. When using MemorySegment I have to remember that it was initialized, say, from a long[]. Because, from reading the API, the copy(...ValueLayout ...) methods will blow up if the ValueLayout alignment does not match a long[]. And I can't find a way to determine from a given segment what its internal alignment assumptions are! Is this correct? ### Back to the original issue of Layouts. (and this is where my understanding is fuzzy) Suppose I have the struct from your wonderful documentation: typedef struct { char kind; int value; } TaggedValues[5]; Clearly I can create a layout that models this struct. And, I can use it to dereference an *off-heap* MemorySegment: allocateNative <#allocateNative(jdk.incubator.foreign.MemoryLayout,jdk.incubator.foreign.ResourceScope)> (MemoryLayout layout, ResourceScope scope); But how do I use the power of the layout to dereference a segment derived from a heap byte array, or a mapped file, or a ByteBuffer? I could use a *asSlice(long offset, MemoryLayout layout),* to do that if it existed. if you pass that [a layout] (along with a segment) to a dereference API, > you have all the ingredients you need. It is not obvious to me how to do that from the MemorySegment, or MemoryLayout API ( I must be really dense!) Cheers, and thanks again! Lee. On Fri, Jun 3, 2022 at 11:09 AM Maurizio Cimadamore < maurizio.cimadamore at oracle.com> wrote: > > On 03/06/2022 18:59, leerho wrote: > > Maurizio, > > >> ``` >> MemorySegment segment = MemorySegment.ofArray(new >> byte[layout.byteSize()]); >> ``` > > > I thought of that too. It is obvious that I can derive a byteSize from the > layout, which passes to the ofArray method, but it isn't obvious to me that > I can subsequently access the array using the layout as I don't see any > linkage between the layout and the segment, because the ofArray method is > just getting a size and is oblivious to the fact that I'm using a layout to > get it. Similarly, I can't find any reference in the Layout API of a way > to "assign" a layout to a (previously created) segment. > > Layouts cannot be "assigned" to segments. Layouts and segments are > orthogonal abstractions. You create a segment, which contain some bytes, > then you use layouts to _dereference_ the segment. A layout has knowledge > about size, alignment and endianness, so if you pass that (along with a > segment) to a dereference API, you have all the ingredients you need. > > > I am just learning about layouts so I may be missing something. > > ### > >> * throw if the slice is not compatible with the layout alignment >> constraints, or >> * align the slice > > 1. If the slice is just bytes wouldn't that always work? > 2. I'm not sure what "align the slice" means? What would happen > underneath? If the segment was created from an int[], and the layout > alignment required byte alignment -- what would "align the slice" do? > > ##### > Your mentioning of the alignment issue brings up another "asymmetry" that > I am somewhat troubled by. > > The "segment.asByteBuffer()" method is very limited to the case where the > segment was created from pure bytes. If a segment wraps a heap int[], and > I try to acquire a ByteBuffer from the segment it fails. (And I do see > the caveat "Throws UnsupportedOperationException" ... " in the Javadocs.) > What also surprised me is that internally inside the segment you retain the > int[] structure! Why? Why don't you just convert all inputs to just bytes? > > You mean copying int[] into a byte[] ? That would not be just a "view" > then, it would allocate memory. All the "as" methods are meant to create > views over memory, and not copy contents. > > > This is very different from ByteBuffer, where I can extract any of the > multibyte primitive arrays from the raw bytes of the buffer, because the > raw resource under the ByteBuffer is just a blob of bytes. And Unsafe > provides even more flexibility. I can start with an array of longs and > extract an array of ints because the underlying resource view of Unsafe is > just bytes. So I am surprised you didn't do that here. I would think > that having the internal view being just a blob of bytes would be the most > flexible. If you want me to provide you with a use case for this I can > provide you one. > > I think you are mistaken w.r.t. ByteBuffer. A ByteBuffer is backed by a > byte[] - you can't turn that into an int[] w/o copying. > > I also don't think that there is an Unsafe facility that lets you view a > portion of a long[] as an int[] (you need a new Object header for the > int[], so... again... allocation and copy). > > Maybe you are talking about different things? Please provide a snippet of > code using either Unsafe or ByteBuffer that does something that you think > MemorySegment does not support. Perhaps the discussion would be easier that > way. > > Thanks > Maurizio > > > Lee. > > > > On Fri, Jun 3, 2022 at 10:06 AM Maurizio Cimadamore < > maurizio.cimadamore at oracle.com> wrote: > >> Hi Lee, >> in terms of heap allocation, how is your "allocate" different from this: >> >> ``` >> MemorySegment segment = MemorySegment.ofArray(new >> byte[layout.byteSize()]); >> ``` >> >> The above doesn't do any copy, it just creates a segment view over the >> array. (note that the carrier type used is important here - e.g. a >> segment that wraps a byte[] has different properties when it comes to >> alignment, than a segment that wraps long[]). >> >> But then you bring up the slice method, which makes me think that, >> perhaps you aren't after allocation at all - you have an existing >> segment and you want to slice it, using a layout. >> >> I think the slicing API overload you describe is a nice one (and one >> that I found myself wanting at times too). Is "layout-oriented" slicing >> the main use case you are referring to here? >> >> If we do this the "right" way, the slicing method would have to take >> into account the required alignment of the provided layout and either: >> >> * throw if the slice is not compatible with the layout alignment >> constraints, or >> * align the slice >> >> Of these I would probably prefer the former, because it's "less magic". >> >> Maurizio >> >> On 03/06/2022 17:56, leerho wrote: >> > Hi, >> > It is straightforward to create a native MemorySegment governed by a >> > layout, but I can't see a way to create a heap segment governed by a >> layout >> > (without a copy). We need to be able to read and write to structs >> on-heap >> > as well as off-heap. Being able to overlay a Layout on a segment >> derived >> > from a ByteBuffer or from a mapped file would also be useful. Perhaps >> these >> > could be implemented via a slice? >> > >> > What I would like to see is something like: >> > >> > *MemorySegment *allocate*(MemoryLayout layout); //base resource is >> byte[]* >> > >> > OR >> > >> >> *MemorySegment *asSlice*(long offset, MemoryLayout layout)* >> > >> > The second could be applied to any base resource, not just off-heap. >> > >> > Am I missing something? >> > >> > Cheers, >> > Lee. >> > From maurizio.cimadamore at oracle.com Fri Jun 3 21:51:11 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 3 Jun 2022 22:51:11 +0100 Subject: Using Layouts on heap - JDK18 In-Reply-To: References: <01da66ca-6cb7-83f7-08d2-e23e1b836670@oracle.com> <9a32f5e8-1952-da19-996e-4de8de17e4a7@oracle.com> Message-ID: On 03/06/2022 21:57, leerho wrote: > Maurizio, > Thank you for your patience! You are correct.? I was mistaken. > Extracting an array of any type from ByteBuffer, MemorySegment or > Unsafe requires a copy operation ... > With the possible exception of ByteBuffer, which allows access to the > underlying byte[] via array().? Similarly with IntBuffer.array() if it > was initialized with an int[]. (Whether this is safe or a good idea or > not is another issue.) > I do note that MemorySegment does not allow this. Yep, memory segments do not "cough up" info about the heap array. ByteBuffer does that, but then if the BB is read-only it throws. I guess I still have to make up my mind as to whether that's a precedent we want to follow. > > When using unsafe: > unsafe.getInt(Object, offsetBytes/*includes object header*/); > The object can be practically anything including any of the primitive > arrays.? In other words, the unsafe view of the world is strictly > bytes. If you give in a long[], it loses the information that it was a > long array. It is just bytes. True. But the same is true for MemorySegment::getInt. It will work on native segments, heap segments backed by int[], long[], whatever. I think the two APIs are equivalent in terms of expressiveness. And, there's something that MemorySegment does which AFAIK, is not available in other APIs (including BB). That is, like Unsafe, a MemorySegment will let you view a float[] as an array of ints or shorts - Buffers do not allow for that, as FloatBuffer can only get floats. So, MemorySegment ~~ Unsafe in terms of dereference freedom. > > When using MemorySegment I have to remember that it was initialized, > say, from a long[].? Because, from reading the API, the > copy(...ValueLayout ...) methods will blow up if the ValueLayout > alignment does not match a long[].? And I can't find a way to > determine from a given segment what its?internal alignment assumptions > are!? Is this correct? That's a different thing :-) If you want to do everything w/o worrying about alignment constraints, just declare unaligned layout constants - and store them into a static final field, e.g. static final ValueLayout.OfLong JAVA_LONG_UNALIGNED = ValueLayout.JAVA_LONG.withBitAlignment(8); Then use JAVA_LONG_UNALIGNED everywhere, and the alignment exceptions will disappear. That's because, by default, layouts have the correct alignment so, if you try to store an 8-byte aligned datum inside a byte[] that won't work, because the heap-allocated memory for a byte[] is not guaranteed to be 8-byte aligned. The lack of conservative alignment checks like these has caused, in the past, intermittent failures on less commonly used platforms (e.g. x86), where the JVM might align array elements at different offsets than in x64. Anyway, these are extra safety belt to make sure that alignment checks are respected. If you do not care about those, you can turn them off by using unaligned layouts (I believe Lucene does that as well). > > ### > Back to the original issue of Layouts. (and this is where my > understanding is fuzzy) > > Suppose I have the struct from your wonderful documentation: > |typedef struct { char kind; int value; } TaggedValues[5];| |Looking at this, I realize this layout is "wrong", as it's missing a padding after the char. E.g. the struct is 4-byte aligned, and the int field should start at offset 4, so that there is char, then 2byte padding, then the int. As written the struct is "packed". So that can cause alignment issues down the road. But let's not dive into that for now.| > Clearly I can create a layout that models this struct. > And, I can use it to dereference an *off-heap* MemorySegment: > allocateNative > <#allocateNative(jdk.incubator.foreign.MemoryLayout,jdk.incubator.foreign.ResourceScope)>(MemoryLayout > ?layout, ResourceScope ?scope); > > But how do I use the power of the layout to dereference a segment > derived from a heap byte array, or a mapped file, or a ByteBuffer? I > could use a /asSlice(long offset, MemoryLayout layout),/ to do that if > it existed. I think here is where the misunderstanding happens. You think `allocateNative(MemoryLayout)` is more powerful than it? really is. It doesn't say, as you seem to imply, "given me a segment that is backed by a given layout". It simply says: "use the information contained in this layout to create a memory region that is compatible with the size/alignment of that layout". In other words, that method is just a shorcut for: MemorySegment.allocateNative(layout.byteSize(), layout.byteAlignment()) (as the Javadoc says). After you invoked that method, you just have a segment, and you can start dereferencing it however you like. The API doesn't verify that you dereference the segment in ways that are consistent with the layout you provided at the beginning. The dereference API is completely orthogonal (in a way that is much closer to Unsafe than you think). > > if you pass that [a layout] (along with a segment) to a > dereference API, you have all the ingredients you need. > > > It is?not?obvious to me how to do that from the MemorySegment, or > MemoryLayout?API? ( I must be really dense!) Here's a Gist that should help you: https://gist.github.com/mcimadamore/424fcfc6ad36a8d4de322bc5f707c98b (note that, since the struct layout is packed, and we want to use a byte[] as backing buffer, the example has to use unaligned layouts. If we wanted to work w/ aligned layouts, then we'd need to insert some padding between the two fields, and use long[], double[], int[] or float[] as a backing buffer). Cheers Maurizio > > Cheers, and thanks again! > Lee. > > > > > > > > > > > On Fri, Jun 3, 2022 at 11:09 AM Maurizio Cimadamore > wrote: > > > On 03/06/2022 18:59, leerho wrote: >> Maurizio, >> >> ``` >> MemorySegment segment = MemorySegment.ofArray(new >> byte[layout.byteSize()]); >> ``` >> >> >> I thought of that too. It is obvious?that I can derive a byteSize >> from the layout, which passes to the ofArray method, but it isn't >> obvious to me that I can subsequently access the array using the >> layout as I don't see any linkage between the layout and the >> segment, because the ofArray method is just getting a size and is >> oblivious to the fact that I'm using a layout to get it.? >> Similarly, I can't find any reference in the Layout API of a way >> to "assign" a layout to a (previously created) segment. > Layouts cannot be "assigned" to segments. Layouts and segments are > orthogonal abstractions. You create a segment, which contain some > bytes, then you use layouts to _dereference_ the segment. A layout > has knowledge about size, alignment and endianness, so if you pass > that (along with a segment) to a dereference API, you have all the > ingredients you need. >> >> I am just learning about layouts so I may be missing something. >> >> ### >> >> * throw if the slice is not compatible with the layout alignment >> constraints, or >> * align the slice >> >> 1. If the slice is just bytes wouldn't that always work? >> 2. I'm not sure what "align the slice" means? What would happen >> underneath?? If the segment was created from an int[], and the >> layout alignment required byte alignment -- what would "align the >> slice" do? >> >> ##### >> Your mentioning of the alignment issue brings up another >> "asymmetry" that I am somewhat troubled by. >> >> The "segment.asByteBuffer()" method is very limited to the case >> where the segment was created from pure bytes.? If a segment >> wraps a heap int[], and I try to acquire a ByteBuffer from the >> segment it fails.? ?(And I do see the caveat "Throws >> UnsupportedOperationException" ... " in the Javadocs.)? What also >> surprised me is that internally inside the segment you retain the >> int[] structure! Why?? Why don't you just convert all inputs to >> just bytes? > You mean copying int[] into a byte[] ? That would not be just a > "view" then, it would allocate memory. All the "as" methods are > meant to create views over memory, and not copy contents. >> >> This is very different from ByteBuffer, where I can extract any >> of the multibyte primitive arrays from the raw bytes of the >> buffer, because the raw resource under the ByteBuffer is just a >> blob of bytes.? And Unsafe provides even more flexibility.? I can >> start with an array of longs and extract an array of ints because >> the underlying resource view of Unsafe is just bytes.? ?So I am >> surprised you didn't do that here.? I would think that having the >> internal view being just a blob of bytes would be the most >> flexible.? ? If you want me to provide you with a use case?for >> this I can provide you one. > > I think you are mistaken w.r.t. ByteBuffer. A ByteBuffer is backed > by a byte[] - you can't turn that into an int[] w/o copying. > > I also don't think that there is an Unsafe facility that lets you > view a portion of a long[] as an int[] (you need a new Object > header for the int[], so... again... allocation and copy). > > Maybe you are talking about different things? Please provide a > snippet of code using either Unsafe or ByteBuffer that does > something that you think MemorySegment does not support. Perhaps > the discussion would be easier that way. > > Thanks > Maurizio > >> Lee. >> >> >> >> On Fri, Jun 3, 2022 at 10:06 AM Maurizio Cimadamore >> wrote: >> >> Hi Lee, >> in terms of heap allocation, how is your "allocate" different >> from this: >> >> ``` >> MemorySegment segment = MemorySegment.ofArray(new >> byte[layout.byteSize()]); >> ``` >> >> The above doesn't do any copy, it just creates a segment view >> over the >> array. (note that the carrier type used is important here - >> e.g. a >> segment that wraps a byte[] has different properties when it >> comes to >> alignment, than a segment that wraps long[]). >> >> But then you bring up the slice method, which makes me think >> that, >> perhaps you aren't after allocation at all - you have an >> existing >> segment and you want to slice it, using a layout. >> >> I think the slicing API overload you describe is a nice one >> (and one >> that I found myself wanting at times too). Is >> "layout-oriented" slicing >> the main use case you are referring to here? >> >> If we do this the "right" way, the slicing method would have >> to take >> into account the required alignment of the provided layout >> and either: >> >> * throw if the slice is not compatible with the layout alignment >> constraints, or >> * align the slice >> >> Of these I would probably prefer the former, because it's >> "less magic". >> >> Maurizio >> >> On 03/06/2022 17:56, leerho wrote: >> > Hi, >> > It is straightforward to create a native MemorySegment >> governed by a >> > layout, but I can't see a way to create a heap segment >> governed by a layout >> > (without a copy).? We need to be able to read and write to >> structs on-heap >> > as well as off-heap.? Being able to overlay a Layout on a >> segment derived >> > from a ByteBuffer or from a mapped file would also be >> useful. Perhaps these >> > could be implemented via a slice? >> > >> > What I would like to see is something like: >> > >> > *MemorySegment *allocate*(MemoryLayout layout); //base >> resource is byte[]* >> > >> > OR >> > >> >> *MemorySegment *asSlice*(long offset, MemoryLayout layout)* >> > >> > The second could be applied to any base resource, not just >> off-heap. >> > >> > Am I missing something? >> > >> > Cheers, >> > Lee. >> From clemens.lanthaler at itarchitects.at Sun Jun 5 10:28:41 2022 From: clemens.lanthaler at itarchitects.at (Clemens Lanthaler) Date: Sun, 5 Jun 2022 12:28:41 +0200 Subject: Issue in combination with JLink/JPackage In-Reply-To: <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> Message-ID: Hello Maurizio, I have now updated all my panama project with the Panama Build 19-panama+1-13. Now my LibrawFX library is working as expected, but my second lib LibHeifFX is not working and shows the same error message than before. The difference between the two native libs is that LibrawFX is thread safe and LibheifFX is not. Maybe the reason for only showing the issue on Libheif could be also the loading order. From the issue description the fix is already included (build 11) but it seems that there is another issue behind it. What I did: - Generate with jextract from Panama Build 19-panama+1-13 - Run with JDK 18.0.1 Must I run it with JDK 19 to be working ? But if that is the case than LibrawFX should not be working as well. Give me feedback if you need any logs additionally. best regards, Clemens Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: > > Hi Clemens, > no worries - I will let you know when we have an EA with the fix > available (we'll probably wait to accumulate some other fixes/features > as well). > > Thanks > Maurizio > > On 18/02/2022 22:04, Clemens Lanthaler wrote: >> Hi, >> Thanks allot for the info. I have seen that the fix will be part of >> JDK19 and frankly speeking I have never build a jdk by myself. I >> would appreciate if there is a chance to get a binary of this pre >> build including panama. >> >> Thank you in advance. >> >> best regards, >> Clemens >> >>> Maurizio Cimadamore hat am >>> 18.02.2022 15:30 geschrieben: >>> >>> >>> Hi, >>> quick update on this. The problem with library loading in JDK being too >>> strict for Panama has been fixed upstream (thanks Mandy!): >>> >>> https://git.openjdk.java.net/jdk/pull/7435 >>> >>> >>> We've just merged those changes into the Panama repo - which means >>> that, >>> if you build the latest version of the repo, you should be able to >>> verify that the workarounds are no longer required. >>> >>> Please let us know how that goes. >>> >>> Cheers >>> Maurizio >>> >>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>> I have managed to create a simple reproducer on Windows: >>>> import jdk.incubator.foreign.CLinker; >>>> public class TestLookup { >>>> ??? public static void main(String[] args) { >>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>> ??????? CLinker.systemCLinker().lookup("foo"); >>>> ??? } >>>> } >>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>> ucrtbase is already loaded by the application class loader. >>>> This seems to be a bug in the library loading mechanism - we do have a >>>> "raw" library loading mechanism that is not subject to JNI >>>> restrictions: >>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>> >>>> >>> > >>>> This library loader ends up calling this method which contains a class >>>> loader check: >>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>> >>>> >>> > >>>> I believe this loader check should be guarded by a "isJNI" flag, as we >>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>> Cheers >>>> Maurizio >>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>> No problem. >>> >> I've filed this: >>> >> >>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>> >> >>> >> Cheers >>> >> Maurizio >>> >> >>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>> >>> Hi Maurizio, >>> >>> >>> >>> thanks allot for your help and for the investigation. >>> >>> >>> >>> best regards, >>> >>> Clemens >>> >>> >>> >>> >>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>> >>>> wrote: >>> >>>> >>> >>>> >>> >>>> >>> >>>> Hi Clemens (it seems like your message got dropped by the mailing >>> >>>> list, not sure why). >>> >>>> >>> >>>> Your message seems to point at some bad interaction between >>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and only one >>> >>>> can win). Apparently, the Panama code isn't executed early enough >>> >>>> in the jpackage case. >>> >>>> >>> >>>> We'll need to investigate more. >>> >>>> >>> >>>> Maurizio >>> >>>> >>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>> >>>>> Hello everybody, >>> >>>>> >>> >>>>> I am the developer of project librawfx >>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>> >>>>> (github.com/lanthale/photoslide). >>> >>>>> >>> >>>>> At the begining of Photoslide the whole app was modularized and >>> >>>>> therefore all was working including librawfx which is using >>> >>>>> project Panama. After a while I had to change to a mixed >>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>> >>>>> environment and deployed my app PhotoSlide again. Under Linux and >>> >>>>> OSX all is working as expected. The problem exists only under >>> >>>>> Windows. Furthermore it exists only if I am creating a >>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>> >>>>> working as expected. Only the JPackage launcher have the issue >>> and >>> >>>>> I have no clue what the root cause is. >>> >>>>> >>> >>>>> The exception I am always seeing is: >>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>> >>>>> SCHWERWIEGEND: null >>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>> >>>>> classloader >>> >>>>> (Full stacktrace below) >>> >>>>> >>> >>>>> How can you reproduce the issue: >>> >>>>> >>> >>>>> ?1. Git clone project https://github.com/lanthale/JeditFX.git >>> >>> >>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>> >>>>> ?3. Click on the open icon in the toolbar and select file >>> >>>>> >>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>> >>> >>>>> >>> >>>>> ?4. The app is showing the image below the textarea >>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn -Ppackage clean >>> >>>>> ??? install" >>> >>>>> ?6. Start the exe jeditfx.exe in directory ".\target\jeditfx" >>> >>>>> ?7. Open the same file again -> No image is shown below the text >>> >>>>> ??? area and the exception is thrown in the background >>> >>>>> >>> >>>>> >>> >>>>> I have tried many things but it is only happening if I have >>> >>>>> OpenJFX+JDK Modules on the module path and the rest of the jar >>> >>>>> files on the classpath. All libs which are not having any Panama >>> >>>>> code inside of the app are working perfectly and it is only >>> >>>>> happening on Windows. >>> >>>>> >>> >>>>> Thank you in advance for your help! >>> >>>>> >>> >>>>> best regards, >>> >>>>> Clemens >>> >>>>> >>> >>>>> >>> >>>>> >>> >>>>> >>> >>>>> *Full stacktrace from Photoslide:* >>> >>>>> >>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>> >>>>> createSearchIndex >>> >>>>> INFORMATION: Start time create searchDB: >>> 2022-02-03T19:44:41.693455 >>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>> >>>>> lambda$checkForSoftwareUpdates$2 >>> >>>>> INFORMATION: No new version found! >>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>> >>>>> lambda$createSearchIndex$0 >>> >>>>> INFORMATION: End time create searchDB: >>> 2022-02-03T19:44:43.186194400 >>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>> >>>>> SCHWERWIEGEND: null >>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>> >>>>> classloader >>> >>>>> at >>> >>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>> >>> >>>>> Source) >>> >>>>> at org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>> >>>>> at >>> >>>>> >>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>> >>>>> >>> >>>>> at >>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>> >>> >>>>> Source) >>> >>>>> at >>> >>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>> >>>>> Source) >>> >>>>> at javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown >>> Source) >>> >>>>> at >>> >>>>> >>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>> >>> >>>>> >>> >>>>> at >>> >>>>> >>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>> >>> >>>>> >>> >>>>> at >>> >>>>> >>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>> >>>>> Source) >>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown Source) >>> >>>>> at >>> >>>>> >>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>> >>>>> Source) >>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown Source) >>> >>>>> at >>> >>>>> >>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>> >>>>> Source) >>> >>>>> at >>> >>>>> >>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>> >>>>> Source) >>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) -- ITArchitects CEO: B.Sc. Clemens Lanthaler Forchachstrasse 3 A-6166 Fulpmes Tel.: +43 (0)650 855 2954 email:office at itarchitects.at homepage:http://www.itarchitects.at ------------------------------------------------- Notice: This e-mail and any attachments are confidential and may be privileged. If you are not the intended recipient, notify the sender immediately, destroy all copies from your system and do not disclose or use the information for any purpose. Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. From duncan.gittins at gmail.com Sun Jun 5 12:47:57 2022 From: duncan.gittins at gmail.com (Duncan Gittins) Date: Sun, 5 Jun 2022 13:47:57 +0100 Subject: jextract JDK19 Windows enum handling Message-ID: I'm a bit behind with all latest Panama messages so apologies if this repeats existing issues. I've been testing out latest jextract from master branch, along with jdk19 - both with non-incubator foreign package names. There are some unexpected enum values in extractions, perhaps related to https://bugs.openjdk.java.net/browse/CODETOOLS-7903198 Test with header file "Shell32.h" which contains "#include " 1) With latest JDK19 branch I see an enum that I don't use, and this appears every time regardless of "--include--xxx" flags: jextract --source -lshell32 -t win.shell --output shell19.src Shell32.h --include-enum THIS_DOES_NOT_EXIST => Shell32_h contains 100+ values of "WELL_KNOWN_SID_TYPE" [ BTW: It would be nice if jextract had a mode (eg "--show-warnings") which reported "No such enum: THIS_DOES_NOT_EXIST".] 2) Is there a way to extract one enum value SLGP_SHORTPATH with JDK19 jextract? In previous JDK18 jextract release I could extract a single enum value SLGP_SHORTPATH (with "--include-macro" which was changed in CODETOOLS-7903198) jextract --source -lshell32 -t win.shell --output shell18.src Shell32.h --include-macro SLGP_SHORTPATH => class Shell32_h { // omitted lines with Constants$root.... public static int SLGP_SHORTPATH() { return (int)1L; } } Adding "--include-enum SLGP_FLAGS" will introduce new definitions including SLGP_SHORTPATH (and WELL_KNOWN_SID_TYPE), but it would be nicer to have just a single definition for the value "SLGP_SHORTPATH". Kind regards Duncan From wkudla.kernel at gmail.com Sun Jun 5 21:25:59 2022 From: wkudla.kernel at gmail.com (Wojciech Kudla) Date: Sun, 5 Jun 2022 22:25:59 +0100 Subject: Obsoleting JavaCritical Message-ID: Hi everyone, Just wanted to let you know that obsoleting Critical JNI natives is going to have a very detrimental impact on performance of latency-critical software in a few domains like HPC, HFT or systematic market making. We heavily exploit this feature and our use case has nothing to do with arrays or otherwise slippery scenarios involving JVM-controlled memory. The simplest example is calling clock_gettime(CLOCK_REALTIME) to get a high resolution timestamp. Some shops in our industry also replace parts of NIO with hand-crafted native code for example to get access to syscalls such as recvmsg/recvmmsg (either to get hardware timestamps or batch receive or any other functionality otherwise unavailable in the JDK. JavaCritical_ variant of the native implementation is nearly 30% faster for extremely short calls like the cases mentioned above compared to the standard JNI impl. In case of clock_gettime(CLOCK_REALTIME) it's 23 nanos vs 33 nanos on my box but I assure you we make a large number of such calls in our industry and this just compounds. Luckily with jdk17 we can still run with -XX:+CriticalJNINatives and get the desired performance but I just checked a jdk18 build and the cost of these calls is back at 33 nanos so this is performance regression. JavaCritical is an important part of making Java successful in high performance-focused areas and taking a step back with more restrictive approach in Panama would be a blow to the perception of the platform and its value in our field. I'd be more than happy to provide more context if needed. I realize things are fluid and there's probably still a lot of work in progress, but wanted to make you guys aware JavaCritical is not some forgotten feature no one uses. There's a whole industry and scientific research that relies on this. Thanks, Wojciech Kudla From maurizio.cimadamore at oracle.com Sun Jun 5 21:29:32 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Sun, 5 Jun 2022 22:29:32 +0100 Subject: Issue in combination with JLink/JPackage In-Reply-To: References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> Message-ID: On 05/06/2022 11:28, Clemens Lanthaler wrote: > Hello Maurizio, > > I have now updated all my panama project with the Panama Build > 19-panama+1-13. Now my LibrawFX library is working as expected, but my > second lib LibHeifFX is not working and shows the same error message > than before. > > The difference between the two native libs is that LibrawFX is thread > safe and LibheifFX is not. Maybe the reason for only showing the issue > on Libheif could be also the loading order. > > From the issue description the fix is already included (build 11) but > it seems that there is another issue behind it. > > What I did: > - Generate with jextract from Panama Build 19-panama+1-13 > - Run with JDK 18.0.1 > > Must I run it with JDK 19 to be working ? But if that is the case than > LibrawFX should not be working as well. Give me feedback if you need > any logs additionally. Hi Clemens, I believe you need to run with 19 to take advantage of the fix - e.g. to make sure that System.loadLibrary and Panama library loading truly act as orthogonal. Let's start from there and see where we get - please post any stack trace that could be relevant to diagnose this. Thanks Maurizio > > best regards, > Clemens > > > Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: >> >> Hi Clemens, >> no worries - I will let you know when we have an EA with the fix >> available (we'll probably wait to accumulate some other >> fixes/features as well). >> >> Thanks >> Maurizio >> >> On 18/02/2022 22:04, Clemens Lanthaler wrote: >>> Hi, >>> Thanks allot for the info. I have seen that the fix will be part of >>> JDK19 and frankly speeking I have never build a jdk by myself. I >>> would appreciate if there is a chance to get a binary of this pre >>> build including panama. >>> >>> Thank you in advance. >>> >>> best regards, >>> Clemens >>> >>>> Maurizio Cimadamore hat am >>>> 18.02.2022 15:30 geschrieben: >>>> >>>> >>>> Hi, >>>> quick update on this. The problem with library loading in JDK being >>>> too >>>> strict for Panama has been fixed upstream (thanks Mandy!): >>>> >>>> https://git.openjdk.java.net/jdk/pull/7435 >>>> >>>> >>>> We've just merged those changes into the Panama repo - which means >>>> that, >>>> if you build the latest version of the repo, you should be able to >>>> verify that the workarounds are no longer required. >>>> >>>> Please let us know how that goes. >>>> >>>> Cheers >>>> Maurizio >>>> >>>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>>> I have managed to create a simple reproducer on Windows: >>>>> import jdk.incubator.foreign.CLinker; >>>>> public class TestLookup { >>>>> ??? public static void main(String[] args) { >>>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>>> ??????? CLinker.systemCLinker().lookup("foo"); >>>>> ??? } >>>>> } >>>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>>> ucrtbase is already loaded by the application class loader. >>>>> This seems to be a bug in the library loading mechanism - we do >>>>> have a >>>>> "raw" library loading mechanism that is not subject to JNI >>>>> restrictions: >>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>>> >>>>> >>>> > >>>>> This library loader ends up calling this method which contains a >>>>> class >>>>> loader check: >>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>>> >>>>> >>>> > >>>>> I believe this loader check should be guarded by a "isJNI" flag, >>>>> as we >>>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>>> Cheers >>>>> Maurizio >>>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>>> No problem. >>>> >> I've filed this: >>>> >> >>>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>>> >> >>>> >> Cheers >>>> >> Maurizio >>>> >> >>>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>>> >>> Hi Maurizio, >>>> >>> >>>> >>> thanks allot for your help and for the investigation. >>>> >>> >>>> >>> best regards, >>>> >>> Clemens >>>> >>> >>>> >>> >>>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>>> >>>> wrote: >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> Hi Clemens (it seems like your message got dropped by the mailing >>>> >>>> list, not sure why). >>>> >>>> >>>> >>>> Your message seems to point at some bad interaction between >>>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and only >>>> one >>>> >>>> can win). Apparently, the Panama code isn't executed early enough >>>> >>>> in the jpackage case. >>>> >>>> >>>> >>>> We'll need to investigate more. >>>> >>>> >>>> >>>> Maurizio >>>> >>>> >>>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>>> >>>>> Hello everybody, >>>> >>>>> >>>> >>>>> I am the developer of project librawfx >>>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>>> >>>>> (github.com/lanthale/photoslide). >>>> >>>>> >>>> >>>>> At the begining of Photoslide the whole app was modularized and >>>> >>>>> therefore all was working including librawfx which is using >>>> >>>>> project Panama. After a while I had to change to a mixed >>>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>>> >>>>> environment and deployed my app PhotoSlide again. Under Linux >>>> and >>>> >>>>> OSX all is working as expected. The problem exists only under >>>> >>>>> Windows. Furthermore it exists only if I am creating a >>>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>>> >>>>> working as expected. Only the JPackage launcher have the >>>> issue and >>>> >>>>> I have no clue what the root cause is. >>>> >>>>> >>>> >>>>> The exception I am always seeing is: >>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>> >>>>> SCHWERWIEGEND: null >>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>> >>>>> classloader >>>> >>>>> (Full stacktrace below) >>>> >>>>> >>>> >>>>> How can you reproduce the issue: >>>> >>>>> >>>> >>>>> ?1. Git clone project https://github.com/lanthale/JeditFX.git >>>> >>>> >>>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>>> >>>>> ?3. Click on the open icon in the toolbar and select file >>>> >>>>> >>>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>>> >>>> >>>>> >>>> >>>>> ?4. The app is showing the image below the textarea >>>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn -Ppackage >>>> clean >>>> >>>>> ??? install" >>>> >>>>> ?6. Start the exe jeditfx.exe in directory ".\target\jeditfx" >>>> >>>>> ?7. Open the same file again -> No image is shown below the text >>>> >>>>> ??? area and the exception is thrown in the background >>>> >>>>> >>>> >>>>> >>>> >>>>> I have tried many things but it is only happening if I have >>>> >>>>> OpenJFX+JDK Modules on the module path and the rest of the jar >>>> >>>>> files on the classpath. All libs which are not having any Panama >>>> >>>>> code inside of the app are working perfectly and it is only >>>> >>>>> happening on Windows. >>>> >>>>> >>>> >>>>> Thank you in advance for your help! >>>> >>>>> >>>> >>>>> best regards, >>>> >>>>> Clemens >>>> >>>>> >>>> >>>>> >>>> >>>>> >>>> >>>>> >>>> >>>>> *Full stacktrace from Photoslide:* >>>> >>>>> >>>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>>> >>>>> createSearchIndex >>>> >>>>> INFORMATION: Start time create searchDB: >>>> 2022-02-03T19:44:41.693455 >>>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>>> >>>>> lambda$checkForSoftwareUpdates$2 >>>> >>>>> INFORMATION: No new version found! >>>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>>> >>>>> lambda$createSearchIndex$0 >>>> >>>>> INFORMATION: End time create searchDB: >>>> 2022-02-03T19:44:43.186194400 >>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>> >>>>> SCHWERWIEGEND: null >>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>> >>>>> classloader >>>> >>>>> at >>>> >>>>> >>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>>> >>>>> at >>>> >>>>> >>>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>>> >>>>> >>>> >>>>> at >>>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>>> >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>>> >>>>> Source) >>>> >>>>> at javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown >>>> Source) >>>> >>>>> at >>>> >>>>> >>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>>> >>>> >>>>> >>>> >>>>> at >>>> >>>>> >>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>>> >>>> >>>>> >>>> >>>>> at >>>> >>>>> >>>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>>> >>>>> Source) >>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown Source) >>>> >>>>> at >>>> >>>>> >>>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>>> >>>>> Source) >>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown Source) >>>> >>>>> at >>>> >>>>> >>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>>> >>>>> Source) >>>> >>>>> at >>>> >>>>> >>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>>> >>>>> Source) >>>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) > > -- > ITArchitects > CEO: B.Sc. Clemens Lanthaler > Forchachstrasse 3 > A-6166 Fulpmes > Tel.: +43 (0)650 855 2954 > email:office at itarchitects.at > homepage:http://www.itarchitects.at > ------------------------------------------------- > Notice: This e-mail and any attachments are confidential and may be privileged. > If you are not the intended recipient, notify the sender immediately, destroy all > copies from your system and do not disclose or use the information for any purpose. > Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem > Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie > bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und > veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. From maurizio.cimadamore at oracle.com Sun Jun 5 21:35:45 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Sun, 5 Jun 2022 22:35:45 +0100 Subject: jextract JDK19 Windows enum handling In-Reply-To: References: Message-ID: <79bff5bd-bed7-40ad-c076-0dc935048dd8@oracle.com> Hi Dunan, (1) looks like a bug. I'll need to think about (2). I see where you are coming from. At the same time it's tricky, because we filter out most stuff by "name" (e.g. struct name, function name, etc.) - and we do not provide functionality to filter out at _deeper_ levels of nesting. The fact that constants worked the way they did was more of an happy accident rather than the result of a conscious decision. While we could go back to previous behavior, I feel like, in some cases at least, a developer might want to include an entire enum, w/o really having to enumerate all the constants. Maurizio On 05/06/2022 13:47, Duncan Gittins wrote: > I'm a bit behind with all latest Panama messages so apologies if this > repeats existing issues. I've been testing out latest jextract from master > branch, along with jdk19 - both with non-incubator foreign package names. > > There are some unexpected enum values in extractions, perhaps related to > https://bugs.openjdk.java.net/browse/CODETOOLS-7903198 > > Test with header file "Shell32.h" which contains "#include " > > 1) With latest JDK19 branch I see an enum that I don't use, and this > appears every time regardless of "--include--xxx" flags: > > jextract --source -lshell32 -t win.shell --output shell19.src Shell32.h > --include-enum THIS_DOES_NOT_EXIST > => Shell32_h contains 100+ values of "WELL_KNOWN_SID_TYPE" > > [ BTW: It would be nice if jextract had a mode (eg "--show-warnings") which > reported "No such enum: THIS_DOES_NOT_EXIST".] > > 2) Is there a way to extract one enum value SLGP_SHORTPATH with JDK19 > jextract? > > In previous JDK18 jextract release I could extract a single enum value > SLGP_SHORTPATH (with "--include-macro" which was changed in > CODETOOLS-7903198) > > jextract --source -lshell32 -t win.shell --output shell18.src > Shell32.h --include-macro SLGP_SHORTPATH > => class Shell32_h { // omitted lines with Constants$root.... > public static int SLGP_SHORTPATH() { return (int)1L; } > } > > Adding "--include-enum SLGP_FLAGS" will introduce new definitions including > SLGP_SHORTPATH (and WELL_KNOWN_SID_TYPE), but it would be nicer to have > just a single definition for the value "SLGP_SHORTPATH". > > Kind regards > > Duncan From maurizio.cimadamore at oracle.com Sun Jun 5 21:52:16 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Sun, 5 Jun 2022 22:52:16 +0100 Subject: Obsoleting JavaCritical In-Reply-To: References: Message-ID: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> (adding hotspot-dev) Hi Wojciech, it is not the goal of Project Panama to obsolete Critical JNI. What we would like to do is, obviously, over time, get to a similar level of performance (as discussed elsewhere in this mailing list recently, see [1]). It is possible that there might be other ways to get to the same level (or better) of performance than the one you have (I understand that this is especially the case with clock_gettime, for which an intrinsified alternative is available in the JDK - System.nanoTime) - in general using native calls for things that only contains a bunch of machine instruction is always going to be painful. That said, I'd like somebody on the hotspot team to add more background on the decision of dropping support for JNI critical in 18. [1] - https://mail.openjdk.java.net/pipermail/panama-dev/2022-June/017046.html On 05/06/2022 22:25, Wojciech Kudla wrote: > Hi everyone, > > Just wanted to let you know that obsoleting Critical JNI natives is going > to have a very detrimental impact on performance of latency-critical > software in a few domains like HPC, HFT or systematic market making. > We heavily exploit this feature and our use case has nothing to do with > arrays or otherwise slippery scenarios involving JVM-controlled memory. The > simplest example is calling clock_gettime(CLOCK_REALTIME) to get a high > resolution timestamp. Some shops in our industry also replace parts of NIO > with hand-crafted native code for example to get access to syscalls such as > recvmsg/recvmmsg (either to get hardware timestamps or batch receive or any > other functionality otherwise unavailable in the JDK. > > JavaCritical_ variant of the native implementation is nearly 30% faster for > extremely short calls like the cases mentioned above compared to the > standard JNI impl. In case of clock_gettime(CLOCK_REALTIME) it's 23 nanos > vs 33 nanos on my box but I assure you we make a large number of such calls > in our industry and this just compounds. > Luckily with jdk17 we can still run with -XX:+CriticalJNINatives and get > the desired performance but I just checked a jdk18 build and the cost of > these calls is back at 33 nanos so this is performance regression. > > JavaCritical is an important part of making Java successful in high > performance-focused areas and taking a step back with more restrictive > approach in Panama would be a blow to the perception of the platform and > its value in our field. I'd be more than happy to provide more context if > needed. I realize things are fluid and there's probably still a lot of work > in progress, but wanted to make you guys aware JavaCritical is not some > forgotten feature no one uses. There's a whole industry and scientific > research that relies on this. > > Thanks, > Wojciech Kudla From wkudla.kernel at gmail.com Mon Jun 6 06:34:00 2022 From: wkudla.kernel at gmail.com (Wojciech Kudla) Date: Mon, 6 Jun 2022 07:34:00 +0100 Subject: Obsoleting JavaCritical In-Reply-To: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> References: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> Message-ID: Thank you Maurizio, We're hopeful things will improve with time in the next few Java releases and can afford to stick to JDK17 for the time skipping a two or three versions down the road if that means maintaining performance levels our industry requires. As for intrinsified calls: sadly System.nanoTime() is not an alternative to clock_gettime(CLOCK_REALTIME) as they return different time. The JDK obtains CLOCK_MONOTONIC IIRC. Thanks, W. On Sun, Jun 5, 2022 at 10:52 PM Maurizio Cimadamore < maurizio.cimadamore at oracle.com> wrote: > (adding hotspot-dev) > > Hi Wojciech, > it is not the goal of Project Panama to obsolete Critical JNI. What we > would like to do is, obviously, over time, get to a similar level of > performance (as discussed elsewhere in this mailing list recently, see > [1]). > > It is possible that there might be other ways to get to the same level > (or better) of performance than the one you have (I understand that this > is especially the case with clock_gettime, for which an intrinsified > alternative is available in the JDK - System.nanoTime) - in general > using native calls for things that only contains a bunch of machine > instruction is always going to be painful. > > That said, I'd like somebody on the hotspot team to add more background > on the decision of dropping support for JNI critical in 18. > > [1] - > https://mail.openjdk.java.net/pipermail/panama-dev/2022-June/017046.html > > On 05/06/2022 22:25, Wojciech Kudla wrote: > > Hi everyone, > > > > Just wanted to let you know that obsoleting Critical JNI natives is going > > to have a very detrimental impact on performance of latency-critical > > software in a few domains like HPC, HFT or systematic market making. > > We heavily exploit this feature and our use case has nothing to do with > > arrays or otherwise slippery scenarios involving JVM-controlled memory. > The > > simplest example is calling clock_gettime(CLOCK_REALTIME) to get a high > > resolution timestamp. Some shops in our industry also replace parts of > NIO > > with hand-crafted native code for example to get access to syscalls such > as > > recvmsg/recvmmsg (either to get hardware timestamps or batch receive or > any > > other functionality otherwise unavailable in the JDK. > > > > JavaCritical_ variant of the native implementation is nearly 30% faster > for > > extremely short calls like the cases mentioned above compared to the > > standard JNI impl. In case of clock_gettime(CLOCK_REALTIME) it's 23 nanos > > vs 33 nanos on my box but I assure you we make a large number of such > calls > > in our industry and this just compounds. > > Luckily with jdk17 we can still run with -XX:+CriticalJNINatives and get > > the desired performance but I just checked a jdk18 build and the cost of > > these calls is back at 33 nanos so this is performance regression. > > > > JavaCritical is an important part of making Java successful in high > > performance-focused areas and taking a step back with more restrictive > > approach in Panama would be a blow to the perception of the platform and > > its value in our field. I'd be more than happy to provide more context if > > needed. I realize things are fluid and there's probably still a lot of > work > > in progress, but wanted to make you guys aware JavaCritical is not some > > forgotten feature no one uses. There's a whole industry and scientific > > research that relies on this. > > > > Thanks, > > Wojciech Kudla > From david.holmes at oracle.com Mon Jun 6 06:44:58 2022 From: david.holmes at oracle.com (David Holmes) Date: Mon, 6 Jun 2022 16:44:58 +1000 Subject: Obsoleting JavaCritical In-Reply-To: References: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> Message-ID: <04248465-fee4-20ba-c2a5-217d7867c6f4@oracle.com> On 6/06/2022 4:34 pm, Wojciech Kudla wrote: > Thank you Maurizio, > > We're hopeful things will improve with time in the next few Java releases > and can afford to stick to JDK17 for the time skipping a two or three > versions down the road if that means maintaining performance levels our > industry requires. > As for intrinsified calls: sadly System.nanoTime() is not an alternative to > clock_gettime(CLOCK_REALTIME) as they return different time. The JDK > obtains CLOCK_MONOTONIC IIRC. Yes for System.nanoTime(), but System.currentTimeMillis() reports CLOCK_REALTIME. This CriticalJNINatives mechanism was not intended for general use and was not supported in any real sense. If your "critical" native does not behave well then it can cause issues with GC and safepoints in general. A supported mechanism needs to be at least moderately safe (this is native code so full safety is not achievable), but it would come down to convention more than enforcement. And as raised in other threads on this, perhaps what is really wanted is a way to inline, or intrinsify, your own native code, rather than just trying to make slow native calls slightly faster. Cheers, David ----- > Thanks, > W. > > On Sun, Jun 5, 2022 at 10:52 PM Maurizio Cimadamore < > maurizio.cimadamore at oracle.com> wrote: > >> (adding hotspot-dev) >> >> Hi Wojciech, >> it is not the goal of Project Panama to obsolete Critical JNI. What we >> would like to do is, obviously, over time, get to a similar level of >> performance (as discussed elsewhere in this mailing list recently, see >> [1]). >> >> It is possible that there might be other ways to get to the same level >> (or better) of performance than the one you have (I understand that this >> is especially the case with clock_gettime, for which an intrinsified >> alternative is available in the JDK - System.nanoTime) - in general >> using native calls for things that only contains a bunch of machine >> instruction is always going to be painful. >> >> That said, I'd like somebody on the hotspot team to add more background >> on the decision of dropping support for JNI critical in 18. >> >> [1] - >> https://mail.openjdk.java.net/pipermail/panama-dev/2022-June/017046.html >> >> On 05/06/2022 22:25, Wojciech Kudla wrote: >>> Hi everyone, >>> >>> Just wanted to let you know that obsoleting Critical JNI natives is going >>> to have a very detrimental impact on performance of latency-critical >>> software in a few domains like HPC, HFT or systematic market making. >>> We heavily exploit this feature and our use case has nothing to do with >>> arrays or otherwise slippery scenarios involving JVM-controlled memory. >> The >>> simplest example is calling clock_gettime(CLOCK_REALTIME) to get a high >>> resolution timestamp. Some shops in our industry also replace parts of >> NIO >>> with hand-crafted native code for example to get access to syscalls such >> as >>> recvmsg/recvmmsg (either to get hardware timestamps or batch receive or >> any >>> other functionality otherwise unavailable in the JDK. >>> >>> JavaCritical_ variant of the native implementation is nearly 30% faster >> for >>> extremely short calls like the cases mentioned above compared to the >>> standard JNI impl. In case of clock_gettime(CLOCK_REALTIME) it's 23 nanos >>> vs 33 nanos on my box but I assure you we make a large number of such >> calls >>> in our industry and this just compounds. >>> Luckily with jdk17 we can still run with -XX:+CriticalJNINatives and get >>> the desired performance but I just checked a jdk18 build and the cost of >>> these calls is back at 33 nanos so this is performance regression. >>> >>> JavaCritical is an important part of making Java successful in high >>> performance-focused areas and taking a step back with more restrictive >>> approach in Panama would be a blow to the perception of the platform and >>> its value in our field. I'd be more than happy to provide more context if >>> needed. I realize things are fluid and there's probably still a lot of >> work >>> in progress, but wanted to make you guys aware JavaCritical is not some >>> forgotten feature no one uses. There's a whole industry and scientific >>> research that relies on this. >>> >>> Thanks, >>> Wojciech Kudla >> From wkudla.kernel at gmail.com Mon Jun 6 07:24:17 2022 From: wkudla.kernel at gmail.com (Wojciech Kudla) Date: Mon, 6 Jun 2022 08:24:17 +0100 Subject: Obsoleting JavaCritical In-Reply-To: <04248465-fee4-20ba-c2a5-217d7867c6f4@oracle.com> References: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> <04248465-fee4-20ba-c2a5-217d7867c6f4@oracle.com> Message-ID: > Yes for System.nanoTime(), but System.currentTimeMillis() reports CLOCK_REALTIME. Unfortunately System.currentTimeMillis() offers only millisecond granularity which is the reason why our industry has to resort to clock_gettime. Agreed on the nature of this capability and possible consequences. You can already use a single line of JNI or Unsafe to crash the JVM but this is clearly signalled by the platform's documentation and been the status quo for a very long time. There are groups of developers competent enough to extract a lot of value from consciously running with scissors. I've had a look at the discussions and ideas pointed to by Maurizio and agree with you David, that intrinsifying/inlining on demand would be ideal here. So far this has only been possible by forking Openjdk. Are there any plans to allow this in a pluggable way? It looks like Vladimir Ivanov was on the right track: http://mail.openjdk.java.net/pipermail/panama-dev/2015-December/000225.html Thanks, W. On Mon, Jun 6, 2022 at 7:45 AM David Holmes wrote: > On 6/06/2022 4:34 pm, Wojciech Kudla wrote: > > Thank you Maurizio, > > > > We're hopeful things will improve with time in the next few Java releases > > and can afford to stick to JDK17 for the time skipping a two or three > > versions down the road if that means maintaining performance levels our > > industry requires. > > As for intrinsified calls: sadly System.nanoTime() is not an alternative > to > > clock_gettime(CLOCK_REALTIME) as they return different time. The JDK > > obtains CLOCK_MONOTONIC IIRC. > > Yes for System.nanoTime(), but System.currentTimeMillis() reports > CLOCK_REALTIME. > > This CriticalJNINatives mechanism was not intended for general use and > was not supported in any real sense. If your "critical" native does not > behave well then it can cause issues with GC and safepoints in general. > A supported mechanism needs to be at least moderately safe (this is > native code so full safety is not achievable), but it would come down to > convention more than enforcement. And as raised in other threads on > this, perhaps what is really wanted is a way to inline, or intrinsify, > your own native code, rather than just trying to make slow native calls > slightly faster. > > Cheers, > David > ----- > > > Thanks, > > W. > > > > On Sun, Jun 5, 2022 at 10:52 PM Maurizio Cimadamore < > > maurizio.cimadamore at oracle.com> wrote: > > > >> (adding hotspot-dev) > >> > >> Hi Wojciech, > >> it is not the goal of Project Panama to obsolete Critical JNI. What we > >> would like to do is, obviously, over time, get to a similar level of > >> performance (as discussed elsewhere in this mailing list recently, see > >> [1]). > >> > >> It is possible that there might be other ways to get to the same level > >> (or better) of performance than the one you have (I understand that this > >> is especially the case with clock_gettime, for which an intrinsified > >> alternative is available in the JDK - System.nanoTime) - in general > >> using native calls for things that only contains a bunch of machine > >> instruction is always going to be painful. > >> > >> That said, I'd like somebody on the hotspot team to add more background > >> on the decision of dropping support for JNI critical in 18. > >> > >> [1] - > >> > https://mail.openjdk.java.net/pipermail/panama-dev/2022-June/017046.html > >> > >> On 05/06/2022 22:25, Wojciech Kudla wrote: > >>> Hi everyone, > >>> > >>> Just wanted to let you know that obsoleting Critical JNI natives is > going > >>> to have a very detrimental impact on performance of latency-critical > >>> software in a few domains like HPC, HFT or systematic market making. > >>> We heavily exploit this feature and our use case has nothing to do with > >>> arrays or otherwise slippery scenarios involving JVM-controlled memory. > >> The > >>> simplest example is calling clock_gettime(CLOCK_REALTIME) to get a high > >>> resolution timestamp. Some shops in our industry also replace parts of > >> NIO > >>> with hand-crafted native code for example to get access to syscalls > such > >> as > >>> recvmsg/recvmmsg (either to get hardware timestamps or batch receive or > >> any > >>> other functionality otherwise unavailable in the JDK. > >>> > >>> JavaCritical_ variant of the native implementation is nearly 30% faster > >> for > >>> extremely short calls like the cases mentioned above compared to the > >>> standard JNI impl. In case of clock_gettime(CLOCK_REALTIME) it's 23 > nanos > >>> vs 33 nanos on my box but I assure you we make a large number of such > >> calls > >>> in our industry and this just compounds. > >>> Luckily with jdk17 we can still run with -XX:+CriticalJNINatives and > get > >>> the desired performance but I just checked a jdk18 build and the cost > of > >>> these calls is back at 33 nanos so this is performance regression. > >>> > >>> JavaCritical is an important part of making Java successful in high > >>> performance-focused areas and taking a step back with more restrictive > >>> approach in Panama would be a blow to the perception of the platform > and > >>> its value in our field. I'd be more than happy to provide more context > if > >>> needed. I realize things are fluid and there's probably still a lot of > >> work > >>> in progress, but wanted to make you guys aware JavaCritical is not some > >>> forgotten feature no one uses. There's a whole industry and scientific > >>> research that relies on this. > >>> > >>> Thanks, > >>> Wojciech Kudla > >> > From duncan.gittins at gmail.com Mon Jun 6 09:37:14 2022 From: duncan.gittins at gmail.com (Duncan Gittins) Date: Mon, 6 Jun 2022 10:37:14 +0100 Subject: jextract JDK19 Windows enum handling In-Reply-To: <79bff5bd-bed7-40ad-c076-0dc935048dd8@oracle.com> References: <79bff5bd-bed7-40ad-c076-0dc935048dd8@oracle.com> Message-ID: I hope it would be possible to deal with both ways for (2). The --include-enum option works very well when there are a few values per enum like SLGP_FLAGS (even though I only need SLGP_SHORTPATH), but there are some enums which contain many more definitions and the view of the generated code and IDE code completion) looks very bloated when it contains so many unreferenced definitions. Due to the bug (1) my compiled jextract jar is 45% bigger than under JDK18 jextract - that is quite a jump if my Java code was only dependent on one item from each of those enums that are incorrectly added. Kind regards Duncan On Sun, 5 Jun 2022 at 22:35, Maurizio Cimadamore < maurizio.cimadamore at oracle.com> wrote: > Hi Dunan, > (1) looks like a bug. I'll need to think about (2). I see where you are > coming from. At the same time it's tricky, because we filter out most > stuff by "name" (e.g. struct name, function name, etc.) - and we do not > provide functionality to filter out at _deeper_ levels of nesting. The > fact that constants worked the way they did was more of an happy > accident rather than the result of a conscious decision. > > While we could go back to previous behavior, I feel like, in some cases > at least, a developer might want to include an entire enum, w/o really > having to enumerate all the constants. > > Maurizio > > On 05/06/2022 13:47, Duncan Gittins wrote: > > I'm a bit behind with all latest Panama messages so apologies if this > > repeats existing issues. I've been testing out latest jextract from > master > > branch, along with jdk19 - both with non-incubator foreign package names. > > > > There are some unexpected enum values in extractions, perhaps related to > > https://bugs.openjdk.java.net/browse/CODETOOLS-7903198 > > > > Test with header file "Shell32.h" which contains "#include > " > > > > 1) With latest JDK19 branch I see an enum that I don't use, and this > > appears every time regardless of "--include--xxx" flags: > > > > jextract --source -lshell32 -t win.shell --output shell19.src > Shell32.h > > --include-enum THIS_DOES_NOT_EXIST > > => Shell32_h contains 100+ values of "WELL_KNOWN_SID_TYPE" > > > > [ BTW: It would be nice if jextract had a mode (eg "--show-warnings") > which > > reported "No such enum: THIS_DOES_NOT_EXIST".] > > > > 2) Is there a way to extract one enum value SLGP_SHORTPATH with JDK19 > > jextract? > > > > In previous JDK18 jextract release I could extract a single enum value > > SLGP_SHORTPATH (with "--include-macro" which was changed in > > CODETOOLS-7903198) > > > > jextract --source -lshell32 -t win.shell --output shell18.src > > Shell32.h --include-macro SLGP_SHORTPATH > > => class Shell32_h { // omitted lines with Constants$root.... > > public static int SLGP_SHORTPATH() { return (int)1L; } > > } > > > > Adding "--include-enum SLGP_FLAGS" will introduce new definitions > including > > SLGP_SHORTPATH (and WELL_KNOWN_SID_TYPE), but it would be nicer to have > > just a single definition for the value "SLGP_SHORTPATH". > > > > Kind regards > > > > Duncan > From info at j-kuhn.de Mon Jun 6 11:53:10 2022 From: info at j-kuhn.de (Johannes Kuhn) Date: Mon, 6 Jun 2022 13:53:10 +0200 Subject: Enable native access for modules not in the boot layer Message-ID: <0bd60934-aa6d-35af-dc39-b46e7722197c@j-kuhn.de> In a short discussion with Jorn Vernee I asked how to enable native access for modules not present in the boot layer, and got this answer: > I don't think we have an API for doing that at the moment. But, I didn't really work on this part. If you have a small reproducer, please send it into panama-dev at openjdk.java.net Reproducer: https://github.com/DasBrain/PanamaRuntimeModule I sincerely believe that this is not an unreasonable requirement. But we can argue over that :) ---- After looking a bit deeper into how native access is implemented, I also came up with a prototype: https://github.com/openjdk/jdk/pull/9040/files It adds a `Module.enableNativeAccess()` method. That method is itself restricted - and can be used to "delegate" a module's own native access to an other module, similar to how `Module.addOpens` works. I also added `boolean Module.isNativeAccessEnabled()` - which was previously only visible through the shared secrets - but when exposing the enable part, then exposing the check part also makes sense IMHO. ---- I would be happy to hear your opinions and suggestions on that topic. Things doesn't have to be implemented that way. It's just a suggestion (where I am sure that it does at least work _technically_). - Johannes From maurizio.cimadamore at oracle.com Mon Jun 6 21:03:48 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 6 Jun 2022 22:03:48 +0100 Subject: Enable native access for modules not in the boot layer In-Reply-To: <0bd60934-aa6d-35af-dc39-b46e7722197c@j-kuhn.de> References: <0bd60934-aa6d-35af-dc39-b46e7722197c@j-kuhn.de> Message-ID: <8ad3c0af-a949-9f9c-689b-38a3fe9e0efd@oracle.com> Hi Johannes, I think this is a direction we wanted to explore, but we didn't have time to (but it's something we will have to look into before the API is finalized). The approach you propose is similar to some ideas I've exchanged with Chris and others few months ago, and I agree that it would be useful to support something like that, for dynamic loading of modules. One note: I believe your code will have better chances in 19, since now lack of --enable-native-access will only result in a warning, not an error. That should give some of the currently unsupported use cases some way to get up and running, while we add support for --enable-native-access to all the corresponding areas. Thanks Maurizio On 06/06/2022 12:53, Johannes Kuhn wrote: > In a short discussion with Jorn Vernee I asked how to enable native > access for modules not present in the boot layer, and got this answer: > > > I don't think we have an API for doing that at the moment. But, I > didn't really work on this part. If you have a small reproducer, > please send it into panama-dev at openjdk.java.net > > Reproducer: https://github.com/DasBrain/PanamaRuntimeModule > > I sincerely believe that this is not an unreasonable requirement. > But we can argue over that :) > > ---- > > After looking a bit deeper into how native access is implemented, I > also came up with a prototype: > > https://github.com/openjdk/jdk/pull/9040/files > > It adds a `Module.enableNativeAccess()` method. That method is itself > restricted - and can be used to "delegate" a module's own native > access to an other module, similar to how `Module.addOpens` works. > > I also added `boolean Module.isNativeAccessEnabled()` - which was > previously only visible through the shared secrets - but when exposing > the enable part, then exposing the check part also makes sense IMHO. > > ---- > > I would be happy to hear your opinions and suggestions on that topic. > Things doesn't have to be implemented that way. It's just a suggestion > (where I am sure that it does at least work _technically_). > > - Johannes From info at j-kuhn.de Mon Jun 6 21:24:01 2022 From: info at j-kuhn.de (Johannes Kuhn) Date: Mon, 6 Jun 2022 23:24:01 +0200 Subject: Enable native access for modules not in the boot layer In-Reply-To: <8ad3c0af-a949-9f9c-689b-38a3fe9e0efd@oracle.com> References: <0bd60934-aa6d-35af-dc39-b46e7722197c@j-kuhn.de> <8ad3c0af-a949-9f9c-689b-38a3fe9e0efd@oracle.com> Message-ID: <4b267d4b-6897-4b09-c6eb-6b108e0ea36b@j-kuhn.de> On 06-Jun-22 23:03, Maurizio Cimadamore wrote: > Hi Johannes, > I think this is a direction we wanted to explore, but we didn't have > time to (but it's something we will have to look into before the API is > finalized). > > The approach you propose is similar to some ideas I've exchanged with > Chris and others few months ago, and I agree that it would be useful to > support something like that, for dynamic loading of modules. The same applies to delegating opens/exports. (exports can not be delegated - bad if you want to split a module that relies on consumer modules exporting packages to your module...) I am happy to hear that this problem is known and therefore will be solved. My prototype is just meant as a suggestion - and make my point (hopefully) more clear. > > One note: I believe your code will have better chances in 19, since now > lack of --enable-native-access will only result in a warning, not an > error. That should give some of the currently unsupported use cases some > way to get up and running, while we add support for > --enable-native-access to all the corresponding areas. I already have a reproducer for 19 (same repo, different branch): https://github.com/DasBrain/PanamaRuntimeModule/tree/jdk-19 run.bat/run.sh has still the --enable-native-access - but if that is removed, I get the following warning: WARNING: A restricted method in java.lang.foreign.Linker has been called WARNING: java.lang.foreign.Linker::nativeLinker has been called by module plugin WARNING: Use --enable-native-access=plugin to avoid a warning for this module Ironically, if I add that command line parameter (back), I get an other warning and an exception: WARNING: Unknown module: plugin specified to --enable-native-access Exception in thread "main" java.lang.IllegalCallerException: Illegal native access from: module plugin at java.base/jdk.internal.reflect.Reflection.ensureNativeAccess(Reflection.java:125) at java.base/java.lang.foreign.Linker.nativeLinker(Linker.java:197) at plugin/plugin.PanamaTest.main(PanamaTest.java:8) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) at java.base/java.lang.reflect.Method.invoke(Method.java:578) at launcher/launcher.Launcher.main(Launcher.java:24) If you want to improve the warning, check if the caller module is in the boot layer and omit the last line :). - Johannes > > Thanks > Maurizio > > On 06/06/2022 12:53, Johannes Kuhn wrote: >> In a short discussion with Jorn Vernee I asked how to enable native >> access for modules not present in the boot layer, and got this answer: >> >> > I don't think we have an API for doing that at the moment. But, I >> didn't really work on this part. If you have a small reproducer, >> please send it into panama-dev at openjdk.java.net >> >> Reproducer: https://github.com/DasBrain/PanamaRuntimeModule >> >> I sincerely believe that this is not an unreasonable requirement. >> But we can argue over that :) >> >> ---- >> >> After looking a bit deeper into how native access is implemented, I >> also came up with a prototype: >> >> https://github.com/openjdk/jdk/pull/9040/files >> >> It adds a `Module.enableNativeAccess()` method. That method is itself >> restricted - and can be used to "delegate" a module's own native >> access to an other module, similar to how `Module.addOpens` works. >> >> I also added `boolean Module.isNativeAccessEnabled()` - which was >> previously only visible through the shared secrets - but when exposing >> the enable part, then exposing the check part also makes sense IMHO. >> >> ---- >> >> I would be happy to hear your opinions and suggestions on that topic. >> Things doesn't have to be implemented that way. It's just a suggestion >> (where I am sure that it does at least work _technically_). >> >> - Johannes From mark.reinhold at oracle.com Tue Jun 7 17:31:08 2022 From: mark.reinhold at oracle.com (mark.reinhold at oracle.com) Date: Tue, 07 Jun 2022 10:31:08 -0700 Subject: Obsoleting JavaCritical In-Reply-To: References: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> <04248465-fee4-20ba-c2a5-217d7867c6f4@oracle.com> Message-ID: <20220607103108.900830823@eggemoggin.niobe.net> 2022/6/6 0:24:17 -0700, wkudla.kernel at gmail.com: >> Yes for System.nanoTime(), but System.currentTimeMillis() reports >> CLOCK_REALTIME. > > Unfortunately System.currentTimeMillis() offers only millisecond > granularity which is the reason why our industry has to resort to > clock_gettime. If the platform included, say, an intrinsified System.nanoRealTime() method that returned clock_gettime(CLOCK_REALTIME), how much would that help developers in your unnamed industry? In a similar vein, if people are finding it necessary to ?replace parts of NIO with hand-crafted native code? then it would be interesting to understand what their requirements are. Some simple enhancements to the NIO API would be much less costly to design and implement than a generalized user-level native-call intrinsification mechanism. - Mark From themode at outlook.fr Tue Jun 7 19:03:21 2022 From: themode at outlook.fr (Felix Cravic) Date: Tue, 7 Jun 2022 19:03:21 +0000 Subject: Obsoleting JavaCritical Message-ID: ? Some simple enhancements to ? the NIO API would be much less costly to design and implement than a ? generalized user-level native-call intrinsification mechanism. If such intrinsic API came to light, wouldn?t it be fair to assume its use in the core libs as well? If not, what would make current hotspot c++ intrinsics superior? From maurizio.cimadamore at oracle.com Wed Jun 8 11:13:46 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 8 Jun 2022 12:13:46 +0100 Subject: jextract JDK19 Windows enum handling In-Reply-To: References: <79bff5bd-bed7-40ad-c076-0dc935048dd8@oracle.com> Message-ID: <848a35fc-88f0-1657-7a3a-ea6ca11a5bf5@oracle.com> After thinking some more, I don't think there's a sane way to keep both --include-enums and having a more fine-grained enum constant option. The mechanism we have now is very simple, where jextract just dumps whatever it finds on a set of disjoint include-xyz flags. We could in principle tweak the impl so that --include-enum included "all constants" whereas if that flag is missing, it falls back to use --include-constant - but then what would jextract dump? Since the boundary between enums and defined constants is so blurry in C, I'm inclined to just revert. Maurizio On 06/06/2022 10:37, Duncan Gittins wrote: > I hope it would be possible to deal with both ways for (2). The > --include-enum?option works very well when there are a few values per > enum like SLGP_FLAGS (even though I only need SLGP_SHORTPATH), but > there are some enums which contain many more definitions and the view > of the generated code and IDE code completion) looks very bloated when > it contains so many unreferenced definitions. > > Due to the bug (1) my compiled jextract jar is 45% bigger than under > JDK18 jextract - that is quite a jump if my Java code was only > dependent on one item from each of those enums that are incorrectly added. > > Kind regards > > Duncan > > On Sun, 5 Jun 2022 at 22:35, Maurizio Cimadamore > wrote: > > Hi Dunan, > (1) looks like a bug. I'll need to think about (2). I see where > you are > coming from. At the same time it's tricky, because we filter out most > stuff by "name" (e.g. struct name, function name, etc.) - and we > do not > provide functionality to filter out at _deeper_ levels of nesting. > The > fact that constants worked the way they did was more of an happy > accident rather than the result of a conscious decision. > > While we could go back to previous behavior, I feel like, in some > cases > at least, a developer might want to include an entire enum, w/o > really > having to enumerate all the constants. > > Maurizio > > On 05/06/2022 13:47, Duncan Gittins wrote: > > I'm a bit behind with all latest Panama messages so apologies if > this > > repeats existing issues. I've been testing out latest jextract > from master > > branch, along with jdk19 - both with non-incubator foreign > package names. > > > > There are some unexpected enum values in extractions, perhaps > related to > > https://bugs.openjdk.java.net/browse/CODETOOLS-7903198 > > > > Test with header file "Shell32.h" which contains "#include > " > > > > 1) With latest JDK19 branch I see an enum that I don't use, and this > > appears every time regardless of "--include--xxx" flags: > > > >? ? ? jextract --source -lshell32 -t win.shell --output > shell19.src Shell32.h > > --include-enum THIS_DOES_NOT_EXIST > >? ? ? => Shell32_h contains 100+ values of "WELL_KNOWN_SID_TYPE" > > > > [ BTW: It would be nice if jextract had a mode (eg > "--show-warnings") which > > reported "No such enum: THIS_DOES_NOT_EXIST".] > > > > 2) Is there a way to extract one enum value SLGP_SHORTPATH with > JDK19 > > jextract? > > > > In previous JDK18 jextract release I could extract a single enum > value > > SLGP_SHORTPATH (with "--include-macro" which was changed in > > CODETOOLS-7903198) > > > >? ? ? ?jextract --source -lshell32 -t win.shell --output shell18.src > > Shell32.h --include-macro SLGP_SHORTPATH > > =>? class Shell32_h? { // omitted lines with Constants$root.... > >? ? ? ? ? public static int SLGP_SHORTPATH() { return (int)1L;? } > >? ? ? } > > > > Adding "--include-enum SLGP_FLAGS" will introduce new > definitions including > > SLGP_SHORTPATH (and WELL_KNOWN_SID_TYPE), but it would be nicer > to have > > just a single definition for the value "SLGP_SHORTPATH". > > > > Kind regards > > > > Duncan > From clemens.lanthaler at itarchitects.at Wed Jun 8 18:37:46 2022 From: clemens.lanthaler at itarchitects.at (Clemens Lanthaler) Date: Wed, 8 Jun 2022 20:37:46 +0200 Subject: Issue in combination with JLink/JPackage In-Reply-To: References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> Message-ID: Hello Maurizio, here are the logs with all kind of setups. The name of the logfile tells what I have tried. But basically libhheiffx is not working also under JDK19. Librawfx is working if compiled for jdk19 or jdk18.0.1. What I have seen is that the JVM is no longer been crashing and that the jpackage image produces the same issues than if you run it via maven/IDE. Hopfully that helps you. best regards, Clemens Am 05.06.22 um 23:29 schrieb Maurizio Cimadamore: > > > On 05/06/2022 11:28, Clemens Lanthaler wrote: >> Hello Maurizio, >> >> I have now updated all my panama project with the Panama Build >> 19-panama+1-13. Now my LibrawFX library is working as expected, but >> my second lib LibHeifFX is not working and shows the same error >> message than before. >> >> The difference between the two native libs is that LibrawFX is thread >> safe and LibheifFX is not. Maybe the reason for only showing the >> issue on Libheif could be also the loading order. >> >> From the issue description the fix is already included (build 11) but >> it seems that there is another issue behind it. >> >> What I did: >> - Generate with jextract from Panama Build 19-panama+1-13 >> - Run with JDK 18.0.1 >> >> Must I run it with JDK 19 to be working ? But if that is the case >> than LibrawFX should not be working as well. Give me feedback if you >> need any logs additionally. > Hi Clemens, > > I believe you need to run with 19 to take advantage of the fix - e.g. > to make sure that System.loadLibrary and Panama library loading truly > act as orthogonal. > > Let's start from there and see where we get - please post any stack > trace that could be relevant to diagnose this. > > Thanks > Maurizio > >> >> best regards, >> Clemens >> >> >> Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: >>> >>> Hi Clemens, >>> no worries - I will let you know when we have an EA with the fix >>> available (we'll probably wait to accumulate some other >>> fixes/features as well). >>> >>> Thanks >>> Maurizio >>> >>> On 18/02/2022 22:04, Clemens Lanthaler wrote: >>>> Hi, >>>> Thanks allot for the info. I have seen that the fix will be part of >>>> JDK19 and frankly speeking I have never build a jdk by myself. I >>>> would appreciate if there is a chance to get a binary of this pre >>>> build including panama. >>>> >>>> Thank you in advance. >>>> >>>> best regards, >>>> Clemens >>>> >>>>> Maurizio Cimadamore hat am >>>>> 18.02.2022 15:30 geschrieben: >>>>> >>>>> >>>>> Hi, >>>>> quick update on this. The problem with library loading in JDK >>>>> being too >>>>> strict for Panama has been fixed upstream (thanks Mandy!): >>>>> >>>>> https://git.openjdk.java.net/jdk/pull/7435 >>>>> >>>>> >>>>> We've just merged those changes into the Panama repo - which means >>>>> that, >>>>> if you build the latest version of the repo, you should be able to >>>>> verify that the workarounds are no longer required. >>>>> >>>>> Please let us know how that goes. >>>>> >>>>> Cheers >>>>> Maurizio >>>>> >>>>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>>>> I have managed to create a simple reproducer on Windows: >>>>>> import jdk.incubator.foreign.CLinker; >>>>>> public class TestLookup { >>>>>> ??? public static void main(String[] args) { >>>>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>>>> ??????? CLinker.systemCLinker().lookup("foo"); >>>>>> ??? } >>>>>> } >>>>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>>>> ucrtbase is already loaded by the application class loader. >>>>>> This seems to be a bug in the library loading mechanism - we do >>>>>> have a >>>>>> "raw" library loading mechanism that is not subject to JNI >>>>>> restrictions: >>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>>>> >>>>>> >>>>> > >>>>>> This library loader ends up calling this method which contains a >>>>>> class >>>>>> loader check: >>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>>>> >>>>>> >>>>> > >>>>>> I believe this loader check should be guarded by a "isJNI" flag, >>>>>> as we >>>>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>>>> Cheers >>>>>> Maurizio >>>>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>>>> No problem. >>>>> >> I've filed this: >>>>> >> >>>>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>>>> >> >>>>> >> Cheers >>>>> >> Maurizio >>>>> >> >>>>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>>>> >>> Hi Maurizio, >>>>> >>> >>>>> >>> thanks allot for your help and for the investigation. >>>>> >>> >>>>> >>> best regards, >>>>> >>> Clemens >>>>> >>> >>>>> >>> >>>>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>>>> >>>> wrote: >>>>> >>>> >>>>> >>>> >>>>> >>>> >>>>> >>>> Hi Clemens (it seems like your message got dropped by the >>>>> mailing >>>>> >>>> list, not sure why). >>>>> >>>> >>>>> >>>> Your message seems to point at some bad interaction between >>>>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and >>>>> only one >>>>> >>>> can win). Apparently, the Panama code isn't executed early >>>>> enough >>>>> >>>> in the jpackage case. >>>>> >>>> >>>>> >>>> We'll need to investigate more. >>>>> >>>> >>>>> >>>> Maurizio >>>>> >>>> >>>>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>>>> >>>>> Hello everybody, >>>>> >>>>> >>>>> >>>>> I am the developer of project librawfx >>>>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>>>> >>>>> (github.com/lanthale/photoslide). >>>>> >>>>> >>>>> >>>>> At the begining of Photoslide the whole app was modularized and >>>>> >>>>> therefore all was working including librawfx which is using >>>>> >>>>> project Panama. After a while I had to change to a mixed >>>>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>>>> >>>>> environment and deployed my app PhotoSlide again. Under >>>>> Linux and >>>>> >>>>> OSX all is working as expected. The problem exists only under >>>>> >>>>> Windows. Furthermore it exists only if I am creating a >>>>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>>>> >>>>> working as expected. Only the JPackage launcher have the >>>>> issue and >>>>> >>>>> I have no clue what the root cause is. >>>>> >>>>> >>>>> >>>>> The exception I am always seeing is: >>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>> >>>>> SCHWERWIEGEND: null >>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>> >>>>> classloader >>>>> >>>>> (Full stacktrace below) >>>>> >>>>> >>>>> >>>>> How can you reproduce the issue: >>>>> >>>>> >>>>> >>>>> ?1. Git clone project >>>>> https://github.com/lanthale/JeditFX.git >>>>> >>>>> >>>>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>>>> >>>>> ?3. Click on the open icon in the toolbar and select file >>>>> >>>>> >>>>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>>>> >>>>> >>>>> >>>>> >>>>> ?4. The app is showing the image below the textarea >>>>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn -Ppackage >>>>> clean >>>>> >>>>> ??? install" >>>>> >>>>> ?6. Start the exe jeditfx.exe in directory ".\target\jeditfx" >>>>> >>>>> ?7. Open the same file again -> No image is shown below the >>>>> text >>>>> >>>>> ??? area and the exception is thrown in the background >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> I have tried many things but it is only happening if I have >>>>> >>>>> OpenJFX+JDK Modules on the module path and the rest of the jar >>>>> >>>>> files on the classpath. All libs which are not having any >>>>> Panama >>>>> >>>>> code inside of the app are working perfectly and it is only >>>>> >>>>> happening on Windows. >>>>> >>>>> >>>>> >>>>> Thank you in advance for your help! >>>>> >>>>> >>>>> >>>>> best regards, >>>>> >>>>> Clemens >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> *Full stacktrace from Photoslide:* >>>>> >>>>> >>>>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>>>> >>>>> createSearchIndex >>>>> >>>>> INFORMATION: Start time create searchDB: >>>>> 2022-02-03T19:44:41.693455 >>>>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>>>> >>>>> lambda$checkForSoftwareUpdates$2 >>>>> >>>>> INFORMATION: No new version found! >>>>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>>>> >>>>> lambda$createSearchIndex$0 >>>>> >>>>> INFORMATION: End time create searchDB: >>>>> 2022-02-03T19:44:43.186194400 >>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>> >>>>> SCHWERWIEGEND: null >>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>> >>>>> classloader >>>>> >>>>> at >>>>> >>>>> >>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>>>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>>>> >>>>> at >>>>> >>>>> >>>>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>>>> >>>>> >>>>> >>>>> >>>>> at >>>>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>>>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>>>> >>>>> Source) >>>>> >>>>> at javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>>>> >>>>> >>>>> >>>>> >>>>> at >>>>> >>>>> >>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>>>> >>>>> >>>>> >>>>> >>>>> at >>>>> >>>>> >>>>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>>>> >>>>> >>>>> Source) >>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>>>> >>>>> Source) >>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>>>> >>>>> Source) >>>>> >>>>> at >>>>> >>>>> >>>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>>>> >>>>> Source) >>>>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) >> >> -- >> ITArchitects >> CEO: B.Sc. Clemens Lanthaler >> Forchachstrasse 3 >> A-6166 Fulpmes >> Tel.: +43 (0)650 855 2954 >> email:office at itarchitects.at >> homepage:http://www.itarchitects.at >> ------------------------------------------------- >> Notice: This e-mail and any attachments are confidential and may be privileged. >> If you are not the intended recipient, notify the sender immediately, destroy all >> copies from your system and do not disclose or use the information for any purpose. >> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. -- ITArchitects CEO: B.Sc. Clemens Lanthaler Forchachstrasse 3 A-6166 Fulpmes Tel.: +43 (0)650 855 2954 email:office at itarchitects.at homepage:http://www.itarchitects.at ------------------------------------------------- Notice: This e-mail and any attachments are confidential and may be privileged. If you are not the intended recipient, notify the sender immediately, destroy all copies from your system and do not disclose or use the information for any purpose. Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. -------------- next part -------------- Juni 08, 2022 6:06:50 PM org.photoslide.search.SearchIndex createSearchIndex INFORMATION: Start time create searchDB: 2022-06-08T18:06:50.278065300 Juni 08, 2022 6:06:50 PM org.photoslide.SoftwareUpdater lambda$checkForSoftwareUpdates$2 INFORMATION: No new version found! Juni 08, 2022 6:06:50 PM org.photoslide.search.SearchIndex lambda$createSearchIndex$0 INFORMATION: End time create searchDB: 2022-06-08T18:06:50.762949600 Juni 08, 2022 6:09:50 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libheif.win.constants$2 at org.libheif.win.heif_h.heif_context_alloc(heif_h.java:413) at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:109) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.UnsatisfiedLinkError: Native Library C:\Windows\System32\ucrtbase.dll already loaded in another classloader [in thread "mediaFileLoaderThread-24-thread-1"] at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown Source) at jdk.incubator.foreign/jdk.incubator.foreign.CLinker.lookup(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$1(RuntimeHelper.java:43) at java.base/java.util.Optional.or(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$2(RuntimeHelper.java:43) at org.libheif.win.RuntimeHelper.downcallHandle(RuntimeHelper.java:60) at org.libheif.win.constants$2.(constants$2.java:15) ... 21 more Juni 08, 2022 6:09:50 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.UnsatisfiedLinkError: Native Library C:\Windows\System32\ucrtbase.dll already loaded in another classloader at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown Source) at jdk.incubator.foreign/jdk.incubator.foreign.CLinker.lookup(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$1(RuntimeHelper.java:43) at java.base/java.util.Optional.or(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$2(RuntimeHelper.java:43) at org.libheif.win.RuntimeHelper.downcallHandle(RuntimeHelper.java:60) at org.libheif.win.constants$2.(constants$2.java:15) at org.libheif.win.heif_h.heif_context_alloc(heif_h.java:413) at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:109) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) -------------- next part -------------- Juni 08, 2022 8:27:32 PM org.photoslide.SoftwareUpdater lambda$checkForSoftwareUpdates$2 INFORMATION: No new version found! Juni 08, 2022 8:27:33 PM org.photoslide.search.SearchIndex createSearchIndex INFORMATION: Start time create searchDB: 2022-06-08T20:27:33.233146700 Juni 08, 2022 8:27:33 PM org.photoslide.search.SearchIndex lambda$createSearchIndex$0 INFORMATION: End time create searchDB: 2022-06-08T20:27:33.354121700 Juni 08, 2022 8:30:21 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:21 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:25 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:25 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:32 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:32 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:36 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:36 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:36 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.RuntimeException: Uncompilable code - cannot find symbol symbol: method nativeAllocator(jdk.incubator.foreign.ResourceScope) location: interface jdk.incubator.foreign.SegmentAllocator at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:1) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Juni 08, 2022 8:30:36 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.RuntimeException: Uncompilable code - cannot find symbol symbol: method nativeAllocator(jdk.incubator.foreign.ResourceScope) location: interface jdk.incubator.foreign.SegmentAllocator at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:1) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Juni 08, 2022 8:30:41 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:30:41 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:01 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:02 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:10 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:11 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:13 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:13 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 8:31:14 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.RuntimeException: Uncompilable code - cannot find symbol symbol: method nativeAllocator(jdk.incubator.foreign.ResourceScope) location: interface jdk.incubator.foreign.SegmentAllocator at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:1) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Juni 08, 2022 8:31:14 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.RuntimeException: Uncompilable code - cannot find symbol symbol: method nativeAllocator(jdk.incubator.foreign.ResourceScope) location: interface jdk.incubator.foreign.SegmentAllocator at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:1) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -------------- next part -------------- Juni 07, 2022 3:48:10 PM org.photoslide.search.SearchIndex createSearchIndex INFORMATION: Start time create searchDB: 2022-06-07T15:48:10.674087100 Juni 07, 2022 3:48:10 PM org.photoslide.SoftwareUpdater lambda$checkForSoftwareUpdates$2 INFORMATION: No new version found! Juni 07, 2022 3:48:10 PM org.photoslide.search.SearchIndex lambda$createSearchIndex$0 INFORMATION: End time create searchDB: 2022-06-07T15:48:10.993077 Juni 07, 2022 3:48:20 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:48:20 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:04:46 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:04:46 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:04:50 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Juni 08, 2022 6:04:52 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:52 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:54 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:56 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:56 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:56 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:57 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:04:59 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:05:00 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:05:02 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:05:04 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:05:05 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-20-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 08, 2022 6:05:07 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:07 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:16 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:16 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:20 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:20 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:05:20 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.UnsatisfiedLinkError: Native Library C:\Windows\System32\ucrtbase.dll already loaded in another classloader at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown Source) at jdk.incubator.foreign/jdk.incubator.foreign.CLinker.lookup(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$1(RuntimeHelper.java:43) at java.base/java.util.Optional.or(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$2(RuntimeHelper.java:43) at org.libheif.win.RuntimeHelper.downcallHandle(RuntimeHelper.java:60) at org.libheif.win.constants$2.(constants$2.java:15) at org.libheif.win.heif_h.heif_context_alloc(heif_h.java:413) at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:109) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Juni 08, 2022 6:05:20 PM org.libheiffx.HEIFImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libheif.win.constants$2 at org.libheif.win.heif_h.heif_context_alloc(heif_h.java:413) at org.libheiffx.LibheifImage.readPixelDataFromStream(LibheifImage.java:109) at org.libheiffx.HEIFImageLoader.getImageData(HEIFImageLoader.java:172) at org.libheiffx.HEIFImageLoader.load(HEIFImageLoader.java:83) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown Source) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Unknown Source) at javafx.graphics at 18/javafx.scene.image.Image.(Unknown Source) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.UnsatisfiedLinkError: Native Library C:\Windows\System32\ucrtbase.dll already loaded in another classloader [in thread "mediaFileLoaderThread-32-thread-1"] at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown Source) at jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown Source) at jdk.incubator.foreign/jdk.incubator.foreign.CLinker.lookup(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$1(RuntimeHelper.java:43) at java.base/java.util.Optional.or(Unknown Source) at org.libheif.win.RuntimeHelper.lambda$static$2(RuntimeHelper.java:43) at org.libheif.win.RuntimeHelper.downcallHandle(RuntimeHelper.java:60) at org.libheif.win.constants$2.(constants$2.java:15) ... 21 more -------------- next part -------------- Juni 07, 2022 3:42:21 PM org.photoslide.SoftwareUpdater lambda$checkForSoftwareUpdates$2 INFORMATION: No new version found! Juni 07, 2022 3:42:21 PM org.photoslide.search.SearchIndex createSearchIndex INFORMATION: Start time create searchDB: 2022-06-07T15:42:21.461059300 Juni 07, 2022 3:42:22 PM org.photoslide.search.SearchIndex lambda$createSearchIndex$0 INFORMATION: End time create searchDB: 2022-06-07T15:42:22.090067800 Juni 07, 2022 3:42:28 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:29 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:33 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:33 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:39 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:39 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:44 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:44 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:59 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:42:59 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 07, 2022 3:43:03 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Juni 07, 2022 3:43:05 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:05 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:07 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:08 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:09 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:09 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:10 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:12 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:14 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:15 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:18 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more Juni 07, 2022 3:43:20 PM org.librawfx.RAWImageLoader load SCHWERWIEGEND: null java.lang.NoClassDefFoundError: Could not initialize class org.libraw.win.libraw_h at org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) at org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:390) at javafx.graphics at 18/com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:345) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:127) at javafx.graphics at 18/com.sun.javafx.tk.quantum.PrismImageLoader2.(PrismImageLoader2.java:71) at javafx.graphics at 18/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(QuantumToolkit.java:785) at javafx.graphics at 18/javafx.scene.image.Image.loadImage(Image.java:1073) at javafx.graphics at 18/javafx.scene.image.Image.initialize(Image.java:819) at javafx.graphics at 18/javafx.scene.image.Image.(Image.java:694) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:47) at org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:44) at javafx.graphics at 18/javafx.concurrent.Task$TaskCallable.call(Task.java:1426) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.NoSuchMethodError: 'jdk.incubator.foreign.CLinker jdk.incubator.foreign.CLinker.getInstance()' [in thread "mediaFileLoaderThread-32-thread-1"] at org.libraw.win.RuntimeHelper.(RuntimeHelper.java:27) at org.libraw.win.libraw_h.(libraw_h.java:15) ... 20 more -------------- next part -------------- Juni 08, 2022 6:36:35 PM org.photoslide.SoftwareUpdater lambda$checkForSoftwareUpdates$2 INFORMATION: No new version found! Juni 08, 2022 6:36:36 PM org.photoslide.search.SearchIndex createSearchIndex INFORMATION: Start time create searchDB: 2022-06-08T18:36:36.331416 Juni 08, 2022 6:36:36 PM org.photoslide.search.SearchIndex lambda$createSearchIndex$0 INFORMATION: End time create searchDB: 2022-06-08T18:36:36.688407300 Juni 08, 2022 6:36:44 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:36:44 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:36:48 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 Juni 08, 2022 6:36:48 PM org.photoslide.datamodel.MediaFileLoader SCHWERWIEGEND: Mem: 4193764 From maurizio.cimadamore at oracle.com Wed Jun 8 20:20:38 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 8 Jun 2022 21:20:38 +0100 Subject: Issue in combination with JLink/JPackage In-Reply-To: References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> Message-ID: <1534e7e2-3592-9ecc-fa35-e652ac658bbd@oracle.com> There seems to be a combination of issues here (which seem to have little to do with library loading). In the "only-libraw-working" log, the failure has to do with code trying to call the SegmentAllocator.nativeAllocator method, that is no longer there (now MemorySession implements SegmentAllocator directly). In the "nothing-runs" log, I see references to "CLinker" - the class has been renamed to "Linker". It seems to me that the version of jextract you are using to work with 19 is not correct. You can get build a version of jextract that works with 19 here: https://github.com/openjdk/jextract (for now it has to be built manually, binaries will be made available soon - but the process is a lot simpler than building a full JDK) Hope this helps Maurizio On 08/06/2022 19:37, Clemens Lanthaler wrote: > Hello Maurizio, > > here are the logs with all kind of setups. The name of the logfile > tells what I have tried. But basically libhheiffx is not working also > under JDK19. Librawfx is working if compiled for jdk19 or jdk18.0.1. > > What I have seen is that the JVM is no longer been crashing and that > the jpackage image produces the same issues than if you run it via > maven/IDE. > > Hopfully that helps you. > > best regards, > Clemens > > > Am 05.06.22 um 23:29 schrieb Maurizio Cimadamore: >> >> >> On 05/06/2022 11:28, Clemens Lanthaler wrote: >>> Hello Maurizio, >>> >>> I have now updated all my panama project with the Panama Build >>> 19-panama+1-13. Now my LibrawFX library is working as expected, but >>> my second lib LibHeifFX is not working and shows the same error >>> message than before. >>> >>> The difference between the two native libs is that LibrawFX is >>> thread safe and LibheifFX is not. Maybe the reason for only showing >>> the issue on Libheif could be also the loading order. >>> >>> From the issue description the fix is already included (build 11) >>> but it seems that there is another issue behind it. >>> >>> What I did: >>> - Generate with jextract from Panama Build 19-panama+1-13 >>> - Run with JDK 18.0.1 >>> >>> Must I run it with JDK 19 to be working ? But if that is the case >>> than LibrawFX should not be working as well. Give me feedback if you >>> need any logs additionally. >> Hi Clemens, >> >> I believe you need to run with 19 to take advantage of the fix - e.g. >> to make sure that System.loadLibrary and Panama library loading truly >> act as orthogonal. >> >> Let's start from there and see where we get - please post any stack >> trace that could be relevant to diagnose this. >> >> Thanks >> Maurizio >> >>> >>> best regards, >>> Clemens >>> >>> >>> Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: >>>> >>>> Hi Clemens, >>>> no worries - I will let you know when we have an EA with the fix >>>> available (we'll probably wait to accumulate some other >>>> fixes/features as well). >>>> >>>> Thanks >>>> Maurizio >>>> >>>> On 18/02/2022 22:04, Clemens Lanthaler wrote: >>>>> Hi, >>>>> Thanks allot for the info. I have seen that the fix will be part >>>>> of JDK19 and frankly speeking I have never build a jdk by myself. >>>>> I would appreciate if there is a chance to get a binary of this >>>>> pre build including panama. >>>>> >>>>> Thank you in advance. >>>>> >>>>> best regards, >>>>> Clemens >>>>> >>>>>> Maurizio Cimadamore hat am >>>>>> 18.02.2022 15:30 geschrieben: >>>>>> >>>>>> >>>>>> Hi, >>>>>> quick update on this. The problem with library loading in JDK >>>>>> being too >>>>>> strict for Panama has been fixed upstream (thanks Mandy!): >>>>>> >>>>>> https://git.openjdk.java.net/jdk/pull/7435 >>>>>> >>>>>> >>>>>> We've just merged those changes into the Panama repo - which >>>>>> means that, >>>>>> if you build the latest version of the repo, you should be able to >>>>>> verify that the workarounds are no longer required. >>>>>> >>>>>> Please let us know how that goes. >>>>>> >>>>>> Cheers >>>>>> Maurizio >>>>>> >>>>>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>>>>> I have managed to create a simple reproducer on Windows: >>>>>>> import jdk.incubator.foreign.CLinker; >>>>>>> public class TestLookup { >>>>>>> ??? public static void main(String[] args) { >>>>>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>>>>> ??????? CLinker.systemCLinker().lookup("foo"); >>>>>>> ??? } >>>>>>> } >>>>>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>>>>> ucrtbase is already loaded by the application class loader. >>>>>>> This seems to be a bug in the library loading mechanism - we do >>>>>>> have a >>>>>>> "raw" library loading mechanism that is not subject to JNI >>>>>>> restrictions: >>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>>>>> >>>>>>> >>>>>> > >>>>>>> This library loader ends up calling this method which contains a >>>>>>> class >>>>>>> loader check: >>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>>>>> >>>>>>> >>>>>> > >>>>>>> I believe this loader check should be guarded by a "isJNI" flag, >>>>>>> as we >>>>>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>>>>> Cheers >>>>>>> Maurizio >>>>>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>>>>> No problem. >>>>>> >> I've filed this: >>>>>> >> >>>>>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>>>>> >> >>>>>> >> Cheers >>>>>> >> Maurizio >>>>>> >> >>>>>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>>>>> >>> Hi Maurizio, >>>>>> >>> >>>>>> >>> thanks allot for your help and for the investigation. >>>>>> >>> >>>>>> >>> best regards, >>>>>> >>> Clemens >>>>>> >>> >>>>>> >>> >>>>>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>>>>> >>>> wrote: >>>>>> >>>> >>>>>> >>>> >>>>>> >>>> >>>>>> >>>> Hi Clemens (it seems like your message got dropped by the >>>>>> mailing >>>>>> >>>> list, not sure why). >>>>>> >>>> >>>>>> >>>> Your message seems to point at some bad interaction between >>>>>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and >>>>>> only one >>>>>> >>>> can win). Apparently, the Panama code isn't executed early >>>>>> enough >>>>>> >>>> in the jpackage case. >>>>>> >>>> >>>>>> >>>> We'll need to investigate more. >>>>>> >>>> >>>>>> >>>> Maurizio >>>>>> >>>> >>>>>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>>>>> >>>>> Hello everybody, >>>>>> >>>>> >>>>>> >>>>> I am the developer of project librawfx >>>>>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>>>>> >>>>> (github.com/lanthale/photoslide). >>>>>> >>>>> >>>>>> >>>>> At the begining of Photoslide the whole app was modularized >>>>>> and >>>>>> >>>>> therefore all was working including librawfx which is using >>>>>> >>>>> project Panama. After a while I had to change to a mixed >>>>>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>>>>> >>>>> environment and deployed my app PhotoSlide again. Under >>>>>> Linux and >>>>>> >>>>> OSX all is working as expected. The problem exists only under >>>>>> >>>>> Windows. Furthermore it exists only if I am creating a >>>>>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>>>>> >>>>> working as expected. Only the JPackage launcher have the >>>>>> issue and >>>>>> >>>>> I have no clue what the root cause is. >>>>>> >>>>> >>>>>> >>>>> The exception I am always seeing is: >>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>> >>>>> SCHWERWIEGEND: null >>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>> >>>>> classloader >>>>>> >>>>> (Full stacktrace below) >>>>>> >>>>> >>>>>> >>>>> How can you reproduce the issue: >>>>>> >>>>> >>>>>> >>>>> ?1. Git clone project >>>>>> https://github.com/lanthale/JeditFX.git >>>>>> >>>>>> >>>>>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>>>>> >>>>> ?3. Click on the open icon in the toolbar and select file >>>>>> >>>>> >>>>>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>>>>> >>>>>> >>>>> >>>>>> >>>>> ?4. The app is showing the image below the textarea >>>>>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn -Ppackage >>>>>> clean >>>>>> >>>>> ??? install" >>>>>> >>>>> ?6. Start the exe jeditfx.exe in directory ".\target\jeditfx" >>>>>> >>>>> ?7. Open the same file again -> No image is shown below the >>>>>> text >>>>>> >>>>> ??? area and the exception is thrown in the background >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> I have tried many things but it is only happening if I have >>>>>> >>>>> OpenJFX+JDK Modules on the module path and the rest of the jar >>>>>> >>>>> files on the classpath. All libs which are not having any >>>>>> Panama >>>>>> >>>>> code inside of the app are working perfectly and it is only >>>>>> >>>>> happening on Windows. >>>>>> >>>>> >>>>>> >>>>> Thank you in advance for your help! >>>>>> >>>>> >>>>>> >>>>> best regards, >>>>>> >>>>> Clemens >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> *Full stacktrace from Photoslide:* >>>>>> >>>>> >>>>>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>>>>> >>>>> createSearchIndex >>>>>> >>>>> INFORMATION: Start time create searchDB: >>>>>> 2022-02-03T19:44:41.693455 >>>>>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>>>>> >>>>> lambda$checkForSoftwareUpdates$2 >>>>>> >>>>> INFORMATION: No new version found! >>>>>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>>>>> >>>>> lambda$createSearchIndex$0 >>>>>> >>>>> INFORMATION: End time create searchDB: >>>>>> 2022-02-03T19:44:43.186194400 >>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>> >>>>> SCHWERWIEGEND: null >>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>> >>>>> classloader >>>>>> >>>>> at >>>>>> >>>>> >>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>>>>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>>>>> >>>>>> >>>>> >>>>>> >>>>> at >>>>>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>>>>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown >>>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>>>>> >>>>>> >>>>> >>>>>> >>>>> at >>>>>> >>>>> >>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>>>>> >>>>>> >>>>> >>>>>> >>>>> at >>>>>> >>>>> >>>>>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>>>>> >>>>>> >>>>> Source) >>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at >>>>>> >>>>> >>>>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>>>>> >>>>> Source) >>>>>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) >>> >>> -- >>> ITArchitects >>> CEO: B.Sc. Clemens Lanthaler >>> Forchachstrasse 3 >>> A-6166 Fulpmes >>> Tel.: +43 (0)650 855 2954 >>> email:office at itarchitects.at >>> homepage:http://www.itarchitects.at >>> ------------------------------------------------- >>> Notice: This e-mail and any attachments are confidential and may be privileged. >>> If you are not the intended recipient, notify the sender immediately, destroy all >>> copies from your system and do not disclose or use the information for any purpose. >>> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >>> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >>> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >>> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. > > -- > ITArchitects > CEO: B.Sc. Clemens Lanthaler > Forchachstrasse 3 > A-6166 Fulpmes > Tel.: +43 (0)650 855 2954 > email:office at itarchitects.at > homepage:http://www.itarchitects.at > ------------------------------------------------- > Notice: This e-mail and any attachments are confidential and may be privileged. > If you are not the intended recipient, notify the sender immediately, destroy all > copies from your system and do not disclose or use the information for any purpose. > Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem > Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie > bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und > veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. From john.r.rose at oracle.com Wed Jun 8 23:01:12 2022 From: john.r.rose at oracle.com (John Rose) Date: Wed, 08 Jun 2022 16:01:12 -0700 Subject: [vectorIntrinsics] RFR: 8287289: Gather/Scatter with Index Vector In-Reply-To: References: Message-ID: On 2 Jun 2022, at 3:55, Joshua Zhu wrote: > Make sense, I will follow your suggestion and implement Gather/Scatter > operation over memory segments by int/long index. > I think besides Gather/Scatter API on MemorySegment, the existing > proof-of-concept APIs over Java arrays are still needed, right? As for > the implementation of them, I will figure out whether the way that > depends on memory segments is better. If the POC APIs are easy to emulate over newer, more general ones, then we can probably phase them out. The first step is to try to make ones with fewer assumptions about the use of memory locations to store indexes, as noted. When you say ?index? (stored in int or long vectors for S/G) do you mean a index to be scaled, that is multiplied by the access element size, to get a non-scaled byte offset? That is more convenient but less general. I think if we find that use cases are *usually* based on indexes that are scaled, we probably want to avoid giving only the non-scaled (offset-based) versions. But the non-scaled offset-based versions are more general, and under the hood they should be the primitive. The JIT should be able to strength-reduce alignment checks, if those are important. There?s no solid performance related reason to do *only* the scaled indexes and not also the non-scaled offsets. So I think the API should give choices that are related to: {op:scatter/gather}{base-address:array/MemorySegment}{element:B/S/I/J/F/D}{offset-type:int/long}{offset-storage:array/vector}{offset-mode:scaled/unscaled}. Given both offset-types seems fundamental. We are in a 32/64-bit world here. The offset-mode:scaled can be built on top of offset-mode:unscaled but ease-of-use might warrant supplying both. The offset-storage:array choice can be built on top of offset-storage:vector, and we will have to recheck ease-of-use considerations, but we should try to get rid of it. Similarly with base-address:array; it might be an ease-of-use win but I think that probably we can just as users to build that on top of the more general base-address:MemorySegment. Notice that the ?from char array? variations can go away, since you can build the same sort of access to both `short[]` and `char[]` through `MemorySegment`. Supporting all lane types is the clean design. We could cut back to {element:I/J/F/D} omitting subword types, maybe, but that doesn?t feel right to me. On on the other hand, indexes stored in subword types don?t feel right either, so for subwords the index sizes are larger than the payload sizes. ? John From clemens.lanthaler at itarchitects.at Thu Jun 9 15:46:44 2022 From: clemens.lanthaler at itarchitects.at (Clemens Lanthaler) Date: Thu, 9 Jun 2022 17:46:44 +0200 Subject: Issue in combination with JLink/JPackage In-Reply-To: <1534e7e2-3592-9ecc-fa35-e652ac658bbd@oracle.com> References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> <1534e7e2-3592-9ecc-fa35-e652ac658bbd@oracle.com> Message-ID: <6ff8e5e1-70e6-4080-0b64-b494f5517d0b@itarchitects.at> Thanks for the feedback. I must try now with a newer Jextract version because I have used the latest panama JDK19 EA release version for both libs. Curious is that one is working and the other not because the code is completely the same for both. Am 08.06.22 um 22:20 schrieb Maurizio Cimadamore: > > There seems to be a combination of issues here (which seem to have > little to do with library loading). > > In the "only-libraw-working" log, the failure has to do with code > trying to call the SegmentAllocator.nativeAllocator method, that is no > longer there (now MemorySession implements SegmentAllocator directly). > > In the "nothing-runs" log, I see references to "CLinker" - the class > has been renamed to "Linker". > > It seems to me that the version of jextract you are using to work with > 19 is not correct. > > You can get build a version of jextract that works with 19 here: > > https://github.com/openjdk/jextract > > (for now it has to be built manually, binaries will be made available > soon - but the process is a lot simpler than building a full JDK) > > Hope this helps > > Maurizio > > > On 08/06/2022 19:37, Clemens Lanthaler wrote: > >> Hello Maurizio, >> >> here are the logs with all kind of setups. The name of the logfile >> tells what I have tried. But basically libhheiffx is not working also >> under JDK19. Librawfx is working if compiled for jdk19 or jdk18.0.1. >> >> What I have seen is that the JVM is no longer been crashing and that >> the jpackage image produces the same issues than if you run it via >> maven/IDE. >> >> Hopfully that helps you. >> >> best regards, >> Clemens >> >> >> Am 05.06.22 um 23:29 schrieb Maurizio Cimadamore: >>> >>> >>> On 05/06/2022 11:28, Clemens Lanthaler wrote: >>>> Hello Maurizio, >>>> >>>> I have now updated all my panama project with the Panama Build >>>> 19-panama+1-13. Now my LibrawFX library is working as expected, but >>>> my second lib LibHeifFX is not working and shows the same error >>>> message than before. >>>> >>>> The difference between the two native libs is that LibrawFX is >>>> thread safe and LibheifFX is not. Maybe the reason for only showing >>>> the issue on Libheif could be also the loading order. >>>> >>>> From the issue description the fix is already included (build 11) >>>> but it seems that there is another issue behind it. >>>> >>>> What I did: >>>> - Generate with jextract from Panama Build 19-panama+1-13 >>>> - Run with JDK 18.0.1 >>>> >>>> Must I run it with JDK 19 to be working ? But if that is the case >>>> than LibrawFX should not be working as well. Give me feedback if >>>> you need any logs additionally. >>> Hi Clemens, >>> >>> I believe you need to run with 19 to take advantage of the fix - >>> e.g. to make sure that System.loadLibrary and Panama library loading >>> truly act as orthogonal. >>> >>> Let's start from there and see where we get - please post any stack >>> trace that could be relevant to diagnose this. >>> >>> Thanks >>> Maurizio >>> >>>> >>>> best regards, >>>> Clemens >>>> >>>> >>>> Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: >>>>> >>>>> Hi Clemens, >>>>> no worries - I will let you know when we have an EA with the fix >>>>> available (we'll probably wait to accumulate some other >>>>> fixes/features as well). >>>>> >>>>> Thanks >>>>> Maurizio >>>>> >>>>> On 18/02/2022 22:04, Clemens Lanthaler wrote: >>>>>> Hi, >>>>>> Thanks allot for the info. I have seen that the fix will be part >>>>>> of JDK19 and frankly speeking I have never build a jdk by myself. >>>>>> I would appreciate if there is a chance to get a binary of this >>>>>> pre build including panama. >>>>>> >>>>>> Thank you in advance. >>>>>> >>>>>> best regards, >>>>>> Clemens >>>>>> >>>>>>> Maurizio Cimadamore hat am >>>>>>> 18.02.2022 15:30 geschrieben: >>>>>>> >>>>>>> >>>>>>> Hi, >>>>>>> quick update on this. The problem with library loading in JDK >>>>>>> being too >>>>>>> strict for Panama has been fixed upstream (thanks Mandy!): >>>>>>> >>>>>>> https://git.openjdk.java.net/jdk/pull/7435 >>>>>>> >>>>>>> >>>>>>> We've just merged those changes into the Panama repo - which >>>>>>> means that, >>>>>>> if you build the latest version of the repo, you should be able to >>>>>>> verify that the workarounds are no longer required. >>>>>>> >>>>>>> Please let us know how that goes. >>>>>>> >>>>>>> Cheers >>>>>>> Maurizio >>>>>>> >>>>>>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>>>>>> I have managed to create a simple reproducer on Windows: >>>>>>>> import jdk.incubator.foreign.CLinker; >>>>>>>> public class TestLookup { >>>>>>>> ??? public static void main(String[] args) { >>>>>>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>>>>>> ??????? CLinker.systemCLinker().lookup("foo"); >>>>>>>> ??? } >>>>>>>> } >>>>>>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>>>>>> ucrtbase is already loaded by the application class loader. >>>>>>>> This seems to be a bug in the library loading mechanism - we do >>>>>>>> have a >>>>>>>> "raw" library loading mechanism that is not subject to JNI >>>>>>>> restrictions: >>>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>>>>>> >>>>>>>> >>>>>>> > >>>>>>>> This library loader ends up calling this method which contains >>>>>>>> a class >>>>>>>> loader check: >>>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>>>>>> >>>>>>>> >>>>>>> > >>>>>>>> I believe this loader check should be guarded by a "isJNI" >>>>>>>> flag, as we >>>>>>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>>>>>> Cheers >>>>>>>> Maurizio >>>>>>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>>>>>> No problem. >>>>>>> >> I've filed this: >>>>>>> >> >>>>>>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>>>>>> >> >>>>>>> >> Cheers >>>>>>> >> Maurizio >>>>>>> >> >>>>>>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>>>>>> >>> Hi Maurizio, >>>>>>> >>> >>>>>>> >>> thanks allot for your help and for the investigation. >>>>>>> >>> >>>>>>> >>> best regards, >>>>>>> >>> Clemens >>>>>>> >>> >>>>>>> >>> >>>>>>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>>>>>> >>>> wrote: >>>>>>> >>>> >>>>>>> >>>> >>>>>>> >>>> >>>>>>> >>>> Hi Clemens (it seems like your message got dropped by the >>>>>>> mailing >>>>>>> >>>> list, not sure why). >>>>>>> >>>> >>>>>>> >>>> Your message seems to point at some bad interaction between >>>>>>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and >>>>>>> only one >>>>>>> >>>> can win). Apparently, the Panama code isn't executed early >>>>>>> enough >>>>>>> >>>> in the jpackage case. >>>>>>> >>>> >>>>>>> >>>> We'll need to investigate more. >>>>>>> >>>> >>>>>>> >>>> Maurizio >>>>>>> >>>> >>>>>>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>>>>>> >>>>> Hello everybody, >>>>>>> >>>>> >>>>>>> >>>>> I am the developer of project librawfx >>>>>>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>>>>>> >>>>> (github.com/lanthale/photoslide). >>>>>>> >>>>> >>>>>>> >>>>> At the begining of Photoslide the whole app was >>>>>>> modularized and >>>>>>> >>>>> therefore all was working including librawfx which is using >>>>>>> >>>>> project Panama. After a while I had to change to a mixed >>>>>>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>>>>>> >>>>> environment and deployed my app PhotoSlide again. Under >>>>>>> Linux and >>>>>>> >>>>> OSX all is working as expected. The problem exists only under >>>>>>> >>>>> Windows. Furthermore it exists only if I am creating a >>>>>>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>>>>>> >>>>> working as expected. Only the JPackage launcher have the >>>>>>> issue and >>>>>>> >>>>> I have no clue what the root cause is. >>>>>>> >>>>> >>>>>>> >>>>> The exception I am always seeing is: >>>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>>> >>>>> SCHWERWIEGEND: null >>>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>>> >>>>> classloader >>>>>>> >>>>> (Full stacktrace below) >>>>>>> >>>>> >>>>>>> >>>>> How can you reproduce the issue: >>>>>>> >>>>> >>>>>>> >>>>> ?1. Git clone project >>>>>>> https://github.com/lanthale/JeditFX.git >>>>>>> >>>>>>> >>>>>>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>>>>>> >>>>> ?3. Click on the open icon in the toolbar and select file >>>>>>> >>>>> >>>>>>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>>>>>> >>>>>>> >>>>> >>>>>>> >>>>> ?4. The app is showing the image below the textarea >>>>>>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn >>>>>>> -Ppackage clean >>>>>>> >>>>> ??? install" >>>>>>> >>>>> ?6. Start the exe jeditfx.exe in directory ".\target\jeditfx" >>>>>>> >>>>> ?7. Open the same file again -> No image is shown below >>>>>>> the text >>>>>>> >>>>> ??? area and the exception is thrown in the background >>>>>>> >>>>> >>>>>>> >>>>> >>>>>>> >>>>> I have tried many things but it is only happening if I have >>>>>>> >>>>> OpenJFX+JDK Modules on the module path and the rest of the >>>>>>> jar >>>>>>> >>>>> files on the classpath. All libs which are not having any >>>>>>> Panama >>>>>>> >>>>> code inside of the app are working perfectly and it is only >>>>>>> >>>>> happening on Windows. >>>>>>> >>>>> >>>>>>> >>>>> Thank you in advance for your help! >>>>>>> >>>>> >>>>>>> >>>>> best regards, >>>>>>> >>>>> Clemens >>>>>>> >>>>> >>>>>>> >>>>> >>>>>>> >>>>> >>>>>>> >>>>> >>>>>>> >>>>> *Full stacktrace from Photoslide:* >>>>>>> >>>>> >>>>>>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>>>>>> >>>>> createSearchIndex >>>>>>> >>>>> INFORMATION: Start time create searchDB: >>>>>>> 2022-02-03T19:44:41.693455 >>>>>>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>>>>>> >>>>> lambda$checkForSoftwareUpdates$2 >>>>>>> >>>>> INFORMATION: No new version found! >>>>>>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>>>>>> >>>>> lambda$createSearchIndex$0 >>>>>>> >>>>> INFORMATION: End time create searchDB: >>>>>>> 2022-02-03T19:44:43.186194400 >>>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>>> >>>>> SCHWERWIEGEND: null >>>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>>> >>>>> classloader >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>>>>>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>>>>>> >>>>>>> >>>>> >>>>>>> >>>>> at >>>>>>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>>>>>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown >>>>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>>>>>> >>>>>>> >>>>> >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>>>>>> >>>>>>> >>>>> >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>>>>>> >>>>> Source) >>>>>>> >>>>> at >>>>>>> >>>>> >>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>>>>>> >>>>>>> >>>>> Source) >>>>>>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) >>>> >>>> -- >>>> ITArchitects >>>> CEO: B.Sc. Clemens Lanthaler >>>> Forchachstrasse 3 >>>> A-6166 Fulpmes >>>> Tel.: +43 (0)650 855 2954 >>>> email:office at itarchitects.at >>>> homepage:http://www.itarchitects.at >>>> ------------------------------------------------- >>>> Notice: This e-mail and any attachments are confidential and may be privileged. >>>> If you are not the intended recipient, notify the sender immediately, destroy all >>>> copies from your system and do not disclose or use the information for any purpose. >>>> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >>>> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >>>> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >>>> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. >> >> -- >> ITArchitects >> CEO: B.Sc. Clemens Lanthaler >> Forchachstrasse 3 >> A-6166 Fulpmes >> Tel.: +43 (0)650 855 2954 >> email:office at itarchitects.at >> homepage:http://www.itarchitects.at >> ------------------------------------------------- >> Notice: This e-mail and any attachments are confidential and may be privileged. >> If you are not the intended recipient, notify the sender immediately, destroy all >> copies from your system and do not disclose or use the information for any purpose. >> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. -- ITArchitects CEO: B.Sc. Clemens Lanthaler Forchachstrasse 3 A-6166 Fulpmes Tel.: +43 (0)650 855 2954 email:office at itarchitects.at homepage:http://www.itarchitects.at ------------------------------------------------- Notice: This e-mail and any attachments are confidential and may be privileged. If you are not the intended recipient, notify the sender immediately, destroy all copies from your system and do not disclose or use the information for any purpose. Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. From maurizio.cimadamore at oracle.com Thu Jun 9 17:00:28 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 9 Jun 2022 18:00:28 +0100 Subject: Issue in combination with JLink/JPackage In-Reply-To: <6ff8e5e1-70e6-4080-0b64-b494f5517d0b@itarchitects.at> References: <084c5e5d-b78d-50aa-7b58-c3db9d95b56b@oracle.com> <8fbe8276-29d2-15a7-c7f5-70184b9de48f@oracle.com> <1785426525.1353083.1645221850331@email.ionos.de> <94c4cc44-d042-4ade-c675-9a800caadf4a@oracle.com> <1534e7e2-3592-9ecc-fa35-e652ac658bbd@oracle.com> <6ff8e5e1-70e6-4080-0b64-b494f5517d0b@itarchitects.at> Message-ID: <88f19b08-3995-c92c-f0e3-3af57706ca33@oracle.com> On 09/06/2022 16:46, Clemens Lanthaler wrote: > Thanks for the feedback. I must try now with a newer Jextract version > because I have used the latest panama JDK19 EA release version for > both libs. Curious is that one is working and the other not because > the code is completely the same for both. That is indeed very odd - the jextract in the EA still uses the incubator packages, so there is zero chance it will work against a current Java 19 version. Probably something else is going on - and you end up running with 18, not 19. Maurizio > > > > Am 08.06.22 um 22:20 schrieb Maurizio Cimadamore: >> >> There seems to be a combination of issues here (which seem to have >> little to do with library loading). >> >> In the "only-libraw-working" log, the failure has to do with code >> trying to call the SegmentAllocator.nativeAllocator method, that is >> no longer there (now MemorySession implements SegmentAllocator directly). >> >> In the "nothing-runs" log, I see references to "CLinker" - the class >> has been renamed to "Linker". >> >> It seems to me that the version of jextract you are using to work >> with 19 is not correct. >> >> You can get build a version of jextract that works with 19 here: >> >> https://github.com/openjdk/jextract >> >> (for now it has to be built manually, binaries will be made available >> soon - but the process is a lot simpler than building a full JDK) >> >> Hope this helps >> >> Maurizio >> >> >> On 08/06/2022 19:37, Clemens Lanthaler wrote: >> >>> Hello Maurizio, >>> >>> here are the logs with all kind of setups. The name of the logfile >>> tells what I have tried. But basically libhheiffx is not working >>> also under JDK19. Librawfx is working if compiled for jdk19 or >>> jdk18.0.1. >>> >>> What I have seen is that the JVM is no longer been crashing and that >>> the jpackage image produces the same issues than if you run it via >>> maven/IDE. >>> >>> Hopfully that helps you. >>> >>> best regards, >>> Clemens >>> >>> >>> Am 05.06.22 um 23:29 schrieb Maurizio Cimadamore: >>>> >>>> >>>> On 05/06/2022 11:28, Clemens Lanthaler wrote: >>>>> Hello Maurizio, >>>>> >>>>> I have now updated all my panama project with the Panama Build >>>>> 19-panama+1-13. Now my LibrawFX library is working as expected, >>>>> but my second lib LibHeifFX is not working and shows the same >>>>> error message than before. >>>>> >>>>> The difference between the two native libs is that LibrawFX is >>>>> thread safe and LibheifFX is not. Maybe the reason for only >>>>> showing the issue on Libheif could be also the loading order. >>>>> >>>>> From the issue description the fix is already included (build 11) >>>>> but it seems that there is another issue behind it. >>>>> >>>>> What I did: >>>>> - Generate with jextract from Panama Build 19-panama+1-13 >>>>> - Run with JDK 18.0.1 >>>>> >>>>> Must I run it with JDK 19 to be working ? But if that is the case >>>>> than LibrawFX should not be working as well. Give me feedback if >>>>> you need any logs additionally. >>>> Hi Clemens, >>>> >>>> I believe you need to run with 19 to take advantage of the fix - >>>> e.g. to make sure that System.loadLibrary and Panama library >>>> loading truly act as orthogonal. >>>> >>>> Let's start from there and see where we get - please post any stack >>>> trace that could be relevant to diagnose this. >>>> >>>> Thanks >>>> Maurizio >>>> >>>>> >>>>> best regards, >>>>> Clemens >>>>> >>>>> >>>>> Am 18.02.22 um 23:16 schrieb Maurizio Cimadamore: >>>>>> >>>>>> Hi Clemens, >>>>>> no worries - I will let you know when we have an EA with the fix >>>>>> available (we'll probably wait to accumulate some other >>>>>> fixes/features as well). >>>>>> >>>>>> Thanks >>>>>> Maurizio >>>>>> >>>>>> On 18/02/2022 22:04, Clemens Lanthaler wrote: >>>>>>> Hi, >>>>>>> Thanks allot for the info. I have seen that the fix will be part >>>>>>> of JDK19 and frankly speeking I have never build a jdk by >>>>>>> myself. I would appreciate if there is a chance to get a binary >>>>>>> of this pre build including panama. >>>>>>> >>>>>>> Thank you in advance. >>>>>>> >>>>>>> best regards, >>>>>>> Clemens >>>>>>> >>>>>>>> Maurizio Cimadamore hat am >>>>>>>> 18.02.2022 15:30 geschrieben: >>>>>>>> >>>>>>>> >>>>>>>> Hi, >>>>>>>> quick update on this. The problem with library loading in JDK >>>>>>>> being too >>>>>>>> strict for Panama has been fixed upstream (thanks Mandy!): >>>>>>>> >>>>>>>> https://git.openjdk.java.net/jdk/pull/7435 >>>>>>>> >>>>>>>> >>>>>>>> We've just merged those changes into the Panama repo - which >>>>>>>> means that, >>>>>>>> if you build the latest version of the repo, you should be able to >>>>>>>> verify that the workarounds are no longer required. >>>>>>>> >>>>>>>> Please let us know how that goes. >>>>>>>> >>>>>>>> Cheers >>>>>>>> Maurizio >>>>>>>> >>>>>>>> On 10/02/2022 10:05, Maurizio Cimadamore wrote: >>>>>>>>> I have managed to create a simple reproducer on Windows: >>>>>>>>> import jdk.incubator.foreign.CLinker; >>>>>>>>> public class TestLookup { >>>>>>>>> ??? public static void main(String[] args) { >>>>>>>>> System.load("C:\\Windows\\System32\\ucrtbase.dll"); >>>>>>>>> CLinker.systemCLinker().lookup("foo"); >>>>>>>>> ??? } >>>>>>>>> } >>>>>>>>> The call to CLinker::lookup fails with UnsatisfiedLinkError as >>>>>>>>> ucrtbase is already loaded by the application class loader. >>>>>>>>> This seems to be a bug in the library loading mechanism - we >>>>>>>>> do have a >>>>>>>>> "raw" library loading mechanism that is not subject to JNI >>>>>>>>> restrictions: >>>>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L99 >>>>>>>>> >>>>>>>>> >>>>>>>> > >>>>>>>>> This library loader ends up calling this method which contains >>>>>>>>> a class >>>>>>>>> loader check: >>>>>>>>> https://github.com/openjdk/jdk/blob/309acbf0e86a0d248294503fccc7a936fa0a846e/src/java.base/share/classes/jdk/internal/loader/NativeLibraries.java#L203 >>>>>>>>> >>>>>>>>> >>>>>>>> > >>>>>>>>> I believe this loader check should be guarded by a "isJNI" >>>>>>>>> flag, as we >>>>>>>>> did for other checks - e.g. whether JNI_OnLoad should be called. >>>>>>>>> Cheers >>>>>>>>> Maurizio >>>>>>>>> On 07/02/2022 12:19, Maurizio Cimadamore wrote: >>>>>>>>>> No problem. >>>>>>>> >> I've filed this: >>>>>>>> >> >>>>>>>> >> https://bugs.openjdk.java.net/browse/JDK-8281335 >>>>>>>> >> >>>>>>>> >> Cheers >>>>>>>> >> Maurizio >>>>>>>> >> >>>>>>>> >> On 07/02/2022 12:15, clemens.lanthaler at itarchitects.at wrote: >>>>>>>> >>> Hi Maurizio, >>>>>>>> >>> >>>>>>>> >>> thanks allot for your help and for the investigation. >>>>>>>> >>> >>>>>>>> >>> best regards, >>>>>>>> >>> Clemens >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>>> On 7. Feb 2022, at 13:03, Maurizio Cimadamore >>>>>>>> >>>> wrote: >>>>>>>> >>>> >>>>>>>> >>>> >>>>>>>> >>>> >>>>>>>> >>>> Hi Clemens (it seems like your message got dropped by the >>>>>>>> mailing >>>>>>>> >>>> list, not sure why). >>>>>>>> >>>> >>>>>>>> >>>> Your message seems to point at some bad interaction between >>>>>>>> >>>> jpackage and Panama both trying to load ucrtbase.dll (and >>>>>>>> only one >>>>>>>> >>>> can win). Apparently, the Panama code isn't executed early >>>>>>>> enough >>>>>>>> >>>> in the jpackage case. >>>>>>>> >>>> >>>>>>>> >>>> We'll need to investigate more. >>>>>>>> >>>> >>>>>>>> >>>> Maurizio >>>>>>>> >>>> >>>>>>>> >>>> On 05/02/2022 15:31, Clemens Lanthaler wrote: >>>>>>>> >>>>> Hello everybody, >>>>>>>> >>>>> >>>>>>>> >>>>> I am the developer of project librawfx >>>>>>>> >>>>> (github.com/lanthale/librawfx) and the app Photoslide >>>>>>>> >>>>> (github.com/lanthale/photoslide). >>>>>>>> >>>>> >>>>>>>> >>>>> At the begining of Photoslide the whole app was >>>>>>>> modularized and >>>>>>>> >>>>> therefore all was working including librawfx which is using >>>>>>>> >>>>> project Panama. After a while I had to change to a mixed >>>>>>>> >>>>> (modulepath for jdk+javafx libs and classpath for the rest) >>>>>>>> >>>>> environment and deployed my app PhotoSlide again. Under >>>>>>>> Linux and >>>>>>>> >>>>> OSX all is working as expected. The problem exists only >>>>>>>> under >>>>>>>> >>>>> Windows. Furthermore it exists only if I am creating a >>>>>>>> >>>>> Jlink/Jpackage distribution. Running the app from maven was >>>>>>>> >>>>> working as expected. Only the JPackage launcher have the >>>>>>>> issue and >>>>>>>> >>>>> I have no clue what the root cause is. >>>>>>>> >>>>> >>>>>>>> >>>>> The exception I am always seeing is: >>>>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>>>> >>>>> SCHWERWIEGEND: null >>>>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>>>> >>>>> classloader >>>>>>>> >>>>> (Full stacktrace below) >>>>>>>> >>>>> >>>>>>>> >>>>> How can you reproduce the issue: >>>>>>>> >>>>> >>>>>>>> >>>>> ?1. Git clone project >>>>>>>> https://github.com/lanthale/JeditFX.git >>>>>>>> >>>>>>>> >>>>>>>> >>>>> ?2. Start the app with "mvn javafx:run at default-cli" >>>>>>>> >>>>> ?3. Click on the open icon in the toolbar and select file >>>>>>>> >>>>> >>>>>>>> "...\Documents\NetBeansProjects\JeditFX\JeditFX\src\main\resources\RAW-ADOBE_DNG_Sample.dng" >>>>>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> ?4. The app is showing the image below the textarea >>>>>>>> >>>>> ?5. Create the jlink/jpackage app-image with "mvn >>>>>>>> -Ppackage clean >>>>>>>> >>>>> ??? install" >>>>>>>> >>>>> ?6. Start the exe jeditfx.exe in directory >>>>>>>> ".\target\jeditfx" >>>>>>>> >>>>> ?7. Open the same file again -> No image is shown below >>>>>>>> the text >>>>>>>> >>>>> ??? area and the exception is thrown in the background >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> I have tried many things but it is only happening if I have >>>>>>>> >>>>> OpenJFX+JDK Modules on the module path and the rest of >>>>>>>> the jar >>>>>>>> >>>>> files on the classpath. All libs which are not having any >>>>>>>> Panama >>>>>>>> >>>>> code inside of the app are working perfectly and it is only >>>>>>>> >>>>> happening on Windows. >>>>>>>> >>>>> >>>>>>>> >>>>> Thank you in advance for your help! >>>>>>>> >>>>> >>>>>>>> >>>>> best regards, >>>>>>>> >>>>> Clemens >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> *Full stacktrace from Photoslide:* >>>>>>>> >>>>> >>>>>>>> >>>>> Feb. 03, 2022 7:44:41 PM org.photoslide.search.SearchIndex >>>>>>>> >>>>> createSearchIndex >>>>>>>> >>>>> INFORMATION: Start time create searchDB: >>>>>>>> 2022-02-03T19:44:41.693455 >>>>>>>> >>>>> Feb. 03, 2022 7:44:42 PM org.photoslide.SoftwareUpdater >>>>>>>> >>>>> lambda$checkForSoftwareUpdates$2 >>>>>>>> >>>>> INFORMATION: No new version found! >>>>>>>> >>>>> Feb. 03, 2022 7:44:43 PM org.photoslide.search.SearchIndex >>>>>>>> >>>>> lambda$createSearchIndex$0 >>>>>>>> >>>>> INFORMATION: End time create searchDB: >>>>>>>> 2022-02-03T19:44:43.186194400 >>>>>>>> >>>>> Feb. 03, 2022 7:44:58 PM org.librawfx.RAWImageLoader load >>>>>>>> >>>>> SCHWERWIEGEND: null >>>>>>>> >>>>> java.lang.UnsatisfiedLinkError: Native Library >>>>>>>> >>>>> C:\Windows\System32\ucrtbase.dll already loaded in another >>>>>>>> >>>>> classloader >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.lambda$makeWindowsLookup$1(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.libLookup(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.makeWindowsLookup(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> jdk.incubator.foreign/jdk.internal.foreign.SystemLookup.(Unknown >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> jdk.incubator.foreign/jdk.incubator.foreign.CLinker.systemLookup(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> org.libraw.win.RuntimeHelper.lookup(RuntimeHelper.java:33) >>>>>>>> >>>>> at org.libraw.win.libraw_h.(libraw_h.java:15) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> org.librawfx.LibrawImage.readPixelDataFromStream(LibrawImage.java:113) >>>>>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> at >>>>>>>> org.librawfx.RAWImageLoader.getImageData(RAWImageLoader.java:168) >>>>>>>> >>>>> at org.librawfx.RAWImageLoader.load(RAWImageLoader.java:84) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/com.sun.javafx.iio.ImageStorage.loadAll(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.PrismImageLoader2.(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/com.sun.javafx.tk.quantum.QuantumToolkit.loadImage(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.loadImage(Unknown >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.initialize(Unknown >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> javafx.graphics at 18-ea/javafx.scene.image.Image.(Unknown Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:46) >>>>>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> org.photoslide.datamodel.MediaFileLoader$1.call(MediaFileLoader.java:43) >>>>>>>> >>>>>>>> >>>>> >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> javafx.graphics at 18-ea/javafx.concurrent.Task$TaskCallable.call(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at java.base/java.util.concurrent.FutureTask.run(Unknown >>>>>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at >>>>>>>> >>>>> >>>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown >>>>>>>> >>>>>>>> >>>>> Source) >>>>>>>> >>>>> at java.base/java.lang.Thread.run(Unknown Source) >>>>> >>>>> -- >>>>> ITArchitects >>>>> CEO: B.Sc. Clemens Lanthaler >>>>> Forchachstrasse 3 >>>>> A-6166 Fulpmes >>>>> Tel.: +43 (0)650 855 2954 >>>>> email:office at itarchitects.at >>>>> homepage:http://www.itarchitects.at >>>>> ------------------------------------------------- >>>>> Notice: This e-mail and any attachments are confidential and may be privileged. >>>>> If you are not the intended recipient, notify the sender immediately, destroy all >>>>> copies from your system and do not disclose or use the information for any purpose. >>>>> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >>>>> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >>>>> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >>>>> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. >>> >>> -- >>> ITArchitects >>> CEO: B.Sc. Clemens Lanthaler >>> Forchachstrasse 3 >>> A-6166 Fulpmes >>> Tel.: +43 (0)650 855 2954 >>> email:office at itarchitects.at >>> homepage:http://www.itarchitects.at >>> ------------------------------------------------- >>> Notice: This e-mail and any attachments are confidential and may be privileged. >>> If you are not the intended recipient, notify the sender immediately, destroy all >>> copies from your system and do not disclose or use the information for any purpose. >>> Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem >>> Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie >>> bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und >>> veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. > > -- > ITArchitects > CEO: B.Sc. Clemens Lanthaler > Forchachstrasse 3 > A-6166 Fulpmes > Tel.: +43 (0)650 855 2954 > email:office at itarchitects.at > homepage:http://www.itarchitects.at > ------------------------------------------------- > Notice: This e-mail and any attachments are confidential and may be privileged. > If you are not the intended recipient, notify the sender immediately, destroy all > copies from your system and do not disclose or use the information for any purpose. > Diese E-Mail inklusive aller Anhaenge ist vertraulich und koennte bevorrechtigtem > Schutz unterliegen. Wenn Sie nicht der beabsichtigte Adressat sind, informieren Sie > bitte den Absender unverzueglich, loeschen Sie alle Kopien von Ihrem System und > veroeffentlichen Sie oder nutzen Sie die Information keinesfalls, gleich zu welchem Zweck. From jzhu at openjdk.java.net Thu Jun 9 19:04:42 2022 From: jzhu at openjdk.java.net (Joshua Zhu) Date: Thu, 9 Jun 2022 19:04:42 GMT Subject: [vectorIntrinsics] RFR: 8287289: Gather/Scatter with Index Vector In-Reply-To: References: Message-ID: On Wed, 25 May 2022 08:35:53 GMT, Joshua Zhu wrote: > When I assist engineers to apply VectorAPI in real business scenarios, I realize that Gather/Scatter APIs depend on indexMap residing in memory. > > When an index map is acquired by vector operations, it is represented by IntVector. To do Gather/Scatter operations, an extra integer array must be introduced and an explicit vector store is also required ahead of each Gather/Scatter. Furthermore, the redundant memory store may cause a performance penalty. > > Hence I submit this change for discussion. I propose to provide Gather/Scatter API supporting index vector. This patch only includes the change for Gather API. > It passed the jtreg tests for VectorAPI. John Rose, thanks for your reply:-) Yes, based on ease-of-use considerations, more APIs have to be introduced to support all these choices. In my opinion, letting users build these capabilities on top of the combination of fundamental APIs looks more elegant and reasonable if they could be optimized well by JIT. Hence this requires the fundamental API could meet different requirements in diverse scenarios, such as removing the memory assumption for indexMap in this case. As you suggest, as the first step, I will implement the fundamental Gather/Scatter API looks like this: LongVector fromMemorySegment(VectorSpecies species, MemorySegment ms, Vector indexVector, ByteOrder bo); LongVector fromMemorySegment(VectorSpecies species, MemorySegment ms, Vector indexVector, ByteOrder bo); I agree with your choice of offset-mode. Non-scaled offsets are more suitable for index in memory segments version. Support of scaled indexes could be extended base on it. Thanks a lot for your suggestion on it. If we decide to add more capabilities at API level, we could build them on top of fundamental APIs as you told us. ------------- PR: https://git.openjdk.org/panama-vector/pull/201 From duke at openjdk.java.net Fri Jun 10 11:09:03 2022 From: duke at openjdk.java.net (duke) Date: Fri, 10 Jun 2022 11:09:03 GMT Subject: git: openjdk/panama-foreign: foreign-memaccess+abi: 128 new changesets Message-ID: Changeset: a75299c3 Author: Zhengyu Gu Date: 2022-06-03 12:18:36 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a75299c3ab95f1e43d5628b14e6e5deaa1ed5f70 8287686: Add assertion to ensure that disarm value offset < 128 Reviewed-by: tschatzl, shade ! src/hotspot/share/runtime/thread.hpp Changeset: 33b9d770 Author: Aleksey Shipilev Date: 2022-06-03 12:19:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33b9d77065e65d3ba86b4d8250b1abe5743f0cef 8287729: Loom: Check alternative implementation on x86_32 Reviewed-by: alanb, zgu ! test/hotspot/jtreg/ProblemList.txt ! test/jdk/ProblemList.txt Changeset: 34bb0a5e Author: Zhengyu Gu Date: 2022-06-03 12:32:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/34bb0a5e6e9c91e037fbbe87382e8275b2435a3f 8287734: Shenandoah: Consolidate marking closures Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp Changeset: 28c112fc Author: Xue-Lei Andrew Fan Date: 2022-06-03 15:47:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/28c112fcf0f74d24175a0c2df036cf62d377181b 8287685: [BACKOUT] JDK-8287384 Speed up jdk.test.lib.util.ForceGC Reviewed-by: dcubed ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 59e9700c Author: Jonathan Gibbons Date: 2022-06-03 16:17:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/59e9700c4e0ae892f15607bcaa267e5868eb0512 8252717: Integrate/merge legacy standard doclet diagnostics and doclint Reviewed-by: erikj, prappo ! make/Docs.gmk ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ReturnTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/DocLint.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/Messages.java + test/langtools/jdk/javadoc/doclet/testDoclintDocletMessages/TestDocLintDocletMessages.java ! test/langtools/jdk/javadoc/tool/doclint/DocLintTest.java Changeset: ce5ae517 Author: Aleksey Shipilev Date: 2022-06-03 16:43:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ce5ae51773974dfc324b5fff52accbe14a0c032e 8287637: Loom: Mismatched VirtualThread::state accessor Reviewed-by: alanb ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp Changeset: a0219da9 Author: Sandhya Viswanathan Date: 2022-06-03 17:59:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a0219da966f3a1cd12d402a816bdd79be778085e 8287517: C2: assert(vlen_in_bytes == 64) failed: 2 Reviewed-by: kvn, jiefu, chagedorn, fgao ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad + test/hotspot/jtreg/compiler/vectorization/TestSmallVectorPopIndex.java Changeset: 0b35460f Author: Quan Anh Mai Committer: Vladimir Kozlov Date: 2022-06-03 20:19:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0b35460fa00bfdca63a311a7379819cf102dee86 8283694: Improve bit manipulation and boolean to integer conversion operations on x86_64 Reviewed-by: kvn, dlong ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86_sha.cpp ! src/hotspot/cpu/x86/x86_64.ad ! test/micro/org/openjdk/bench/java/lang/Integers.java ! test/micro/org/openjdk/bench/java/lang/Longs.java ! test/micro/org/openjdk/bench/java/lang/RotateBenchmark.java Changeset: 7a0c8b14 Author: Alexander Matveev Date: 2022-06-03 20:27:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7a0c8b14aaf3573f5ea2bd2cc759c854825e6893 8286850: [macos] Add support for signing user provided app image Reviewed-by: asemenyuk ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppImageBuilder.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacPkgBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_de.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_ja.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_zh_CN.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageBundler.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageFile.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/CLIHelp.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/DeployParams.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_zh_CN.properties ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/junit/jdk/jpackage/internal/AppImageFileTest.java ! test/jdk/tools/jpackage/macosx/SigningAppImageTest.java + test/jdk/tools/jpackage/macosx/SigningAppImageTwoStepsTest.java + test/jdk/tools/jpackage/share/jdk/jpackage/tests/PredefinedAppImageErrorTest.java Changeset: a7e07fdb Author: Martin Desruisseaux Committer: Phil Race Date: 2022-06-03 21:16:21 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a7e07fdbc104f668a03d88330e30dbaeb7b43719 8287102: ImageReaderSpi.canDecodeInput() for standard plugins should return false if a stream is too short Reviewed-by: prr ! src/java.desktop/share/classes/com/sun/imageio/plugins/bmp/BMPImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/common/ReaderUtil.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/gif/GIFImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/png/PNGImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/wbmp/WBMPImageReaderSpi.java + test/jdk/javax/imageio/plugins/shared/CanDecodeTest.java ! test/jdk/javax/imageio/plugins/wbmp/CanDecodeTest.java Changeset: 6f526e1b Author: Srinivas Mandalika Committer: Sergey Bylokhov Date: 2022-06-03 21:27:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6f526e1bc3e0af4189fbb7d3b48d614717f266b0 8285373: Create an automated test for JDK-4702233 Reviewed-by: serb + test/jdk/javax/accessibility/4702233/AccessibleActionConstants.java + test/jdk/javax/accessibility/4702233/AccessibleContextConstants.java + test/jdk/javax/accessibility/4702233/AccessiblePropertiesTest.java + test/jdk/javax/accessibility/4702233/AccessibleRelationConstants.java + test/jdk/javax/accessibility/4702233/AccessibleRoleConstants.java + test/jdk/javax/accessibility/4702233/AccessibleStateConstants.java Changeset: 25e9901a Author: Srinivas Mandalika Committer: Sergey Bylokhov Date: 2022-06-03 21:28:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/25e9901aeacd45f8baec6d1e52a6823e7f087fa3 8285305: Create an automated test for JDK-4495286 Reviewed-by: serb + test/jdk/javax/accessibility/AccessibleJTableSelectionTest.java Changeset: b6cdfd68 Author: Artem Semenov Date: 2022-06-03 21:29:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b6cdfd685d0cea308b15558e2dc607a680c89dc0 8287740: NSAccessibilityShowMenuAction not working for text editors Reviewed-by: kizune, serb ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m ! test/jdk/java/awt/a11y/AccessibleActionsTest.java Changeset: e2cfe2e1 Author: Daniel D. Daugherty Date: 2022-06-03 22:17:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e2cfe2e14a03b638a5828625975716f9fed1f668 8231491: JDI tc02x004 failed again due to wrong # of breakpoints Reviewed-by: cjplummer ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004/TestDescription.java Changeset: 005a3303 Author: Jie Fu Date: 2022-06-04 02:49:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/005a330387b8ee1179d1be31b53ea2c5d49c32f8 8287826: javax/accessibility/4702233/AccessiblePropertiesTest.java fails to compile Reviewed-by: dcubed ! test/jdk/javax/accessibility/4702233/AccessibleRoleConstants.java Changeset: d76c1089 Author: Manukumar V S Committer: Abdul Kolarkunnu Date: 2022-06-04 03:00:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d76c1089efc8816c6f804b78371e62e697fc62c5 8286772: java/awt/dnd/DropTargetInInternalFrameTest/DropTargetInInternalFrameTest.html times out and fails in Windows Reviewed-by: prr + test/jdk/java/awt/dnd/DropTargetInInternalFrameTest.java Changeset: 308c068b Author: tqxia Committer: Jie Fu Date: 2022-06-04 04:36:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/308c068b36528bcbbcca6e45de6949cb9ee7ae13 8287558: Remove remset coarsening stats during g1 remset summary printing Reviewed-by: tschatzl, iwalulya ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.hpp Changeset: e4e1e8f6 Author: Alan Bateman Date: 2022-06-04 06:15:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e4e1e8f66c9b0321cdb1aaf3b1c5d9b67224b210 8284199: Implementation of Structured Concurrency (Incubator) Co-authored-by: Ron Pressler Co-authored-by: Alan Bateman Co-authored-by: Brian Goetz Co-authored-by: Paul Sandoz Reviewed-by: psandoz, mcimadamore, darcy ! make/conf/docs-modules.conf ! make/conf/module-loader-map.conf ! src/java.base/share/classes/module-info.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructureViolationException.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructuredTaskScope.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/package-info.java + src/jdk.incubator.concurrent/share/classes/module-info.java ! test/jdk/TEST.groups + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/PreviewFeaturesNotEnabled.java + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/StructuredTaskScopeTest.java + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/StructuredThreadDumpTest.java Changeset: a113e166 Author: Jie Fu Date: 2022-06-04 06:47:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a113e166e91b9b3d3f74a284888a5135b48dad44 8287830: gtest fails to compile after JDK-8287661 Reviewed-by: shade ! test/hotspot/gtest/utilities/test_bitMap.cpp Changeset: a6fc485a Author: Pavel Rappo Date: 2022-06-04 15:55:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a6fc485a22484b70daf170e981432c0856b9d93d 8287753: [spelling] close well-established compounds Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/AnnoConstruct.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/dependencies/NewDependencyCollector.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlLinkInfo.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/ClassWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/DocletElement.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ClassBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PackageSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ElementsTable.java Changeset: 3df4b034 Author: Daniel D. Daugherty Date: 2022-06-05 14:08:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3df4b034fbb49b9d9b3153807192fc999d7371ad 8287837: ProblemList java/lang/ref/OOMEInReferenceHandler.java in -Xcomp Reviewed-by: rriggs ! test/jdk/ProblemList-Xcomp.txt Changeset: 8c460b04 Author: Nikita Gubarkov Committer: Phil Race Date: 2022-06-05 15:34:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8c460b043e1cbaf1f2d74958033bb24dea66a390 8287609: macOS: SIGSEGV at [CoreFoundation] CFArrayGetCount / sun.font.CFont.getTableBytesNative Reviewed-by: prr ! src/java.desktop/macosx/native/libawt_lwawt/font/AWTFont.m Changeset: ebc012ec Author: Richard Reingruber Date: 2022-06-05 19:30:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ebc012ece28ea731c4756cab2374ebecfa5ac1a3 8287205: generate_cont_thaw generates dead code after jump to exception handler Reviewed-by: shade, kvn ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp Changeset: f347ff99 Author: Jatin Bhateja Date: 2022-06-06 00:37:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f347ff9986afbc578aca8784be658d3629904786 8283894: Intrinsify compress and expand bits on x86 Reviewed-by: psandoz, sviswanathan, jrose, kvn ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/cpu/x86/x86_32.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/intrinsicnode.cpp ! src/hotspot/share/opto/intrinsicnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/opto/mulnode.hpp ! src/java.base/share/classes/java/lang/Integer.java ! src/java.base/share/classes/java/lang/Long.java + test/hotspot/gtest/opto/test_compress_expand_bits.cpp + test/hotspot/jtreg/compiler/intrinsics/TestBitShuffleOpers.java ! test/jdk/ProblemList.txt ! test/jdk/java/lang/CompressExpandSanityTest.java ! test/jdk/java/lang/CompressExpandTest.java Changeset: 24fe8ad7 Author: Fei Gao Committer: Pengfei Li Date: 2022-06-06 02:02:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/24fe8ad74cc481d18bed6896ca54a8d91c651d4a 8283307: Vectorize unsigned shift right on signed subword types Reviewed-by: jiefu, pli, sviswanathan, kvn ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp + test/hotspot/jtreg/compiler/c2/irTests/TestVectorizeURShiftSubword.java ! test/hotspot/jtreg/compiler/lib/ir_framework/IRNode.java ! test/hotspot/jtreg/compiler/vectorization/runner/ArrayShiftOpTest.java ! test/hotspot/jtreg/compiler/vectorization/runner/BasicByteOpTest.java ! test/hotspot/jtreg/compiler/vectorization/runner/BasicShortOpTest.java ! test/micro/org/openjdk/bench/vm/compiler/VectorShiftRight.java Changeset: 0d1a3053 Author: Aleksey Shipilev Date: 2022-06-06 05:29:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0d1a3053cd25dc666981c5aedfa5efc2dc95bd0e 8287732: jdk/jshell/ToolEnablePreviewTest.java fails on x86_32 after JDK-8287496 Reviewed-by: alanb, kvn ! test/langtools/TEST.ROOT ! test/langtools/jdk/jshell/ToolEnablePreviewTest.java Changeset: 4d6fb515 Author: Hannes Walln?fer Date: 2022-06-06 11:11:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4d6fb515516dfc5f04c9d8e9c3602292e89df52a 8287524: Improve checkboxes to select releases on deprecated API page Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SummaryListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/script.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DeprecatedAPIListBuilder.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/mdl/pkg/TestAnnotation.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/mdl/pkg/TestClass.java Changeset: c328f8fa Author: KIRIYAMA Takuya Committer: Ioi Lam Date: 2022-06-06 21:08:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c328f8fa2a166ead49d23138e0d7e507c3ebba53 8287764: runtime/cds/serviceability/ReplaceCriticalClasses failed on localized Windows Reviewed-by: iklam ! test/hotspot/jtreg/runtime/cds/serviceability/ReplaceCriticalClasses.java Changeset: 2e332c27 Author: Mandy Chung Date: 2022-06-06 21:11:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2e332c276052554540da0998316a5a99bc350cd6 8287671: Adjust ForceGC to invoke System::gc fewer times for negative case Reviewed-by: rriggs, bchristi, xuelei ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 3eb49fec Author: Andrey Turbanov Date: 2022-06-06 21:13:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3eb49feceabe8253b78b794a3d8fdc0556d8f2e2 8287766: Unnecessary Vector usage in LdapClient Reviewed-by: dfuchs, vtewari, aefimov ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapClient.java Changeset: e94b05c7 Author: Andrey Turbanov Date: 2022-06-06 21:15:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e94b05c72046cfc52898917e835794bb1aec548a 8285285: Avoid redundant allocations in WindowsPreferences Reviewed-by: jpai ! src/java.prefs/windows/classes/java/util/prefs/WindowsPreferences.java Changeset: 5264881a Author: Alisen Chung Committer: Phil Race Date: 2022-06-06 21:22:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5264881a1528444dfefbabec6f42596810f0ce07 8286481: Exception printed to stdout on Windows when storing transparent image in clipboard Reviewed-by: prr, dnguyen ! src/java.desktop/windows/classes/sun/awt/windows/WClipboard.java Changeset: a277590c Author: Sergey Bylokhov Date: 2022-06-06 21:25:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a277590c89b173fd9bc028c715564f18fe62f722 8287761: Make the logging of J2DBench stable Reviewed-by: aghaisas, prr ! src/demo/share/java2d/J2DBench/src/j2dbench/Result.java ! src/demo/share/java2d/J2DBench/src/j2dbench/TestEnvironment.java Changeset: 0e06bf3b Author: Joe Darcy Date: 2022-06-06 21:26:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0e06bf3b04f69c57120d32106a3ae5f69030934d 8287838: Update Float and Double to use snippets Reviewed-by: alanb ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java Changeset: 124ba45f Author: Calvin Cheung Date: 2022-06-06 21:56:01 +0000 URL: https://git.openjdk.org/panama-foreign/commit/124ba45fb83985676136ecb3c55a781382fdbfd7 8287101: CDS should check for file truncation for all regions Reviewed-by: iklam, coleenp ! src/hotspot/share/cds/filemap.cpp ! test/hotspot/jtreg/runtime/cds/appcds/SharedArchiveConsistency.java ! test/lib/jdk/test/lib/cds/CDSArchiveUtils.java Changeset: c37c8e5d Author: Alexey Semenyuk Date: 2022-06-06 22:17:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c37c8e5d34905ff2df34a93aa53dd3369e164596 8250950: Allow per-user and system wide configuration of a jpackaged app Reviewed-by: almatvee ! src/jdk.jpackage/linux/native/libapplauncher/LinuxLauncherLib.cpp ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacBaseInstallerBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacDmgBundler.java ! src/jdk.jpackage/macosx/native/applauncher/MacLauncher.cpp + src/jdk.jpackage/share/classes/jdk/jpackage/internal/PackageFile.java ! src/jdk.jpackage/share/native/applauncher/AppLauncher.cpp ! src/jdk.jpackage/share/native/applauncher/AppLauncher.h + src/jdk.jpackage/share/native/applauncher/PackageFile.cpp + src/jdk.jpackage/share/native/applauncher/PackageFile.h ! src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WinMsiBundler.java ! src/jdk.jpackage/windows/native/applauncher/WinLauncher.cpp ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/TKit.java ! test/jdk/tools/jpackage/run_tests.sh + test/jdk/tools/jpackage/share/PerUserCfgTest.java Changeset: a50b06e8 Author: Mandy Chung Date: 2022-06-06 22:33:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a50b06e85124f61b5133189a2a2e461753d5d9e7 8287867: Bad merge of jdk/test/lib/util/ForceGC.java causing test compilation error Reviewed-by: dcubed ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 645be42f Author: Sergey Bylokhov Date: 2022-06-06 23:17:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/645be42f76b8983a9096ed90caa70b5c59dd822c 8287824: The MTPerLineTransformValidation tests has a typo in the @run tag Reviewed-by: iris, prr ! test/jdk/sun/java2d/cmm/ColorConvertOp/MTPerLineTransformValidation.java Changeset: ef7cc210 Author: Xiaohong Gong Date: 2022-06-07 01:16:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ef7cc2105c66de443d3a9af706220272018a0d8d 8286279: [vectorapi] Only check index of masked lanes if offset is out of array boundary for masked store Reviewed-by: psandoz ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorIntrinsics.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template + test/micro/org/openjdk/bench/jdk/incubator/vector/StoreMaskedBenchmark.java Changeset: f6a79e34 Author: Hannes Walln?fer Date: 2022-06-07 06:32:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f6a79e340fb7545ab3ab75ea7da3d9a1a368b46f 8287674: CSS improvements for summary lists Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Changeset: 956d44d2 Author: Aleksey Shipilev Date: 2022-06-07 06:55:35 +0000 URL: https://git.openjdk.org/panama-foreign/commit/956d44d2da54926a37acfb415d87f071663b4b40 8287071: Loom: Cleanup x86_64 gen_continuation_enter Reviewed-by: rpressler, pchilanomate, kvn ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp Changeset: aa6c568a Author: Claes Redestad Date: 2022-06-07 07:22:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/aa6c568a06fa92263d4b74ff979eb521ae953bc8 8287798: Reduce runtime of java.lang.reflect/runtime microbenchmarks Reviewed-by: jvernee, mchung ! test/micro/org/openjdk/bench/java/lang/reflect/Clazz.java ! test/micro/org/openjdk/bench/java/lang/reflect/ClazzWithSecurityManager.java ! test/micro/org/openjdk/bench/java/lang/reflect/MethodInvoke.java ! test/micro/org/openjdk/bench/java/lang/runtime/ObjectMethods.java Changeset: 778ed1a7 Author: Claes Redestad Date: 2022-06-07 07:23:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/778ed1a760d8f673811914b75e5d14e465881c91 8287810: Reduce runtime of java.lang microbenchmarks Reviewed-by: mchung ! test/micro/org/openjdk/bench/java/lang/ArrayCopy.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyAligned.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyObject.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedBoth.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedDst.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedSrc.java ! test/micro/org/openjdk/bench/java/lang/ArrayFiddle.java ! test/micro/org/openjdk/bench/java/lang/Characters.java ! test/micro/org/openjdk/bench/java/lang/ClassForName.java ! test/micro/org/openjdk/bench/java/lang/Clone.java ! test/micro/org/openjdk/bench/java/lang/DoubleClassCheck.java ! test/micro/org/openjdk/bench/java/lang/FPComparison.java ! test/micro/org/openjdk/bench/java/lang/FloatClassCheck.java ! test/micro/org/openjdk/bench/java/lang/FloatingDecimal.java ! test/micro/org/openjdk/bench/java/lang/GetStackTrace.java ! test/micro/org/openjdk/bench/java/lang/IntegerDivMod.java ! test/micro/org/openjdk/bench/java/lang/LongDivMod.java ! test/micro/org/openjdk/bench/java/lang/NewInstance.java ! test/micro/org/openjdk/bench/java/lang/ObjectHashCode.java ! test/micro/org/openjdk/bench/java/lang/RotateBenchmark.java ! test/micro/org/openjdk/bench/java/lang/StackWalkBench.java ! test/micro/org/openjdk/bench/java/lang/StrictMathBench.java ! test/micro/org/openjdk/bench/java/lang/StringBuffers.java ! test/micro/org/openjdk/bench/java/lang/StringCompareToDifferentLength.java ! test/micro/org/openjdk/bench/java/lang/StringCompareToIgnoreCase.java ! test/micro/org/openjdk/bench/java/lang/StringEquals.java ! test/micro/org/openjdk/bench/java/lang/StringFormat.java ! test/micro/org/openjdk/bench/java/lang/StringHashCode.java - test/micro/org/openjdk/bench/java/lang/StringHttp.java ! test/micro/org/openjdk/bench/java/lang/StringIndexOf.java ! test/micro/org/openjdk/bench/java/lang/StringIndexOfChar.java ! test/micro/org/openjdk/bench/java/lang/StringOther.java ! test/micro/org/openjdk/bench/java/lang/StringReplace.java ! test/micro/org/openjdk/bench/java/lang/StringUpperLower.java ! test/micro/org/openjdk/bench/java/lang/SystemTime.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWait.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWaitProducerConsumer.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWaitSharedCounter.java ! test/micro/org/openjdk/bench/java/lang/ThreadStartJoin.java Changeset: b6c6cc5d Author: Aleksey Shipilev Date: 2022-06-07 07:24:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b6c6cc5d9918bf1727ae13d09f8a3bf677a058a7 8286360: ARM32: Fix crashes after JDK-8284161 (Virtual Threads) Co-authored-by: Sergey Nazarkin Reviewed-by: dsamersoff ! src/hotspot/cpu/arm/frame_arm.cpp ! src/hotspot/cpu/arm/frame_arm.hpp ! src/hotspot/cpu/arm/frame_arm.inline.hpp ! src/hotspot/cpu/arm/nativeInst_arm_32.cpp ! src/hotspot/cpu/arm/nativeInst_arm_32.hpp ! src/hotspot/cpu/arm/stubGenerator_arm.cpp ! src/hotspot/cpu/arm/templateInterpreterGenerator_arm.cpp Changeset: 42261d75 Author: Claes Redestad Date: 2022-06-07 07:25:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/42261d752a140325496ffdd40d9ad62b189d1b3e 8287785: Reduce runtime of java.lang.invoke microbenchmarks Reviewed-by: mchung ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteSetTarget.java ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteSetTargetSelf.java ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteStable.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupAcquire.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupDefaultFind.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupPublicFind.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsCollector.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsSpreader.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsVarargsCollector.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBasicInvoke.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBindToBinding.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBindToCurry.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertBoxing.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertCast.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnPrimitive.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnReference.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnVoid.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertUnboxing.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertWidening.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleInvokeWithArgs.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleProxiesAsIFInstance.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleProxiesSuppl.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesArrayElementGetter.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesArrayElementSetter.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesCatchException.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesConstant.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesDropArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesExactInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFilterArgs.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFilterReturn.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFoldArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesGuardWithTest.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesIdentity.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesInsertArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesPermuteArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesSpreadInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesThrowException.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeAcquire.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeAppendParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeChangeParam.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeChangeReturn.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeDropParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeGenerify.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeInsertParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/SwitchPointAdhoc.java ! test/micro/org/openjdk/bench/java/lang/invoke/SwitchPointGuard.java Changeset: 39fa52b5 Author: Xiaohong Gong Date: 2022-06-07 07:41:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/39fa52b5f7504eca7399b863b0fb934bdce37f7e 8283667: [vectorapi] Vectorization for masked load with IOOBE with predicate feature Reviewed-by: sviswanathan, psandoz ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/vectorIntrinsics.cpp ! src/java.base/share/classes/jdk/internal/misc/X-ScopedMemoryAccess.java.template ! src/java.base/share/classes/jdk/internal/vm/vector/VectorSupport.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template + test/micro/org/openjdk/bench/jdk/incubator/vector/LoadMaskedIOOBEBenchmark.java Changeset: dbf0905f Author: Christian Hagedorn Date: 2022-06-07 08:34:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/dbf0905ff4ad6c831095278fc47c3a6354fe3bc1 8286967: Unproblemlist compiler/c2/irTests/TestSkeletonPredicates.java and add additional test for JDK-8286638 Reviewed-by: kvn, thartmann ! test/hotspot/jtreg/ProblemList-Xcomp.txt + test/hotspot/jtreg/compiler/rangechecks/TestRangeCheckCmpUOverflow.java Changeset: b647a125 Author: Christian Hagedorn Date: 2022-06-07 08:37:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b647a1259b543aaf7d9943fc21971b4125640376 8286940: [IR Framework] Allow IR tests to build and use Whitebox without -DSkipWhiteBoxInstall=true Reviewed-by: kvn, thartmann ! test/hotspot/jtreg/compiler/c2/irTests/TestSuperwordFailsUnrolling.java ! test/hotspot/jtreg/compiler/lib/ir_framework/TestFramework.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestCompLevels.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestControls.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestIRMatching.java Changeset: 2d8c6490 Author: Severin Gehwolf Date: 2022-06-07 08:40:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2d8c6490540e3ccea23b81129b2e4073915071e0 8287663: Add a regression test for JDK-8287073 Reviewed-by: iklam ! src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java ! test/jdk/jdk/internal/platform/cgroup/TestCgroupSubsystemFactory.java Changeset: bde7a7ae Author: Jan Lahoda Date: 2022-06-07 10:31:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bde7a7ae03f51360227c9757b2ab3ddbff4df908 8287236: Reorganize AST related to pattern matching for switch Reviewed-by: mcimadamore + src/jdk.compiler/share/classes/com/sun/source/tree/ConstantCaseLabelTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java + src/jdk.compiler/share/classes/com/sun/source/tree/PatternCaseLabelTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/PatternTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java ! src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransPatterns.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/CRTable.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeCopier.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeTranslator.java ! test/langtools/tools/javac/patterns/DisambiguatePatterns.java ! test/langtools/tools/javac/tree/SourceTreeScannerTest.java Changeset: 4fe0ca9e Author: Sergey Tsypanov Committer: Naoto Sato Date: 2022-06-07 11:46:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4fe0ca9ec3b995eb113ac214219cae22f83333c9 8287860: Revise usage of volatile in j.u.Locale Reviewed-by: naoto ! src/java.base/share/classes/java/util/Locale.java ! src/java.base/share/classes/sun/util/locale/BaseLocale.java Changeset: f1dd559e Author: Magnus Ihse Bursie Date: 2022-06-07 11:53:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f1dd559e20342b892d0c1ed0314e5bba451bc5d3 8287896: PropertiesTest.sh fail on msys2 Reviewed-by: naoto ! test/jdk/java/util/Currency/PropertiesTest.sh Changeset: 8d28734e Author: Severin Gehwolf Date: 2022-06-07 12:28:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8d28734ede0ed3922c92451a172d1fa676e484e9 8287741: Fix of JDK-8287107 (unused cgv1 freezer controller) was incomplete Reviewed-by: iklam ! src/hotspot/os/linux/cgroupSubsystem_linux.cpp Changeset: 905bcbe3 Author: Adam Sotona Date: 2022-06-07 13:38:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/905bcbe34eb9750f6f7f12a577733c71a31d7972 8286571: java source launcher from a minimal jdk image containing jdk.compiler fails with --enable-preview option Reviewed-by: jlahoda ! src/jdk.compiler/share/classes/module-info.java ! test/jdk/tools/launcher/SourceMode.java ! test/langtools/tools/javac/file/LimitedImage.java Changeset: 2f62f15b Author: Jan Lahoda Date: 2022-06-07 13:41:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2f62f15b09dcfa4bed556dc7778cb1a6bb31d9ba 8287808: javac generates illegal class file for pattern matching switch with records Reviewed-by: sundar ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransPatterns.java ! test/langtools/tools/javac/annotations/typeAnnotations/classfile/Patterns.java ! test/langtools/tools/javac/patterns/SimpleDeconstructionPattern.java ! test/langtools/tools/javac/patterns/SimpleDeconstructionPatternNoPreview.out Changeset: 1499e5ea Author: Alexander Zvegintsev Date: 2022-06-07 13:57:01 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1499e5eac0cad3745495baeda7b5f9157647ebe9 8273573: [macos12] ActionListenerCalledTwiceTest.java fails on macOS 12 Reviewed-by: psadhukhan, serb ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/JMenuItem/ActionListenerCalledTwice/ActionListenerCalledTwiceTest.java Changeset: ee4a6c23 Author: Erik Gahlin Date: 2022-06-07 14:32:00 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ee4a6c23ee20ce3fafa59b13f68090397432480e 8287799: JFR: Less noisy platform threads with jfr print Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/PrettyWriter.java Changeset: 062db59e Author: Jan Lahoda Date: 2022-06-07 14:44:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/062db59eeb8ba6389aaa3c622dbc109a92d580ca 8286206: Missing cases for RECORD Reviewed-by: vromero, jjg ! src/jdk.compiler/share/classes/jdk/internal/shellsupport/doc/JavadocHelper.java ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! test/langtools/jdk/jshell/CompletionSuggestionTest.java Changeset: 67f1bd7f Author: Tejesh R Committer: Alexey Ivanov Date: 2022-06-07 15:50:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/67f1bd7ff1bb218fd6de9ef1e957f729013e133c 8286620: Create regression test for verifying setMargin() of JRadioButton Reviewed-by: jdv, honkar, aivanov + test/jdk/javax/swing/JRadioButton/bug4380543.java Changeset: 96641c0c Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-07 16:02:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/96641c0c42ff79d809db1314407d451eb7d494b4 8287745: jni/nullCaller/NullCallerTest.java fails with "exitValue = 1" Reviewed-by: erikj, mchung ! make/test/JtregNativeJdk.gmk ! test/jdk/ProblemList.txt Changeset: 5d4ea9b9 Author: Joe Darcy Date: 2022-06-07 16:13:42 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5d4ea9b9549b762b7c207e5c2ee65bc51591433b 8273346: Expand library mappings to IEEE 754 operations Reviewed-by: bpb ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java ! src/java.base/share/classes/java/lang/Math.java ! src/java.base/share/classes/java/math/RoundingMode.java Changeset: 41d5809c Author: Erik Gahlin Date: 2022-06-07 16:42:11 +0000 URL: https://git.openjdk.org/panama-foreign/commit/41d5809caff0a219c2153fe88d0c61c4b5eba62c 8287811: JFR: jfr configure error message should not print stack trace Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/Configure.java Changeset: c41a283f Author: Ioi Lam Date: 2022-06-07 16:57:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c41a283f527dcc4397707b8b19880f1b9aac6fb3 8273853: Update the Java manpage for automatic CDS archive updating Reviewed-by: ccheung, dholmes ! src/java.base/share/man/java.1 Changeset: 3da7e393 Author: Xin Liu Date: 2022-06-07 17:12:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3da7e393ee4b45c40b8bb132dd09f5a6ba306116 8287840: Dead copy region node blocks IfNode's fold-compares Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/node.cpp Changeset: 91e6bf67 Author: Daniel D. Daugherty Date: 2022-06-07 17:25:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/91e6bf6791b7fc26db6f4288830091d812232dd8 8287919: ProblemList java/lang/CompressExpandTest.java Reviewed-by: azvegint ! test/jdk/ProblemList.txt Changeset: 9ec27d0e Author: Ioi Lam Date: 2022-06-07 17:28:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9ec27d0e9fff06d38d7541eb630867d412d9e4a6 8287872: Disable concurrent execution of hotspot docker tests Reviewed-by: mseledtsov, ccheung = test/hotspot/jtreg/containers/docker/TEST.properties Changeset: 8e10c2bf Author: Leonid Mesnik Date: 2022-06-07 18:55:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8e10c2bfc73a25d93187b62f5aa8e6210d6fe98b 8287877: Exclude vmTestbase/nsk/jvmti/AttachOnDemand/attach022/TestDescription.java until JDK-8277573 is fixed Reviewed-by: dcubed, sspitsyn ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 74be2d9e Author: Chris Plummer Date: 2022-06-07 19:07:34 +0000 URL: https://git.openjdk.org/panama-foreign/commit/74be2d9ef6d5a8c27257c86cf73decf440a4b292 8286983: rename jdb -trackvthreads and debug agent enumeratevthreads options and clarify "Preview Feature" nature of these options Reviewed-by: amenkov, lmesnik, alanb ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTY.java ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SunCommandLineLauncher.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/resources/jdi.properties ! src/jdk.jdi/share/man/jdb.1 ! src/jdk.jdwp.agent/share/native/libjdwp/VirtualMachineImpl.c ! src/jdk.jdwp.agent/share/native/libjdwp/debugInit.c ! src/jdk.jdwp.agent/share/native/libjdwp/util.h ! test/hotspot/jtreg/vmTestbase/nsk/jdb/kill/kill001/kill001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdb/threads/threads002/threads002.java ! test/hotspot/jtreg/vmTestbase/nsk/jdb/trace/trace001/trace001.java ! test/hotspot/jtreg/vmTestbase/nsk/share/jdi/Binder.java ! test/hotspot/jtreg/vmTestbase/nsk/share/jpda/DebugeeBinder.java Changeset: 1aa87e00 Author: Andrey Turbanov Date: 2022-06-07 19:39:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1aa87e0078765480bc7805e95b747addaf993cf6 8287148: Avoid redundant HashMap.containsKey calls in ExtendedKeyCodes.getExtendedKeyCodeForChar Reviewed-by: prr ! src/java.desktop/share/classes/sun/awt/ExtendedKeyCodes.java Changeset: b12e7f1b Author: Alex Menkov Date: 2022-06-07 20:32:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b12e7f1bf95e27fc50b79a5d2c09b8820a4a935a 8279358: vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/TestDescription.java fails with usage tracker Reviewed-by: cjplummer, lmesnik ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/RedefineClasses/redefclass031/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/RedefineClasses/redefclass031/redefclass031.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI01/ji01t001/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI01/ji01t001/ji01t001.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/ji03t003.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/multienv/MA10/ma10t001/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/multienv/MA10/ma10t001/ma10t001.cpp ! test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/jvmti_tools.cpp ! test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/jvmti_tools.h Changeset: 8e078391 Author: Joe Wang Date: 2022-06-07 20:49:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8e0783917975075aae5d586f0076d5093afb0b62 8285081: Improve XPath operators count accuracy Reviewed-by: naoto, lancea ! src/java.xml/share/classes/com/sun/java_cup/internal/runtime/lr_parser.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java Changeset: b7a34f72 Author: Daniel D. Daugherty Date: 2022-06-07 21:08:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b7a34f728d0653d55ef01da045c9aad4c0471143 8287927: ProblemList java/awt/GraphicsDevice/DisplayModes/UnknownRefrshRateTest.java on macosx-aarch64 Reviewed-by: aivanov ! test/jdk/ProblemList.txt Changeset: bf439f8c Author: Sergey Bylokhov Date: 2022-06-07 23:10:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf439f8c93157a7f0e6489db2ccc56c5f7210402 8287876: The recently de-problemlisted TestTitledBorderLeak test is unstable Reviewed-by: psadhukhan, prr ! test/jdk/javax/swing/border/TestTitledBorderLeak.java Changeset: 68c5957b Author: Ioi Lam Date: 2022-06-07 23:11:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/68c5957b9e2306d96bec2d655ec743f13f250dae 8287869: -XX:+AutoCreateSharedArchive doesn't work when JDK build is switched Reviewed-by: ccheung, dholmes ! src/hotspot/share/cds/filemap.cpp ! src/hotspot/share/include/cds.h ! test/hotspot/jtreg/runtime/cds/appcds/SharedArchiveConsistency.java ! test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/TestAutoCreateSharedArchive.java Changeset: 39ec58b6 Author: Joe Darcy Date: 2022-06-08 00:56:57 +0000 URL: https://git.openjdk.org/panama-foreign/commit/39ec58b63cff640734b5fd9454441bb93c467e5b 8287886: Further terminology updates to match JLS Reviewed-by: jjg ! src/java.compiler/share/classes/javax/annotation/processing/AbstractProcessor.java ! src/java.compiler/share/classes/javax/annotation/processing/RoundEnvironment.java ! src/java.compiler/share/classes/javax/lang/model/AnnotatedConstruct.java ! src/java.compiler/share/classes/javax/lang/model/element/AnnotationMirror.java ! src/java.compiler/share/classes/javax/lang/model/element/ExecutableElement.java ! src/java.compiler/share/classes/javax/lang/model/util/Elements.java Changeset: 45f1b72a Author: Sandhya Viswanathan Date: 2022-06-08 01:05:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/45f1b72a6ee5b86923c3217f101a90851c30401f 8287697: Limit auto vectorization to 32-byte vector on Cascade Lake Reviewed-by: kvn, jbhateja ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/superword.hpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp Changeset: 32dd1eef Author: Joe Darcy Date: 2022-06-08 01:59:50 +0000 URL: https://git.openjdk.org/panama-foreign/commit/32dd1eef8859231bfb298a7b86f808d8188aec69 8287967: Update golden test files after JDK-8287886 Reviewed-by: dholmes ! test/langtools/tools/javac/processing/warnings/au_8.out ! test/langtools/tools/javac/processing/warnings/au_current.out Changeset: 7df48f97 Author: Thiago Henrique H?pner Committer: Jaikiran Pai Date: 2022-06-08 04:08:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7df48f97d23fdeba032ddec51b6a6e6ad02d14cd 8287353: Use snippet tag instead of pre tag in Javadoc of InterruptedException Reviewed-by: jpai ! src/java.base/share/classes/java/lang/InterruptedException.java Changeset: 4662e06b Author: Daniel Jeli?ski Date: 2022-06-08 06:33:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4662e06bff2cef7425c194a9cdd7a6fe7469179e 8277307: Pre shared key sent under both session_ticket and pre_shared_key extensions Reviewed-by: coffeys, ascarpino ! src/java.base/share/classes/sun/security/ssl/SessionTicketExtension.java ! test/jdk/javax/net/ssl/SSLSession/ResumeTLS13withSNI.java Changeset: 590337e2 Author: Roland Westrelin Date: 2022-06-08 06:35:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/590337e2f229445e353e7c32e0dcff8d93e412d2 8286625: C2 fails with assert(!n->is_Store() && !n->is_LoadStore()) failed: no node with a side effect Reviewed-by: thartmann, chagedorn ! src/hotspot/share/opto/loopPredicate.cpp ! src/hotspot/share/opto/loopTransform.cpp + test/hotspot/jtreg/compiler/loopopts/TestOverUnrolling2.java Changeset: 0960ecc4 Author: Roland Westrelin Date: 2022-06-08 06:36:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0960ecc407f8049903e3d183ac75c6a85dcc5b5f 8287700: C2 Crash running eclipse benchmark from Dacapo Reviewed-by: chagedorn, kvn, xliu, thartmann ! src/hotspot/share/opto/escape.cpp + test/hotspot/jtreg/compiler/types/TestEACheckCastPP.java Changeset: bf0e625f Author: Roland Westrelin Date: 2022-06-08 06:41:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf0e625fe0e83c00006f13367a67e9f6175d21e4 8286451: C2: assert(nb == 1) failed: only when the head is not shared Reviewed-by: thartmann, chagedorn ! src/hotspot/share/ci/ciTypeFlow.cpp + test/hotspot/jtreg/compiler/ciTypeFlow/TestSharedLoopHead.java Changeset: 47d3c2a1 Author: Jie Fu Date: 2022-06-08 06:55:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/47d3c2a175a839add63d5453910e109923c41161 8287980: Build is broken due to SuperWordMaxVectorSize when C2 is disabled after JDK-8287697 Reviewed-by: kvn ! src/hotspot/cpu/x86/vm_version_x86.cpp Changeset: 5c39a366 Author: Claes Redestad Date: 2022-06-08 07:17:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5c39a3664186b91512c6a6cfcd8aa0e9860614ea 8287522: StringConcatFactory: Add in prependers and mixers in batches Reviewed-by: jlaskey, mchung ! make/jdk/src/classes/build/tools/classlist/HelloClasslist.java ! src/java.base/share/classes/java/lang/invoke/LambdaForm.java ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java ! test/micro/org/openjdk/bench/java/lang/invoke/StringConcatFactoryBootstraps.java Changeset: ecf00785 Author: Claes Redestad Date: 2022-06-08 07:18:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ecf00785f21125d88f5cc18311f586a7bb6ddc56 8287442: Reduce list to array conversions in java.lang.invoke.MethodHandles Reviewed-by: jvernee ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java Changeset: 230726ea Author: Matthias Baesken Date: 2022-06-08 07:21:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/230726ea58041506157646b6efad0b5c4a012559 8287735: Provide separate event category for dll operations Reviewed-by: coleenp, stuefe ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/utilities/events.cpp ! src/hotspot/share/utilities/events.hpp Changeset: d959c22a Author: Jie Fu Date: 2022-06-08 08:08:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d959c22a9574359e2d5134ac8365e8a9df4f7cef 8288000: compiler/loopopts/TestOverUnrolling2.java fails with release VMs Reviewed-by: roland, thartmann ! test/hotspot/jtreg/compiler/loopopts/TestOverUnrolling2.java Changeset: 6e3e470d Author: Christian Hagedorn Date: 2022-06-08 10:41:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6e3e470dac80d3b6c3a0f4845ce4115858178dd3 8285965: TestScenarios.java does not check for "" correctly Reviewed-by: thartmann, kvn ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestScenarios.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/Utils.java Changeset: a9d46f34 Author: Alexey Pavlyutkin Committer: Yuri Nesterenko Date: 2022-06-08 11:42:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a9d46f3413ef64c87520509fd70ac42629fbce91 8287894: Use fixed timestamp as an alternative of __DATE__ macro in jdk.jdi to make Windows build reproducible Reviewed-by: erikj, ihse ! make/modules/jdk.jdi/Lib.gmk ! src/jdk.jdi/share/native/libdt_shmem/shmemBase.h ! src/jdk.jdi/windows/native/libdt_shmem/shmem_md.c Changeset: 5ad6286b Author: Feilong Jiang Committer: Fei Yang Date: 2022-06-08 12:38:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5ad6286b73889e47f40d0051a96ef91137faa25c 8287970: riscv: jdk/incubator/vector/*VectorTests failing Reviewed-by: kvn, fyang, dlong, yadongwang ! src/hotspot/cpu/riscv/riscv_v.ad Changeset: f7791ad0 Author: Magnus Ihse Bursie Date: 2022-06-08 14:04:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f7791ad0ea984d49ff26e6f30233d8dcee4305b8 8287895: Some langtools tests fail on msys2 Reviewed-by: jjg ! test/langtools/tools/javac/Paths/Util.sh Changeset: 78d37126 Author: Christian Hagedorn Date: 2022-06-08 14:12:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/78d371266ae8a629db8176ced4d48e9521702cce 8287432: C2: assert(tn->in(0) != __null) failed: must have live top node Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/compile.cpp + test/hotspot/jtreg/compiler/c2/TestRemoveMemBarPrecEdge.java Changeset: b021d37c Author: Alexander Zuev Date: 2022-06-08 14:44:41 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b021d37cec557059e288d5937a73577233b0b172 8283383: [macos] a11y : Screen magnifier shows extra characters (0) at the end JButton accessibility name Reviewed-by: serb, dmarkov ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/ButtonAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/ImageAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/MenuAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/MenuItemAccessibility.m Changeset: a9b9831f Author: Alexey Ivanov Date: 2022-06-08 15:36:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a9b9831f2a88ed3b7701d402b167a096b94aeb98 8286663: Resolve IDE warnings in WTrayIconPeer and SystemTray Reviewed-by: prr, serb, honkar ! src/java.desktop/share/classes/java/awt/SystemTray.java ! src/java.desktop/windows/classes/sun/awt/windows/WTrayIconPeer.java Changeset: 6fb84e2c Author: Naoto Sato Date: 2022-06-08 15:50:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6fb84e2c9119bdb9c66dd49422bcab637bbd4008 8287541: Files.writeString fails to throw IOException for charset "windows-1252" Reviewed-by: iris, bpb, alanb, jpai, lancea, aturbanov ! src/java.base/share/classes/java/lang/String.java ! test/jdk/java/nio/file/Files/ReadWriteString.java Changeset: c68419f2 Author: yuu1127 Committer: Vladimir Kozlov Date: 2022-06-08 16:05:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c68419f2f778f796d410ba3d27e916ae47700af5 8286990: Add compiler name to warning messages in Compiler Directive Reviewed-by: kvn, thartmann ! src/hotspot/share/compiler/compilerDirectives.cpp ! src/hotspot/share/compiler/compilerDirectives.hpp Changeset: b92ce269 Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-08 16:21:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b92ce2699b604cff638db583215863da8e253db8 8281001: Class::forName(String) defaults to system class loader if the caller is null Reviewed-by: mchung ! src/java.base/share/classes/java/lang/Class.java ! test/jdk/jni/nullCaller/CallHelper.hpp ! test/jdk/jni/nullCaller/NullCallerTest.java ! test/jdk/jni/nullCaller/exeNullCallerTest.cpp Changeset: c15e10fb Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-08 16:23:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c15e10fb6c35a99e80009f0a7b6a252fcbb549b7 8233760: Result of BigDecimal.toString throws overflow exception on new BigDecimal(str) Reviewed-by: darcy ! src/java.base/share/classes/java/math/BigDecimal.java ! test/jdk/java/math/BigDecimal/StringConstructor.java Changeset: c8cff1bd Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-08 16:28:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c8cff1bd6f9807e90a6992ad3e181fe0d94397b8 8202449: overflow handling in Random.doubles Reviewed-by: darcy ! src/java.base/share/classes/java/util/Random.java ! src/java.base/share/classes/java/util/SplittableRandom.java ! src/java.base/share/classes/java/util/random/RandomGenerator.java ! src/java.base/share/classes/jdk/internal/util/random/RandomSupport.java ! test/jdk/java/util/Random/RandomNextDoubleBoundary.java Changeset: 024a240e Author: Pavel Rappo Date: 2022-06-08 17:37:41 +0000 URL: https://git.openjdk.org/panama-foreign/commit/024a240e1b938504a0e8ac2acdee78d89b5a3cec 8287333: Clean up ParamTaglet and ThrowsTaglet Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ThrowsTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/CommentHelper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java Changeset: 04f02ac6 Author: Kim Barrett Date: 2022-06-08 19:16:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/04f02ac6b2ce496b86642987bb7e25d21b52a5b6 8214976: Warn about uses of functions replaced for portability Reviewed-by: dholmes, tschatzl, coleenp ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/runtime/vmThread.cpp ! src/hotspot/share/utilities/compilerWarnings.hpp ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp ! src/hotspot/share/utilities/compilerWarnings_visCPP.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! test/hotspot/gtest/gtestMain.cpp + test/hotspot/gtest/unittest.cpp ! test/hotspot/gtest/unittest.hpp Changeset: b6233985 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-08 19:50:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b62339855571b234979e2cf250c9251d1d063a06 8287901: Loom: Failures with -XX:+VerifyStack Reviewed-by: pchilanomate, coleenp ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/x86/frame_x86.cpp ! test/jdk/jdk/internal/vm/Continuation/Basic.java Changeset: 130ce7c6 Author: Man Cao Date: 2022-06-08 20:18:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/130ce7c6b8998764f1a9ce5d5c6d60f053511991 8288052: Small logging clarification during failed heap shrinkage Co-authored-by: Jonathan Joo Reviewed-by: tschatzl ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp Changeset: 65f0829d Author: Maurizio Cimadamore Date: 2022-06-08 23:58:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/65f0829d645fd988c6a208622b1f34bf9de08e60 8288068: Javadoc contains spurious reference to CLinker Reviewed-by: iris ! src/java.base/share/classes/java/lang/foreign/Linker.java ! src/java.base/share/classes/java/lang/foreign/package-info.java Changeset: a941bc2d Author: Jie Fu Date: 2022-06-09 00:01:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a941bc2de674fdd77cdbbdf3641309fc39bfc0c4 8288082: Build failure due to __clang_major__ is not defined after JDK-8214976 Reviewed-by: dholmes ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp Changeset: e01cd7c3 Author: XenoAmess Committer: Stuart Marks Date: 2022-06-09 01:50:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e01cd7c3ed923cd19509fc972ba6e4aa2991289f 8284780: Need methods to create pre-sized HashSet and LinkedHashSet Reviewed-by: naoto, bpb, dfuchs, ascarpino ! src/java.base/share/classes/com/sun/crypto/provider/PBEKeyFactory.java ! src/java.base/share/classes/java/io/ObjectStreamClass.java ! src/java.base/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/java.base/share/classes/java/nio/charset/Charset.java ! src/java.base/share/classes/java/time/format/DecimalStyle.java ! src/java.base/share/classes/java/util/Calendar.java ! src/java.base/share/classes/java/util/HashSet.java ! src/java.base/share/classes/java/util/LinkedHashSet.java ! src/java.base/share/classes/jdk/internal/module/ModuleInfo.java ! src/java.base/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/java.base/share/classes/sun/nio/ch/AsynchronousServerSocketChannelImpl.java ! src/java.base/share/classes/sun/nio/ch/AsynchronousSocketChannelImpl.java ! src/java.base/share/classes/sun/nio/fs/AbstractPoller.java ! src/java.base/share/classes/sun/nio/fs/PollingWatchService.java ! src/java.base/share/classes/sun/security/pkcs/PKCS7.java ! src/java.base/share/classes/sun/security/provider/certpath/ConstraintsChecker.java ! src/java.base/share/classes/sun/security/provider/certpath/ForwardBuilder.java ! src/java.base/share/classes/sun/security/provider/certpath/KeyChecker.java ! src/java.base/share/classes/sun/security/provider/certpath/PolicyChecker.java ! src/java.base/share/classes/sun/security/ssl/CertificateMessage.java ! src/java.base/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java ! src/java.base/share/classes/sun/util/locale/InternalLocaleBuilder.java ! src/java.net.http/share/classes/jdk/internal/net/http/websocket/OpeningHandshake.java ! src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java ! src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipFileSystem.java ! test/jdk/java/io/RandomAccessFile/UnreferencedRAFClosesFd.java ! test/jdk/java/lang/System/MacEncoding/TestFileEncoding.java ! test/jdk/java/text/Format/common/FormatIteratorTest.java ! test/jdk/java/util/HashMap/WhiteBoxResizeTest.java Changeset: 3419beec Author: wanghaomin Committer: Jie Fu Date: 2022-06-09 04:00:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3419beec7fa646ab30f55ac27fdb47c4c1e1e764 8286847: Rotate vectors don't support byte or short Reviewed-by: eliu, xgong, jiefu, jbhateja ! src/hotspot/share/opto/vectornode.cpp + test/hotspot/jtreg/compiler/vectorization/TestRotateByteAndShortVector.java Changeset: 7e1cce8c Author: Aleksey Shipilev Date: 2022-06-09 05:48:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e1cce8cb508a8af770443360721fbb3d3b40237 8288051: Loom: Extend the compilation warning workaround in stack chunk copy Reviewed-by: coleenp ! src/hotspot/share/oops/stackChunkOop.inline.hpp Changeset: aa2fc54b Author: Aleksey Shipilev Date: 2022-06-09 05:49:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/aa2fc54b61ad84cc6faa80efa3bd3097adbbc422 8287493: 32-bit Windows build failure in codeBlob.cpp after JDK-8283689 Reviewed-by: kvn, zgu, alanb, jvernee ! src/hotspot/share/code/codeBlob.hpp Changeset: bc28baeb Author: Jan Lahoda Date: 2022-06-09 07:11:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bc28baeba9360991e9b7575e1fbe178d873ccfc1 8287897: Augment src/jdk.internal.le/share/legal/jline.md with information on 4th party dependencies Reviewed-by: vromero ! src/jdk.internal.le/share/legal/jline.md Changeset: 5a89cb01 Author: Tejesh R Committer: Alexey Ivanov Date: 2022-06-09 08:12:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5a89cb01bc92408648a3b59b63251ec8d0b67558 6429812: NPE after calling JTable.updateUI() when using a header renderer + XP L&F Reviewed-by: aivanov, serb ! src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/WindowsTableHeaderUI.java + test/jdk/javax/swing/JTableHeader/TableHeaderRendererTest.java Changeset: e5b56baf Author: Aleksey Shipilev Date: 2022-06-09 08:16:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e5b56bafa9ed68dec82adebc3eb298b70df7faeb 8288040: x86: Loom: Improve cont/monitor-count helper methods Reviewed-by: coleenp, rpressler ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp ! src/hotspot/cpu/x86/templateTable_x86.cpp Changeset: 560e2927 Author: Martin Doerr Date: 2022-06-09 10:14:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/560e2927e380a372effdfe4a7260c3606bf74c8b 8287738: [PPC64] jdk/incubator/vector/*VectorTests failing Reviewed-by: kvn, goetz ! src/hotspot/cpu/ppc/assembler_ppc.hpp ! src/hotspot/cpu/ppc/assembler_ppc.inline.hpp ! src/hotspot/cpu/ppc/ppc.ad Changeset: 4285e3d6 Author: Nick Gasson Date: 2022-06-09 11:48:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4285e3d6db487d85138486d1f7853c7c067c59cd 8288023: AArch64: disable PAC-RET when preview is enabled Reviewed-by: rpressler, adinn ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp Changeset: 3fa99844 Author: Harold Seigel Date: 2022-06-09 12:03:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3fa99844a69401f84677e7d512ffd937f7f16898 8287854: Dangling reference in ClassVerifier::verify_class Reviewed-by: dholmes, coleenp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/classfile/verifier.hpp Changeset: 7e948f7c Author: Claes Redestad Date: 2022-06-09 13:11:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e948f7ccbb4b9be04f5ecb65cc8dd72e3b495f4 8287903: Reduce runtime of java.math microbenchmarks Reviewed-by: ecaspole, aph ! test/micro/org/openjdk/bench/java/math/BigDecimals.java ! test/micro/org/openjdk/bench/java/math/BigIntegers.java ! test/micro/org/openjdk/bench/java/math/FpRoundingBenchmark.java = test/micro/org/openjdk/bench/vm/compiler/VectorSignum.java Changeset: db4405d0 Author: Andrew Haley Date: 2022-06-09 14:13:05 +0000 URL: https://git.openjdk.org/panama-foreign/commit/db4405d0f880dd43dc7da0b81bc2da2619d315b0 8288078: linux-aarch64-optimized build fails in Tier5 after JDK-8287567 Reviewed-by: adinn, thartmann ! src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp Changeset: 59b0de6b Author: Aleksey Shipilev Date: 2022-06-09 14:16:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/59b0de6bc7064b39cdc51517dee4f4d96af3efaf 8288048: Build failure with GCC 6 after JDK-8286562 Reviewed-by: kbarrett, ysuenaga ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdBits.inline.hpp ! src/hotspot/share/utilities/compilerWarnings.hpp ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp Changeset: 26714431 Author: Conor Cleary Committer: Daniel Fuchs Date: 2022-06-09 15:03:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/267144311c96109421b897b359c155a963661d31 8286171: HttpClient/2 : Expect:100-Continue blocks indefinitely when response is not 100 Reviewed-by: dfuchs, jpai ! src/java.net.http/share/classes/jdk/internal/net/http/Exchange.java ! src/java.net.http/share/classes/jdk/internal/net/http/ExchangeImpl.java ! src/java.net.http/share/classes/jdk/internal/net/http/Http1Exchange.java ! src/java.net.http/share/classes/jdk/internal/net/http/Http1Response.java ! src/java.net.http/share/classes/jdk/internal/net/http/Stream.java + test/jdk/java/net/httpclient/ExpectContinueTest.java Changeset: edff51e5 Author: Joe Darcy Committer: Erik Joelsson Date: 2022-06-09 16:16:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/edff51e5fdb5282830ecfb3792a88c7b28ca6557 8284858: Start of release updates for JDK 20 8286035: Add source 20 and target 20 to javac 8286034: Add SourceVersion.RELEASE_20 Reviewed-by: dholmes, kcr, iris, erikj, jjg, ihse ! .jcheck/conf ! make/conf/version-numbers.conf ! make/scripts/generate-symbol-data.sh ! src/hotspot/share/classfile/classFileParser.cpp ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementScanner14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleTypeVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor14.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java + src/jdk.compiler/share/data/symbols/java.base-J.sym.txt + src/jdk.compiler/share/data/symbols/java.compiler-J.sym.txt + src/jdk.compiler/share/data/symbols/java.datatransfer-J.sym.txt + src/jdk.compiler/share/data/symbols/java.desktop-J.sym.txt + src/jdk.compiler/share/data/symbols/java.instrument-J.sym.txt + src/jdk.compiler/share/data/symbols/java.logging-J.sym.txt + src/jdk.compiler/share/data/symbols/java.management-J.sym.txt + src/jdk.compiler/share/data/symbols/java.management.rmi-J.sym.txt + src/jdk.compiler/share/data/symbols/java.naming-J.sym.txt + src/jdk.compiler/share/data/symbols/java.net.http-J.sym.txt + src/jdk.compiler/share/data/symbols/java.rmi-J.sym.txt + src/jdk.compiler/share/data/symbols/java.scripting-J.sym.txt + src/jdk.compiler/share/data/symbols/java.security.jgss-J.sym.txt + src/jdk.compiler/share/data/symbols/java.security.sasl-J.sym.txt + src/jdk.compiler/share/data/symbols/java.smartcardio-J.sym.txt + src/jdk.compiler/share/data/symbols/java.sql-J.sym.txt + src/jdk.compiler/share/data/symbols/java.sql.rowset-J.sym.txt + src/jdk.compiler/share/data/symbols/java.xml-J.sym.txt + src/jdk.compiler/share/data/symbols/java.xml.crypto-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.accessibility-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.attach-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.compiler-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.dynalink-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.httpserver-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.incubator.foreign-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.incubator.vector-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jartool-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.javadoc-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jconsole-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jdi-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jfr-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jshell-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jsobject-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.management-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.management.agent-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.net-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.sctp-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.security.auth-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.security.jgss-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.unsupported-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.xml.dom-J.sym.txt ! src/jdk.compiler/share/data/symbols/symbols ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java ! test/langtools/tools/javac/api/TestGetSourceVersions.java ! test/langtools/tools/javac/classfiles/ClassVersionChecker.java ! test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java ! test/langtools/tools/javac/preview/classReaderTest/Client.nopreview.out ! test/langtools/tools/javac/preview/classReaderTest/Client.preview.out ! test/langtools/tools/javac/versions/Versions.java Changeset: d482d7f5 Author: Brian Burkhalter Date: 2022-06-09 16:30:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d482d7f5b99e89185471c05cde797f13405c32f2 8286160: (fs) Files.exists returns unexpected results with C:\pagefile.sys because it's not readable Reviewed-by: alanb ! src/java.base/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! test/jdk/java/nio/file/Files/Misc.java Changeset: 900d967d Author: Andrey Turbanov Date: 2022-06-09 20:29:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/900d967da52afca9b239d8a58aa81b48b9fe0a78 8287924: Avoid redundant HashMap.containsKey call in EnvHelp.mapToHashtable Reviewed-by: sspitsyn, cjplummer ! src/java.management/share/classes/com/sun/jmx/remote/util/EnvHelp.java Changeset: 94b473e4 Author: Thomas Schatzl Date: 2022-06-10 07:57:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/94b473e4642a5a4626faeb73341b4aea128ccb31 8280454: G1: ClassLoaderData verification keeps CLDs live that causes problems with VerifyDuringGC during Remark Reviewed-by: stefank, coleenp ! src/hotspot/share/classfile/classLoaderData.hpp ! src/hotspot/share/classfile/classLoaderData.inline.hpp ! src/hotspot/share/classfile/classLoaderDataGraph.cpp ! src/hotspot/share/classfile/classLoaderDataGraph.hpp ! src/hotspot/share/classfile/dictionary.cpp + test/hotspot/jtreg/runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java Changeset: dae4c493 Author: Roland Westrelin Date: 2022-06-10 08:17:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/dae4c493e48b6bb942cf6f629f1ff8839e32e54a 8286197: C2: Optimize MemorySegment shape in int loop Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/castnode.cpp ! src/hotspot/share/opto/castnode.hpp ! src/hotspot/share/opto/loopopts.cpp + test/hotspot/jtreg/compiler/c2/irTests/TestConvI2LCastLongLoop.java ! test/hotspot/jtreg/compiler/lib/ir_framework/IRNode.java Changeset: 09015488 Author: KIRIYAMA Takuya Committer: Erik Joelsson Date: 2022-06-10 09:19:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0901548833a0125f15fede64bc2e7dbe84fed42d 8283724: Incorrect description for jtreg-failure-handler option Reviewed-by: erikj, ihse ! make/autoconf/jdk-options.m4 Changeset: 975316e3 Author: Magnus Ihse Bursie Date: 2022-06-10 10:07:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/975316e3e5f1208e4e15eadc2493d25c15554647 8287902: UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows Reviewed-by: naoto ! test/jdk/java/util/ResourceBundle/Control/MissingResourceCauseTest.java Changeset: 054f11d5 Author: duke Date: 2022-06-10 11:00:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/054f11d5df584ec0f12653185fae93449da80f94 Automatic merge of jdk:master into master ! .jcheck/conf ! .jcheck/conf Changeset: 4d38a114 Author: duke Date: 2022-06-10 11:00:50 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4d38a114d258a72a89ae604b92dcd5de1496743d Automatic merge of master into foreign-memaccess+abi ! .jcheck/conf ! .jcheck/conf From duke at openjdk.java.net Fri Jun 10 11:16:35 2022 From: duke at openjdk.java.net (duke) Date: Fri, 10 Jun 2022 11:16:35 GMT Subject: git: openjdk/panama-foreign: master: 127 new changesets Message-ID: <0337b9c4-baab-4ad9-aa3d-77854ea77609@openjdk.org> Changeset: a75299c3 Author: Zhengyu Gu Date: 2022-06-03 12:18:36 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a75299c3ab95f1e43d5628b14e6e5deaa1ed5f70 8287686: Add assertion to ensure that disarm value offset < 128 Reviewed-by: tschatzl, shade ! src/hotspot/share/runtime/thread.hpp Changeset: 33b9d770 Author: Aleksey Shipilev Date: 2022-06-03 12:19:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33b9d77065e65d3ba86b4d8250b1abe5743f0cef 8287729: Loom: Check alternative implementation on x86_32 Reviewed-by: alanb, zgu ! test/hotspot/jtreg/ProblemList.txt ! test/jdk/ProblemList.txt Changeset: 34bb0a5e Author: Zhengyu Gu Date: 2022-06-03 12:32:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/34bb0a5e6e9c91e037fbbe87382e8275b2435a3f 8287734: Shenandoah: Consolidate marking closures Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp Changeset: 28c112fc Author: Xue-Lei Andrew Fan Date: 2022-06-03 15:47:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/28c112fcf0f74d24175a0c2df036cf62d377181b 8287685: [BACKOUT] JDK-8287384 Speed up jdk.test.lib.util.ForceGC Reviewed-by: dcubed ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 59e9700c Author: Jonathan Gibbons Date: 2022-06-03 16:17:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/59e9700c4e0ae892f15607bcaa267e5868eb0512 8252717: Integrate/merge legacy standard doclet diagnostics and doclint Reviewed-by: erikj, prappo ! make/Docs.gmk ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/BaseConfiguration.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ReturnTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/DocLint.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/Messages.java + test/langtools/jdk/javadoc/doclet/testDoclintDocletMessages/TestDocLintDocletMessages.java ! test/langtools/jdk/javadoc/tool/doclint/DocLintTest.java Changeset: ce5ae517 Author: Aleksey Shipilev Date: 2022-06-03 16:43:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ce5ae51773974dfc324b5fff52accbe14a0c032e 8287637: Loom: Mismatched VirtualThread::state accessor Reviewed-by: alanb ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp Changeset: a0219da9 Author: Sandhya Viswanathan Date: 2022-06-03 17:59:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a0219da966f3a1cd12d402a816bdd79be778085e 8287517: C2: assert(vlen_in_bytes == 64) failed: 2 Reviewed-by: kvn, jiefu, chagedorn, fgao ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad + test/hotspot/jtreg/compiler/vectorization/TestSmallVectorPopIndex.java Changeset: 0b35460f Author: Quan Anh Mai Committer: Vladimir Kozlov Date: 2022-06-03 20:19:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0b35460fa00bfdca63a311a7379819cf102dee86 8283694: Improve bit manipulation and boolean to integer conversion operations on x86_64 Reviewed-by: kvn, dlong ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86_sha.cpp ! src/hotspot/cpu/x86/x86_64.ad ! test/micro/org/openjdk/bench/java/lang/Integers.java ! test/micro/org/openjdk/bench/java/lang/Longs.java ! test/micro/org/openjdk/bench/java/lang/RotateBenchmark.java Changeset: 7a0c8b14 Author: Alexander Matveev Date: 2022-06-03 20:27:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7a0c8b14aaf3573f5ea2bd2cc759c854825e6893 8286850: [macos] Add support for signing user provided app image Reviewed-by: asemenyuk ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacAppImageBuilder.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacPkgBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_de.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_ja.properties ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_zh_CN.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageBundler.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageFile.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/Arguments.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/CLIHelp.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/DeployParams.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/ValidOptions.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/HelpResources_zh_CN.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_zh_CN.properties ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/junit/jdk/jpackage/internal/AppImageFileTest.java ! test/jdk/tools/jpackage/macosx/SigningAppImageTest.java + test/jdk/tools/jpackage/macosx/SigningAppImageTwoStepsTest.java + test/jdk/tools/jpackage/share/jdk/jpackage/tests/PredefinedAppImageErrorTest.java Changeset: a7e07fdb Author: Martin Desruisseaux Committer: Phil Race Date: 2022-06-03 21:16:21 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a7e07fdbc104f668a03d88330e30dbaeb7b43719 8287102: ImageReaderSpi.canDecodeInput() for standard plugins should return false if a stream is too short Reviewed-by: prr ! src/java.desktop/share/classes/com/sun/imageio/plugins/bmp/BMPImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/common/ReaderUtil.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/gif/GIFImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/png/PNGImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFImageReaderSpi.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/wbmp/WBMPImageReaderSpi.java + test/jdk/javax/imageio/plugins/shared/CanDecodeTest.java ! test/jdk/javax/imageio/plugins/wbmp/CanDecodeTest.java Changeset: 6f526e1b Author: Srinivas Mandalika Committer: Sergey Bylokhov Date: 2022-06-03 21:27:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6f526e1bc3e0af4189fbb7d3b48d614717f266b0 8285373: Create an automated test for JDK-4702233 Reviewed-by: serb + test/jdk/javax/accessibility/4702233/AccessibleActionConstants.java + test/jdk/javax/accessibility/4702233/AccessibleContextConstants.java + test/jdk/javax/accessibility/4702233/AccessiblePropertiesTest.java + test/jdk/javax/accessibility/4702233/AccessibleRelationConstants.java + test/jdk/javax/accessibility/4702233/AccessibleRoleConstants.java + test/jdk/javax/accessibility/4702233/AccessibleStateConstants.java Changeset: 25e9901a Author: Srinivas Mandalika Committer: Sergey Bylokhov Date: 2022-06-03 21:28:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/25e9901aeacd45f8baec6d1e52a6823e7f087fa3 8285305: Create an automated test for JDK-4495286 Reviewed-by: serb + test/jdk/javax/accessibility/AccessibleJTableSelectionTest.java Changeset: b6cdfd68 Author: Artem Semenov Date: 2022-06-03 21:29:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b6cdfd685d0cea308b15558e2dc607a680c89dc0 8287740: NSAccessibilityShowMenuAction not working for text editors Reviewed-by: kizune, serb ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m ! test/jdk/java/awt/a11y/AccessibleActionsTest.java Changeset: e2cfe2e1 Author: Daniel D. Daugherty Date: 2022-06-03 22:17:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e2cfe2e14a03b638a5828625975716f9fed1f668 8231491: JDI tc02x004 failed again due to wrong # of breakpoints Reviewed-by: cjplummer ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004.java ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004/TestDescription.java Changeset: 005a3303 Author: Jie Fu Date: 2022-06-04 02:49:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/005a330387b8ee1179d1be31b53ea2c5d49c32f8 8287826: javax/accessibility/4702233/AccessiblePropertiesTest.java fails to compile Reviewed-by: dcubed ! test/jdk/javax/accessibility/4702233/AccessibleRoleConstants.java Changeset: d76c1089 Author: Manukumar V S Committer: Abdul Kolarkunnu Date: 2022-06-04 03:00:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d76c1089efc8816c6f804b78371e62e697fc62c5 8286772: java/awt/dnd/DropTargetInInternalFrameTest/DropTargetInInternalFrameTest.html times out and fails in Windows Reviewed-by: prr + test/jdk/java/awt/dnd/DropTargetInInternalFrameTest.java Changeset: 308c068b Author: tqxia Committer: Jie Fu Date: 2022-06-04 04:36:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/308c068b36528bcbbcca6e45de6949cb9ee7ae13 8287558: Remove remset coarsening stats during g1 remset summary printing Reviewed-by: tschatzl, iwalulya ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.hpp Changeset: e4e1e8f6 Author: Alan Bateman Date: 2022-06-04 06:15:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e4e1e8f66c9b0321cdb1aaf3b1c5d9b67224b210 8284199: Implementation of Structured Concurrency (Incubator) Co-authored-by: Ron Pressler Co-authored-by: Alan Bateman Co-authored-by: Brian Goetz Co-authored-by: Paul Sandoz Reviewed-by: psandoz, mcimadamore, darcy ! make/conf/docs-modules.conf ! make/conf/module-loader-map.conf ! src/java.base/share/classes/module-info.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructureViolationException.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructuredTaskScope.java + src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/package-info.java + src/jdk.incubator.concurrent/share/classes/module-info.java ! test/jdk/TEST.groups + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/PreviewFeaturesNotEnabled.java + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/StructuredTaskScopeTest.java + test/jdk/jdk/incubator/concurrent/StructuredTaskScope/StructuredThreadDumpTest.java Changeset: a113e166 Author: Jie Fu Date: 2022-06-04 06:47:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a113e166e91b9b3d3f74a284888a5135b48dad44 8287830: gtest fails to compile after JDK-8287661 Reviewed-by: shade ! test/hotspot/gtest/utilities/test_bitMap.cpp Changeset: a6fc485a Author: Pavel Rappo Date: 2022-06-04 15:55:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a6fc485a22484b70daf170e981432c0856b9d93d 8287753: [spelling] close well-established compounds Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/AnnoConstruct.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/dependencies/NewDependencyCollector.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlLinkInfo.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/ClassWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/DocletElement.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ClassBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PackageSummaryBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/ElementsTable.java Changeset: 3df4b034 Author: Daniel D. Daugherty Date: 2022-06-05 14:08:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3df4b034fbb49b9d9b3153807192fc999d7371ad 8287837: ProblemList java/lang/ref/OOMEInReferenceHandler.java in -Xcomp Reviewed-by: rriggs ! test/jdk/ProblemList-Xcomp.txt Changeset: 8c460b04 Author: Nikita Gubarkov Committer: Phil Race Date: 2022-06-05 15:34:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8c460b043e1cbaf1f2d74958033bb24dea66a390 8287609: macOS: SIGSEGV at [CoreFoundation] CFArrayGetCount / sun.font.CFont.getTableBytesNative Reviewed-by: prr ! src/java.desktop/macosx/native/libawt_lwawt/font/AWTFont.m Changeset: ebc012ec Author: Richard Reingruber Date: 2022-06-05 19:30:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ebc012ece28ea731c4756cab2374ebecfa5ac1a3 8287205: generate_cont_thaw generates dead code after jump to exception handler Reviewed-by: shade, kvn ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp Changeset: f347ff99 Author: Jatin Bhateja Date: 2022-06-06 00:37:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f347ff9986afbc578aca8784be658d3629904786 8283894: Intrinsify compress and expand bits on x86 Reviewed-by: psandoz, sviswanathan, jrose, kvn ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/cpu/x86/x86_32.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/c2compiler.cpp ! src/hotspot/share/opto/intrinsicnode.cpp ! src/hotspot/share/opto/intrinsicnode.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/library_call.hpp ! src/hotspot/share/opto/mulnode.hpp ! src/java.base/share/classes/java/lang/Integer.java ! src/java.base/share/classes/java/lang/Long.java + test/hotspot/gtest/opto/test_compress_expand_bits.cpp + test/hotspot/jtreg/compiler/intrinsics/TestBitShuffleOpers.java ! test/jdk/ProblemList.txt ! test/jdk/java/lang/CompressExpandSanityTest.java ! test/jdk/java/lang/CompressExpandTest.java Changeset: 24fe8ad7 Author: Fei Gao Committer: Pengfei Li Date: 2022-06-06 02:02:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/24fe8ad74cc481d18bed6896ca54a8d91c651d4a 8283307: Vectorize unsigned shift right on signed subword types Reviewed-by: jiefu, pli, sviswanathan, kvn ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp + test/hotspot/jtreg/compiler/c2/irTests/TestVectorizeURShiftSubword.java ! test/hotspot/jtreg/compiler/lib/ir_framework/IRNode.java ! test/hotspot/jtreg/compiler/vectorization/runner/ArrayShiftOpTest.java ! test/hotspot/jtreg/compiler/vectorization/runner/BasicByteOpTest.java ! test/hotspot/jtreg/compiler/vectorization/runner/BasicShortOpTest.java ! test/micro/org/openjdk/bench/vm/compiler/VectorShiftRight.java Changeset: 0d1a3053 Author: Aleksey Shipilev Date: 2022-06-06 05:29:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0d1a3053cd25dc666981c5aedfa5efc2dc95bd0e 8287732: jdk/jshell/ToolEnablePreviewTest.java fails on x86_32 after JDK-8287496 Reviewed-by: alanb, kvn ! test/langtools/TEST.ROOT ! test/langtools/jdk/jshell/ToolEnablePreviewTest.java Changeset: 4d6fb515 Author: Hannes Walln?fer Date: 2022-06-06 11:11:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4d6fb515516dfc5f04c9d8e9c3602292e89df52a 8287524: Improve checkboxes to select releases on deprecated API page Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SummaryListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/script.js ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/DeprecatedAPIListBuilder.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/mdl/pkg/TestAnnotation.java ! test/langtools/jdk/javadoc/doclet/testNewApiList/mdl/pkg/TestClass.java Changeset: c328f8fa Author: KIRIYAMA Takuya Committer: Ioi Lam Date: 2022-06-06 21:08:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c328f8fa2a166ead49d23138e0d7e507c3ebba53 8287764: runtime/cds/serviceability/ReplaceCriticalClasses failed on localized Windows Reviewed-by: iklam ! test/hotspot/jtreg/runtime/cds/serviceability/ReplaceCriticalClasses.java Changeset: 2e332c27 Author: Mandy Chung Date: 2022-06-06 21:11:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2e332c276052554540da0998316a5a99bc350cd6 8287671: Adjust ForceGC to invoke System::gc fewer times for negative case Reviewed-by: rriggs, bchristi, xuelei ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 3eb49fec Author: Andrey Turbanov Date: 2022-06-06 21:13:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3eb49feceabe8253b78b794a3d8fdc0556d8f2e2 8287766: Unnecessary Vector usage in LdapClient Reviewed-by: dfuchs, vtewari, aefimov ! src/java.naming/share/classes/com/sun/jndi/ldap/LdapClient.java Changeset: e94b05c7 Author: Andrey Turbanov Date: 2022-06-06 21:15:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e94b05c72046cfc52898917e835794bb1aec548a 8285285: Avoid redundant allocations in WindowsPreferences Reviewed-by: jpai ! src/java.prefs/windows/classes/java/util/prefs/WindowsPreferences.java Changeset: 5264881a Author: Alisen Chung Committer: Phil Race Date: 2022-06-06 21:22:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5264881a1528444dfefbabec6f42596810f0ce07 8286481: Exception printed to stdout on Windows when storing transparent image in clipboard Reviewed-by: prr, dnguyen ! src/java.desktop/windows/classes/sun/awt/windows/WClipboard.java Changeset: a277590c Author: Sergey Bylokhov Date: 2022-06-06 21:25:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a277590c89b173fd9bc028c715564f18fe62f722 8287761: Make the logging of J2DBench stable Reviewed-by: aghaisas, prr ! src/demo/share/java2d/J2DBench/src/j2dbench/Result.java ! src/demo/share/java2d/J2DBench/src/j2dbench/TestEnvironment.java Changeset: 0e06bf3b Author: Joe Darcy Date: 2022-06-06 21:26:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0e06bf3b04f69c57120d32106a3ae5f69030934d 8287838: Update Float and Double to use snippets Reviewed-by: alanb ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java Changeset: 124ba45f Author: Calvin Cheung Date: 2022-06-06 21:56:01 +0000 URL: https://git.openjdk.org/panama-foreign/commit/124ba45fb83985676136ecb3c55a781382fdbfd7 8287101: CDS should check for file truncation for all regions Reviewed-by: iklam, coleenp ! src/hotspot/share/cds/filemap.cpp ! test/hotspot/jtreg/runtime/cds/appcds/SharedArchiveConsistency.java ! test/lib/jdk/test/lib/cds/CDSArchiveUtils.java Changeset: c37c8e5d Author: Alexey Semenyuk Date: 2022-06-06 22:17:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c37c8e5d34905ff2df34a93aa53dd3369e164596 8250950: Allow per-user and system wide configuration of a jpackaged app Reviewed-by: almatvee ! src/jdk.jpackage/linux/native/libapplauncher/LinuxLauncherLib.cpp ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacBaseInstallerBundler.java ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacDmgBundler.java ! src/jdk.jpackage/macosx/native/applauncher/MacLauncher.cpp + src/jdk.jpackage/share/classes/jdk/jpackage/internal/PackageFile.java ! src/jdk.jpackage/share/native/applauncher/AppLauncher.cpp ! src/jdk.jpackage/share/native/applauncher/AppLauncher.h + src/jdk.jpackage/share/native/applauncher/PackageFile.cpp + src/jdk.jpackage/share/native/applauncher/PackageFile.h ! src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WinMsiBundler.java ! src/jdk.jpackage/windows/native/applauncher/WinLauncher.cpp ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/TKit.java ! test/jdk/tools/jpackage/run_tests.sh + test/jdk/tools/jpackage/share/PerUserCfgTest.java Changeset: a50b06e8 Author: Mandy Chung Date: 2022-06-06 22:33:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a50b06e85124f61b5133189a2a2e461753d5d9e7 8287867: Bad merge of jdk/test/lib/util/ForceGC.java causing test compilation error Reviewed-by: dcubed ! test/lib/jdk/test/lib/util/ForceGC.java Changeset: 645be42f Author: Sergey Bylokhov Date: 2022-06-06 23:17:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/645be42f76b8983a9096ed90caa70b5c59dd822c 8287824: The MTPerLineTransformValidation tests has a typo in the @run tag Reviewed-by: iris, prr ! test/jdk/sun/java2d/cmm/ColorConvertOp/MTPerLineTransformValidation.java Changeset: ef7cc210 Author: Xiaohong Gong Date: 2022-06-07 01:16:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ef7cc2105c66de443d3a9af706220272018a0d8d 8286279: [vectorapi] Only check index of masked lanes if offset is out of array boundary for masked store Reviewed-by: psandoz ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorIntrinsics.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template + test/micro/org/openjdk/bench/jdk/incubator/vector/StoreMaskedBenchmark.java Changeset: f6a79e34 Author: Hannes Walln?fer Date: 2022-06-07 06:32:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f6a79e340fb7545ab3ab75ea7da3d9a1a368b46f 8287674: CSS improvements for summary lists Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NewAPIListWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/testNewApiList/TestNewApiList.java ! test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Changeset: 956d44d2 Author: Aleksey Shipilev Date: 2022-06-07 06:55:35 +0000 URL: https://git.openjdk.org/panama-foreign/commit/956d44d2da54926a37acfb415d87f071663b4b40 8287071: Loom: Cleanup x86_64 gen_continuation_enter Reviewed-by: rpressler, pchilanomate, kvn ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp Changeset: aa6c568a Author: Claes Redestad Date: 2022-06-07 07:22:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/aa6c568a06fa92263d4b74ff979eb521ae953bc8 8287798: Reduce runtime of java.lang.reflect/runtime microbenchmarks Reviewed-by: jvernee, mchung ! test/micro/org/openjdk/bench/java/lang/reflect/Clazz.java ! test/micro/org/openjdk/bench/java/lang/reflect/ClazzWithSecurityManager.java ! test/micro/org/openjdk/bench/java/lang/reflect/MethodInvoke.java ! test/micro/org/openjdk/bench/java/lang/runtime/ObjectMethods.java Changeset: 778ed1a7 Author: Claes Redestad Date: 2022-06-07 07:23:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/778ed1a760d8f673811914b75e5d14e465881c91 8287810: Reduce runtime of java.lang microbenchmarks Reviewed-by: mchung ! test/micro/org/openjdk/bench/java/lang/ArrayCopy.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyAligned.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyObject.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedBoth.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedDst.java ! test/micro/org/openjdk/bench/java/lang/ArrayCopyUnalignedSrc.java ! test/micro/org/openjdk/bench/java/lang/ArrayFiddle.java ! test/micro/org/openjdk/bench/java/lang/Characters.java ! test/micro/org/openjdk/bench/java/lang/ClassForName.java ! test/micro/org/openjdk/bench/java/lang/Clone.java ! test/micro/org/openjdk/bench/java/lang/DoubleClassCheck.java ! test/micro/org/openjdk/bench/java/lang/FPComparison.java ! test/micro/org/openjdk/bench/java/lang/FloatClassCheck.java ! test/micro/org/openjdk/bench/java/lang/FloatingDecimal.java ! test/micro/org/openjdk/bench/java/lang/GetStackTrace.java ! test/micro/org/openjdk/bench/java/lang/IntegerDivMod.java ! test/micro/org/openjdk/bench/java/lang/LongDivMod.java ! test/micro/org/openjdk/bench/java/lang/NewInstance.java ! test/micro/org/openjdk/bench/java/lang/ObjectHashCode.java ! test/micro/org/openjdk/bench/java/lang/RotateBenchmark.java ! test/micro/org/openjdk/bench/java/lang/StackWalkBench.java ! test/micro/org/openjdk/bench/java/lang/StrictMathBench.java ! test/micro/org/openjdk/bench/java/lang/StringBuffers.java ! test/micro/org/openjdk/bench/java/lang/StringCompareToDifferentLength.java ! test/micro/org/openjdk/bench/java/lang/StringCompareToIgnoreCase.java ! test/micro/org/openjdk/bench/java/lang/StringEquals.java ! test/micro/org/openjdk/bench/java/lang/StringFormat.java ! test/micro/org/openjdk/bench/java/lang/StringHashCode.java - test/micro/org/openjdk/bench/java/lang/StringHttp.java ! test/micro/org/openjdk/bench/java/lang/StringIndexOf.java ! test/micro/org/openjdk/bench/java/lang/StringIndexOfChar.java ! test/micro/org/openjdk/bench/java/lang/StringOther.java ! test/micro/org/openjdk/bench/java/lang/StringReplace.java ! test/micro/org/openjdk/bench/java/lang/StringUpperLower.java ! test/micro/org/openjdk/bench/java/lang/SystemTime.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWait.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWaitProducerConsumer.java ! test/micro/org/openjdk/bench/java/lang/ThreadOnSpinWaitSharedCounter.java ! test/micro/org/openjdk/bench/java/lang/ThreadStartJoin.java Changeset: b6c6cc5d Author: Aleksey Shipilev Date: 2022-06-07 07:24:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b6c6cc5d9918bf1727ae13d09f8a3bf677a058a7 8286360: ARM32: Fix crashes after JDK-8284161 (Virtual Threads) Co-authored-by: Sergey Nazarkin Reviewed-by: dsamersoff ! src/hotspot/cpu/arm/frame_arm.cpp ! src/hotspot/cpu/arm/frame_arm.hpp ! src/hotspot/cpu/arm/frame_arm.inline.hpp ! src/hotspot/cpu/arm/nativeInst_arm_32.cpp ! src/hotspot/cpu/arm/nativeInst_arm_32.hpp ! src/hotspot/cpu/arm/stubGenerator_arm.cpp ! src/hotspot/cpu/arm/templateInterpreterGenerator_arm.cpp Changeset: 42261d75 Author: Claes Redestad Date: 2022-06-07 07:25:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/42261d752a140325496ffdd40d9ad62b189d1b3e 8287785: Reduce runtime of java.lang.invoke microbenchmarks Reviewed-by: mchung ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteSetTarget.java ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteSetTargetSelf.java ! test/micro/org/openjdk/bench/java/lang/invoke/CallSiteStable.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupAcquire.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupDefaultFind.java ! test/micro/org/openjdk/bench/java/lang/invoke/LookupPublicFind.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsCollector.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsSpreader.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleAsVarargsCollector.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBasicInvoke.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBindToBinding.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleBindToCurry.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertBoxing.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertCast.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnPrimitive.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnReference.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertReturnVoid.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertUnboxing.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleConvertWidening.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleInvokeWithArgs.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleProxiesAsIFInstance.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandleProxiesSuppl.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesArrayElementGetter.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesArrayElementSetter.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesCatchException.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesConstant.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesDropArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesExactInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFilterArgs.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFilterReturn.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesFoldArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesGuardWithTest.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesIdentity.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesInsertArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesPermuteArguments.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesSpreadInvoker.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodHandlesThrowException.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeAcquire.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeAppendParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeChangeParam.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeChangeReturn.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeDropParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeGenerify.java ! test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeInsertParams.java ! test/micro/org/openjdk/bench/java/lang/invoke/SwitchPointAdhoc.java ! test/micro/org/openjdk/bench/java/lang/invoke/SwitchPointGuard.java Changeset: 39fa52b5 Author: Xiaohong Gong Date: 2022-06-07 07:41:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/39fa52b5f7504eca7399b863b0fb934bdce37f7e 8283667: [vectorapi] Vectorization for masked load with IOOBE with predicate feature Reviewed-by: sviswanathan, psandoz ! src/hotspot/share/classfile/vmIntrinsics.hpp ! src/hotspot/share/opto/vectorIntrinsics.cpp ! src/java.base/share/classes/jdk/internal/misc/X-ScopedMemoryAccess.java.template ! src/java.base/share/classes/jdk/internal/vm/vector/VectorSupport.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortMaxVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template ! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template + test/micro/org/openjdk/bench/jdk/incubator/vector/LoadMaskedIOOBEBenchmark.java Changeset: dbf0905f Author: Christian Hagedorn Date: 2022-06-07 08:34:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/dbf0905ff4ad6c831095278fc47c3a6354fe3bc1 8286967: Unproblemlist compiler/c2/irTests/TestSkeletonPredicates.java and add additional test for JDK-8286638 Reviewed-by: kvn, thartmann ! test/hotspot/jtreg/ProblemList-Xcomp.txt + test/hotspot/jtreg/compiler/rangechecks/TestRangeCheckCmpUOverflow.java Changeset: b647a125 Author: Christian Hagedorn Date: 2022-06-07 08:37:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b647a1259b543aaf7d9943fc21971b4125640376 8286940: [IR Framework] Allow IR tests to build and use Whitebox without -DSkipWhiteBoxInstall=true Reviewed-by: kvn, thartmann ! test/hotspot/jtreg/compiler/c2/irTests/TestSuperwordFailsUnrolling.java ! test/hotspot/jtreg/compiler/lib/ir_framework/TestFramework.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestCompLevels.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestControls.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestIRMatching.java Changeset: 2d8c6490 Author: Severin Gehwolf Date: 2022-06-07 08:40:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2d8c6490540e3ccea23b81129b2e4073915071e0 8287663: Add a regression test for JDK-8287073 Reviewed-by: iklam ! src/java.base/linux/classes/jdk/internal/platform/CgroupSubsystemFactory.java ! test/jdk/jdk/internal/platform/cgroup/TestCgroupSubsystemFactory.java Changeset: bde7a7ae Author: Jan Lahoda Date: 2022-06-07 10:31:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bde7a7ae03f51360227c9757b2ab3ddbff4df908 8287236: Reorganize AST related to pattern matching for switch Reviewed-by: mcimadamore + src/jdk.compiler/share/classes/com/sun/source/tree/ConstantCaseLabelTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/ExpressionTree.java + src/jdk.compiler/share/classes/com/sun/source/tree/PatternCaseLabelTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/PatternTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java ! src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransPatterns.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/CRTable.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeCopier.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeTranslator.java ! test/langtools/tools/javac/patterns/DisambiguatePatterns.java ! test/langtools/tools/javac/tree/SourceTreeScannerTest.java Changeset: 4fe0ca9e Author: Sergey Tsypanov Committer: Naoto Sato Date: 2022-06-07 11:46:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4fe0ca9ec3b995eb113ac214219cae22f83333c9 8287860: Revise usage of volatile in j.u.Locale Reviewed-by: naoto ! src/java.base/share/classes/java/util/Locale.java ! src/java.base/share/classes/sun/util/locale/BaseLocale.java Changeset: f1dd559e Author: Magnus Ihse Bursie Date: 2022-06-07 11:53:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f1dd559e20342b892d0c1ed0314e5bba451bc5d3 8287896: PropertiesTest.sh fail on msys2 Reviewed-by: naoto ! test/jdk/java/util/Currency/PropertiesTest.sh Changeset: 8d28734e Author: Severin Gehwolf Date: 2022-06-07 12:28:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8d28734ede0ed3922c92451a172d1fa676e484e9 8287741: Fix of JDK-8287107 (unused cgv1 freezer controller) was incomplete Reviewed-by: iklam ! src/hotspot/os/linux/cgroupSubsystem_linux.cpp Changeset: 905bcbe3 Author: Adam Sotona Date: 2022-06-07 13:38:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/905bcbe34eb9750f6f7f12a577733c71a31d7972 8286571: java source launcher from a minimal jdk image containing jdk.compiler fails with --enable-preview option Reviewed-by: jlahoda ! src/jdk.compiler/share/classes/module-info.java ! test/jdk/tools/launcher/SourceMode.java ! test/langtools/tools/javac/file/LimitedImage.java Changeset: 2f62f15b Author: Jan Lahoda Date: 2022-06-07 13:41:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2f62f15b09dcfa4bed556dc7778cb1a6bb31d9ba 8287808: javac generates illegal class file for pattern matching switch with records Reviewed-by: sundar ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransPatterns.java ! test/langtools/tools/javac/annotations/typeAnnotations/classfile/Patterns.java ! test/langtools/tools/javac/patterns/SimpleDeconstructionPattern.java ! test/langtools/tools/javac/patterns/SimpleDeconstructionPatternNoPreview.out Changeset: 1499e5ea Author: Alexander Zvegintsev Date: 2022-06-07 13:57:01 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1499e5eac0cad3745495baeda7b5f9157647ebe9 8273573: [macos12] ActionListenerCalledTwiceTest.java fails on macOS 12 Reviewed-by: psadhukhan, serb ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/JMenuItem/ActionListenerCalledTwice/ActionListenerCalledTwiceTest.java Changeset: ee4a6c23 Author: Erik Gahlin Date: 2022-06-07 14:32:00 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ee4a6c23ee20ce3fafa59b13f68090397432480e 8287799: JFR: Less noisy platform threads with jfr print Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/PrettyWriter.java Changeset: 062db59e Author: Jan Lahoda Date: 2022-06-07 14:44:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/062db59eeb8ba6389aaa3c622dbc109a92d580ca 8286206: Missing cases for RECORD Reviewed-by: vromero, jjg ! src/jdk.compiler/share/classes/jdk/internal/shellsupport/doc/JavadocHelper.java ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! test/langtools/jdk/jshell/CompletionSuggestionTest.java Changeset: 67f1bd7f Author: Tejesh R Committer: Alexey Ivanov Date: 2022-06-07 15:50:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/67f1bd7ff1bb218fd6de9ef1e957f729013e133c 8286620: Create regression test for verifying setMargin() of JRadioButton Reviewed-by: jdv, honkar, aivanov + test/jdk/javax/swing/JRadioButton/bug4380543.java Changeset: 96641c0c Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-07 16:02:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/96641c0c42ff79d809db1314407d451eb7d494b4 8287745: jni/nullCaller/NullCallerTest.java fails with "exitValue = 1" Reviewed-by: erikj, mchung ! make/test/JtregNativeJdk.gmk ! test/jdk/ProblemList.txt Changeset: 5d4ea9b9 Author: Joe Darcy Date: 2022-06-07 16:13:42 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5d4ea9b9549b762b7c207e5c2ee65bc51591433b 8273346: Expand library mappings to IEEE 754 operations Reviewed-by: bpb ! src/java.base/share/classes/java/lang/Double.java ! src/java.base/share/classes/java/lang/Float.java ! src/java.base/share/classes/java/lang/Math.java ! src/java.base/share/classes/java/math/RoundingMode.java Changeset: 41d5809c Author: Erik Gahlin Date: 2022-06-07 16:42:11 +0000 URL: https://git.openjdk.org/panama-foreign/commit/41d5809caff0a219c2153fe88d0c61c4b5eba62c 8287811: JFR: jfr configure error message should not print stack trace Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/Configure.java Changeset: c41a283f Author: Ioi Lam Date: 2022-06-07 16:57:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c41a283f527dcc4397707b8b19880f1b9aac6fb3 8273853: Update the Java manpage for automatic CDS archive updating Reviewed-by: ccheung, dholmes ! src/java.base/share/man/java.1 Changeset: 3da7e393 Author: Xin Liu Date: 2022-06-07 17:12:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3da7e393ee4b45c40b8bb132dd09f5a6ba306116 8287840: Dead copy region node blocks IfNode's fold-compares Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/node.cpp Changeset: 91e6bf67 Author: Daniel D. Daugherty Date: 2022-06-07 17:25:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/91e6bf6791b7fc26db6f4288830091d812232dd8 8287919: ProblemList java/lang/CompressExpandTest.java Reviewed-by: azvegint ! test/jdk/ProblemList.txt Changeset: 9ec27d0e Author: Ioi Lam Date: 2022-06-07 17:28:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9ec27d0e9fff06d38d7541eb630867d412d9e4a6 8287872: Disable concurrent execution of hotspot docker tests Reviewed-by: mseledtsov, ccheung = test/hotspot/jtreg/containers/docker/TEST.properties Changeset: 8e10c2bf Author: Leonid Mesnik Date: 2022-06-07 18:55:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8e10c2bfc73a25d93187b62f5aa8e6210d6fe98b 8287877: Exclude vmTestbase/nsk/jvmti/AttachOnDemand/attach022/TestDescription.java until JDK-8277573 is fixed Reviewed-by: dcubed, sspitsyn ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 74be2d9e Author: Chris Plummer Date: 2022-06-07 19:07:34 +0000 URL: https://git.openjdk.org/panama-foreign/commit/74be2d9ef6d5a8c27257c86cf73decf440a4b292 8286983: rename jdb -trackvthreads and debug agent enumeratevthreads options and clarify "Preview Feature" nature of these options Reviewed-by: amenkov, lmesnik, alanb ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTY.java ! src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/SunCommandLineLauncher.java ! src/jdk.jdi/share/classes/com/sun/tools/jdi/resources/jdi.properties ! src/jdk.jdi/share/man/jdb.1 ! src/jdk.jdwp.agent/share/native/libjdwp/VirtualMachineImpl.c ! src/jdk.jdwp.agent/share/native/libjdwp/debugInit.c ! src/jdk.jdwp.agent/share/native/libjdwp/util.h ! test/hotspot/jtreg/vmTestbase/nsk/jdb/kill/kill001/kill001.java ! test/hotspot/jtreg/vmTestbase/nsk/jdb/threads/threads002/threads002.java ! test/hotspot/jtreg/vmTestbase/nsk/jdb/trace/trace001/trace001.java ! test/hotspot/jtreg/vmTestbase/nsk/share/jdi/Binder.java ! test/hotspot/jtreg/vmTestbase/nsk/share/jpda/DebugeeBinder.java Changeset: 1aa87e00 Author: Andrey Turbanov Date: 2022-06-07 19:39:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1aa87e0078765480bc7805e95b747addaf993cf6 8287148: Avoid redundant HashMap.containsKey calls in ExtendedKeyCodes.getExtendedKeyCodeForChar Reviewed-by: prr ! src/java.desktop/share/classes/sun/awt/ExtendedKeyCodes.java Changeset: b12e7f1b Author: Alex Menkov Date: 2022-06-07 20:32:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b12e7f1bf95e27fc50b79a5d2c09b8820a4a935a 8279358: vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/TestDescription.java fails with usage tracker Reviewed-by: cjplummer, lmesnik ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/RedefineClasses/redefclass031/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/RedefineClasses/redefclass031/redefclass031.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI01/ji01t001/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI01/ji01t001/ji01t001.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/jni_interception/JI03/ji03t003/ji03t003.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/multienv/MA10/ma10t001/TestDescription.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/multienv/MA10/ma10t001/ma10t001.cpp ! test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/jvmti_tools.cpp ! test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/jvmti_tools.h Changeset: 8e078391 Author: Joe Wang Date: 2022-06-07 20:49:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8e0783917975075aae5d586f0076d5093afb0b62 8285081: Improve XPath operators count accuracy Reviewed-by: naoto, lancea ! src/java.xml/share/classes/com/sun/java_cup/internal/runtime/lr_parser.java ! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java ! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java Changeset: b7a34f72 Author: Daniel D. Daugherty Date: 2022-06-07 21:08:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b7a34f728d0653d55ef01da045c9aad4c0471143 8287927: ProblemList java/awt/GraphicsDevice/DisplayModes/UnknownRefrshRateTest.java on macosx-aarch64 Reviewed-by: aivanov ! test/jdk/ProblemList.txt Changeset: bf439f8c Author: Sergey Bylokhov Date: 2022-06-07 23:10:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf439f8c93157a7f0e6489db2ccc56c5f7210402 8287876: The recently de-problemlisted TestTitledBorderLeak test is unstable Reviewed-by: psadhukhan, prr ! test/jdk/javax/swing/border/TestTitledBorderLeak.java Changeset: 68c5957b Author: Ioi Lam Date: 2022-06-07 23:11:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/68c5957b9e2306d96bec2d655ec743f13f250dae 8287869: -XX:+AutoCreateSharedArchive doesn't work when JDK build is switched Reviewed-by: ccheung, dholmes ! src/hotspot/share/cds/filemap.cpp ! src/hotspot/share/include/cds.h ! test/hotspot/jtreg/runtime/cds/appcds/SharedArchiveConsistency.java ! test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/TestAutoCreateSharedArchive.java Changeset: 39ec58b6 Author: Joe Darcy Date: 2022-06-08 00:56:57 +0000 URL: https://git.openjdk.org/panama-foreign/commit/39ec58b63cff640734b5fd9454441bb93c467e5b 8287886: Further terminology updates to match JLS Reviewed-by: jjg ! src/java.compiler/share/classes/javax/annotation/processing/AbstractProcessor.java ! src/java.compiler/share/classes/javax/annotation/processing/RoundEnvironment.java ! src/java.compiler/share/classes/javax/lang/model/AnnotatedConstruct.java ! src/java.compiler/share/classes/javax/lang/model/element/AnnotationMirror.java ! src/java.compiler/share/classes/javax/lang/model/element/ExecutableElement.java ! src/java.compiler/share/classes/javax/lang/model/util/Elements.java Changeset: 45f1b72a Author: Sandhya Viswanathan Date: 2022-06-08 01:05:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/45f1b72a6ee5b86923c3217f101a90851c30401f 8287697: Limit auto vectorization to 32-byte vector on Cascade Lake Reviewed-by: kvn, jbhateja ! src/hotspot/cpu/x86/vm_version_x86.cpp ! src/hotspot/share/opto/c2_globals.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/superword.hpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp Changeset: 32dd1eef Author: Joe Darcy Date: 2022-06-08 01:59:50 +0000 URL: https://git.openjdk.org/panama-foreign/commit/32dd1eef8859231bfb298a7b86f808d8188aec69 8287967: Update golden test files after JDK-8287886 Reviewed-by: dholmes ! test/langtools/tools/javac/processing/warnings/au_8.out ! test/langtools/tools/javac/processing/warnings/au_current.out Changeset: 7df48f97 Author: Thiago Henrique H?pner Committer: Jaikiran Pai Date: 2022-06-08 04:08:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7df48f97d23fdeba032ddec51b6a6e6ad02d14cd 8287353: Use snippet tag instead of pre tag in Javadoc of InterruptedException Reviewed-by: jpai ! src/java.base/share/classes/java/lang/InterruptedException.java Changeset: 4662e06b Author: Daniel Jeli?ski Date: 2022-06-08 06:33:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4662e06bff2cef7425c194a9cdd7a6fe7469179e 8277307: Pre shared key sent under both session_ticket and pre_shared_key extensions Reviewed-by: coffeys, ascarpino ! src/java.base/share/classes/sun/security/ssl/SessionTicketExtension.java ! test/jdk/javax/net/ssl/SSLSession/ResumeTLS13withSNI.java Changeset: 590337e2 Author: Roland Westrelin Date: 2022-06-08 06:35:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/590337e2f229445e353e7c32e0dcff8d93e412d2 8286625: C2 fails with assert(!n->is_Store() && !n->is_LoadStore()) failed: no node with a side effect Reviewed-by: thartmann, chagedorn ! src/hotspot/share/opto/loopPredicate.cpp ! src/hotspot/share/opto/loopTransform.cpp + test/hotspot/jtreg/compiler/loopopts/TestOverUnrolling2.java Changeset: 0960ecc4 Author: Roland Westrelin Date: 2022-06-08 06:36:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0960ecc407f8049903e3d183ac75c6a85dcc5b5f 8287700: C2 Crash running eclipse benchmark from Dacapo Reviewed-by: chagedorn, kvn, xliu, thartmann ! src/hotspot/share/opto/escape.cpp + test/hotspot/jtreg/compiler/types/TestEACheckCastPP.java Changeset: bf0e625f Author: Roland Westrelin Date: 2022-06-08 06:41:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf0e625fe0e83c00006f13367a67e9f6175d21e4 8286451: C2: assert(nb == 1) failed: only when the head is not shared Reviewed-by: thartmann, chagedorn ! src/hotspot/share/ci/ciTypeFlow.cpp + test/hotspot/jtreg/compiler/ciTypeFlow/TestSharedLoopHead.java Changeset: 47d3c2a1 Author: Jie Fu Date: 2022-06-08 06:55:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/47d3c2a175a839add63d5453910e109923c41161 8287980: Build is broken due to SuperWordMaxVectorSize when C2 is disabled after JDK-8287697 Reviewed-by: kvn ! src/hotspot/cpu/x86/vm_version_x86.cpp Changeset: 5c39a366 Author: Claes Redestad Date: 2022-06-08 07:17:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5c39a3664186b91512c6a6cfcd8aa0e9860614ea 8287522: StringConcatFactory: Add in prependers and mixers in batches Reviewed-by: jlaskey, mchung ! make/jdk/src/classes/build/tools/classlist/HelloClasslist.java ! src/java.base/share/classes/java/lang/invoke/LambdaForm.java ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java ! test/micro/org/openjdk/bench/java/lang/invoke/StringConcatFactoryBootstraps.java Changeset: ecf00785 Author: Claes Redestad Date: 2022-06-08 07:18:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ecf00785f21125d88f5cc18311f586a7bb6ddc56 8287442: Reduce list to array conversions in java.lang.invoke.MethodHandles Reviewed-by: jvernee ! src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/java.base/share/classes/java/lang/invoke/MethodHandles.java ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java Changeset: 230726ea Author: Matthias Baesken Date: 2022-06-08 07:21:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/230726ea58041506157646b6efad0b5c4a012559 8287735: Provide separate event category for dll operations Reviewed-by: coleenp, stuefe ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/utilities/events.cpp ! src/hotspot/share/utilities/events.hpp Changeset: d959c22a Author: Jie Fu Date: 2022-06-08 08:08:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d959c22a9574359e2d5134ac8365e8a9df4f7cef 8288000: compiler/loopopts/TestOverUnrolling2.java fails with release VMs Reviewed-by: roland, thartmann ! test/hotspot/jtreg/compiler/loopopts/TestOverUnrolling2.java Changeset: 6e3e470d Author: Christian Hagedorn Date: 2022-06-08 10:41:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6e3e470dac80d3b6c3a0f4845ce4115858178dd3 8285965: TestScenarios.java does not check for "" correctly Reviewed-by: thartmann, kvn ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/TestScenarios.java ! test/hotspot/jtreg/testlibrary_tests/ir_framework/tests/Utils.java Changeset: a9d46f34 Author: Alexey Pavlyutkin Committer: Yuri Nesterenko Date: 2022-06-08 11:42:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a9d46f3413ef64c87520509fd70ac42629fbce91 8287894: Use fixed timestamp as an alternative of __DATE__ macro in jdk.jdi to make Windows build reproducible Reviewed-by: erikj, ihse ! make/modules/jdk.jdi/Lib.gmk ! src/jdk.jdi/share/native/libdt_shmem/shmemBase.h ! src/jdk.jdi/windows/native/libdt_shmem/shmem_md.c Changeset: 5ad6286b Author: Feilong Jiang Committer: Fei Yang Date: 2022-06-08 12:38:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5ad6286b73889e47f40d0051a96ef91137faa25c 8287970: riscv: jdk/incubator/vector/*VectorTests failing Reviewed-by: kvn, fyang, dlong, yadongwang ! src/hotspot/cpu/riscv/riscv_v.ad Changeset: f7791ad0 Author: Magnus Ihse Bursie Date: 2022-06-08 14:04:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f7791ad0ea984d49ff26e6f30233d8dcee4305b8 8287895: Some langtools tests fail on msys2 Reviewed-by: jjg ! test/langtools/tools/javac/Paths/Util.sh Changeset: 78d37126 Author: Christian Hagedorn Date: 2022-06-08 14:12:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/78d371266ae8a629db8176ced4d48e9521702cce 8287432: C2: assert(tn->in(0) != __null) failed: must have live top node Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/compile.cpp + test/hotspot/jtreg/compiler/c2/TestRemoveMemBarPrecEdge.java Changeset: b021d37c Author: Alexander Zuev Date: 2022-06-08 14:44:41 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b021d37cec557059e288d5937a73577233b0b172 8283383: [macos] a11y : Screen magnifier shows extra characters (0) at the end JButton accessibility name Reviewed-by: serb, dmarkov ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/ButtonAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/ImageAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/MenuAccessibility.m ! src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/MenuItemAccessibility.m Changeset: a9b9831f Author: Alexey Ivanov Date: 2022-06-08 15:36:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a9b9831f2a88ed3b7701d402b167a096b94aeb98 8286663: Resolve IDE warnings in WTrayIconPeer and SystemTray Reviewed-by: prr, serb, honkar ! src/java.desktop/share/classes/java/awt/SystemTray.java ! src/java.desktop/windows/classes/sun/awt/windows/WTrayIconPeer.java Changeset: 6fb84e2c Author: Naoto Sato Date: 2022-06-08 15:50:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6fb84e2c9119bdb9c66dd49422bcab637bbd4008 8287541: Files.writeString fails to throw IOException for charset "windows-1252" Reviewed-by: iris, bpb, alanb, jpai, lancea, aturbanov ! src/java.base/share/classes/java/lang/String.java ! test/jdk/java/nio/file/Files/ReadWriteString.java Changeset: c68419f2 Author: yuu1127 Committer: Vladimir Kozlov Date: 2022-06-08 16:05:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c68419f2f778f796d410ba3d27e916ae47700af5 8286990: Add compiler name to warning messages in Compiler Directive Reviewed-by: kvn, thartmann ! src/hotspot/share/compiler/compilerDirectives.cpp ! src/hotspot/share/compiler/compilerDirectives.hpp Changeset: b92ce269 Author: Tim Prinzing Committer: Mandy Chung Date: 2022-06-08 16:21:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b92ce2699b604cff638db583215863da8e253db8 8281001: Class::forName(String) defaults to system class loader if the caller is null Reviewed-by: mchung ! src/java.base/share/classes/java/lang/Class.java ! test/jdk/jni/nullCaller/CallHelper.hpp ! test/jdk/jni/nullCaller/NullCallerTest.java ! test/jdk/jni/nullCaller/exeNullCallerTest.cpp Changeset: c15e10fb Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-08 16:23:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c15e10fb6c35a99e80009f0a7b6a252fcbb549b7 8233760: Result of BigDecimal.toString throws overflow exception on new BigDecimal(str) Reviewed-by: darcy ! src/java.base/share/classes/java/math/BigDecimal.java ! test/jdk/java/math/BigDecimal/StringConstructor.java Changeset: c8cff1bd Author: Raffaello Giulietti Committer: Joe Darcy Date: 2022-06-08 16:28:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c8cff1bd6f9807e90a6992ad3e181fe0d94397b8 8202449: overflow handling in Random.doubles Reviewed-by: darcy ! src/java.base/share/classes/java/util/Random.java ! src/java.base/share/classes/java/util/SplittableRandom.java ! src/java.base/share/classes/java/util/random/RandomGenerator.java ! src/java.base/share/classes/jdk/internal/util/random/RandomSupport.java ! test/jdk/java/util/Random/RandomNextDoubleBoundary.java Changeset: 024a240e Author: Pavel Rappo Date: 2022-06-08 17:37:41 +0000 URL: https://git.openjdk.org/panama-foreign/commit/024a240e1b938504a0e8ac2acdee78d89b5a3cec 8287333: Clean up ParamTaglet and ThrowsTaglet Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ThrowsTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/CommentHelper.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java Changeset: 04f02ac6 Author: Kim Barrett Date: 2022-06-08 19:16:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/04f02ac6b2ce496b86642987bb7e25d21b52a5b6 8214976: Warn about uses of functions replaced for portability Reviewed-by: dholmes, tschatzl, coleenp ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/runtime/vmThread.cpp ! src/hotspot/share/utilities/compilerWarnings.hpp ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp ! src/hotspot/share/utilities/compilerWarnings_visCPP.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp ! test/hotspot/gtest/gtestMain.cpp + test/hotspot/gtest/unittest.cpp ! test/hotspot/gtest/unittest.hpp Changeset: b6233985 Author: Ron Pressler Committer: Patricio Chilano Mateo Date: 2022-06-08 19:50:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b62339855571b234979e2cf250c9251d1d063a06 8287901: Loom: Failures with -XX:+VerifyStack Reviewed-by: pchilanomate, coleenp ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/x86/frame_x86.cpp ! test/jdk/jdk/internal/vm/Continuation/Basic.java Changeset: 130ce7c6 Author: Man Cao Date: 2022-06-08 20:18:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/130ce7c6b8998764f1a9ce5d5c6d60f053511991 8288052: Small logging clarification during failed heap shrinkage Co-authored-by: Jonathan Joo Reviewed-by: tschatzl ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp Changeset: 65f0829d Author: Maurizio Cimadamore Date: 2022-06-08 23:58:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/65f0829d645fd988c6a208622b1f34bf9de08e60 8288068: Javadoc contains spurious reference to CLinker Reviewed-by: iris ! src/java.base/share/classes/java/lang/foreign/Linker.java ! src/java.base/share/classes/java/lang/foreign/package-info.java Changeset: a941bc2d Author: Jie Fu Date: 2022-06-09 00:01:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a941bc2de674fdd77cdbbdf3641309fc39bfc0c4 8288082: Build failure due to __clang_major__ is not defined after JDK-8214976 Reviewed-by: dholmes ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp Changeset: e01cd7c3 Author: XenoAmess Committer: Stuart Marks Date: 2022-06-09 01:50:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e01cd7c3ed923cd19509fc972ba6e4aa2991289f 8284780: Need methods to create pre-sized HashSet and LinkedHashSet Reviewed-by: naoto, bpb, dfuchs, ascarpino ! src/java.base/share/classes/com/sun/crypto/provider/PBEKeyFactory.java ! src/java.base/share/classes/java/io/ObjectStreamClass.java ! src/java.base/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/java.base/share/classes/java/nio/charset/Charset.java ! src/java.base/share/classes/java/time/format/DecimalStyle.java ! src/java.base/share/classes/java/util/Calendar.java ! src/java.base/share/classes/java/util/HashSet.java ! src/java.base/share/classes/java/util/LinkedHashSet.java ! src/java.base/share/classes/jdk/internal/module/ModuleInfo.java ! src/java.base/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/java.base/share/classes/sun/nio/ch/AsynchronousServerSocketChannelImpl.java ! src/java.base/share/classes/sun/nio/ch/AsynchronousSocketChannelImpl.java ! src/java.base/share/classes/sun/nio/fs/AbstractPoller.java ! src/java.base/share/classes/sun/nio/fs/PollingWatchService.java ! src/java.base/share/classes/sun/security/pkcs/PKCS7.java ! src/java.base/share/classes/sun/security/provider/certpath/ConstraintsChecker.java ! src/java.base/share/classes/sun/security/provider/certpath/ForwardBuilder.java ! src/java.base/share/classes/sun/security/provider/certpath/KeyChecker.java ! src/java.base/share/classes/sun/security/provider/certpath/PolicyChecker.java ! src/java.base/share/classes/sun/security/ssl/CertificateMessage.java ! src/java.base/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java ! src/java.base/share/classes/sun/util/locale/InternalLocaleBuilder.java ! src/java.net.http/share/classes/jdk/internal/net/http/websocket/OpeningHandshake.java ! src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java ! src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipFileSystem.java ! test/jdk/java/io/RandomAccessFile/UnreferencedRAFClosesFd.java ! test/jdk/java/lang/System/MacEncoding/TestFileEncoding.java ! test/jdk/java/text/Format/common/FormatIteratorTest.java ! test/jdk/java/util/HashMap/WhiteBoxResizeTest.java Changeset: 3419beec Author: wanghaomin Committer: Jie Fu Date: 2022-06-09 04:00:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3419beec7fa646ab30f55ac27fdb47c4c1e1e764 8286847: Rotate vectors don't support byte or short Reviewed-by: eliu, xgong, jiefu, jbhateja ! src/hotspot/share/opto/vectornode.cpp + test/hotspot/jtreg/compiler/vectorization/TestRotateByteAndShortVector.java Changeset: 7e1cce8c Author: Aleksey Shipilev Date: 2022-06-09 05:48:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e1cce8cb508a8af770443360721fbb3d3b40237 8288051: Loom: Extend the compilation warning workaround in stack chunk copy Reviewed-by: coleenp ! src/hotspot/share/oops/stackChunkOop.inline.hpp Changeset: aa2fc54b Author: Aleksey Shipilev Date: 2022-06-09 05:49:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/aa2fc54b61ad84cc6faa80efa3bd3097adbbc422 8287493: 32-bit Windows build failure in codeBlob.cpp after JDK-8283689 Reviewed-by: kvn, zgu, alanb, jvernee ! src/hotspot/share/code/codeBlob.hpp Changeset: bc28baeb Author: Jan Lahoda Date: 2022-06-09 07:11:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bc28baeba9360991e9b7575e1fbe178d873ccfc1 8287897: Augment src/jdk.internal.le/share/legal/jline.md with information on 4th party dependencies Reviewed-by: vromero ! src/jdk.internal.le/share/legal/jline.md Changeset: 5a89cb01 Author: Tejesh R Committer: Alexey Ivanov Date: 2022-06-09 08:12:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5a89cb01bc92408648a3b59b63251ec8d0b67558 6429812: NPE after calling JTable.updateUI() when using a header renderer + XP L&F Reviewed-by: aivanov, serb ! src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/WindowsTableHeaderUI.java + test/jdk/javax/swing/JTableHeader/TableHeaderRendererTest.java Changeset: e5b56baf Author: Aleksey Shipilev Date: 2022-06-09 08:16:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e5b56bafa9ed68dec82adebc3eb298b70df7faeb 8288040: x86: Loom: Improve cont/monitor-count helper methods Reviewed-by: coleenp, rpressler ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp ! src/hotspot/cpu/x86/templateTable_x86.cpp Changeset: 560e2927 Author: Martin Doerr Date: 2022-06-09 10:14:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/560e2927e380a372effdfe4a7260c3606bf74c8b 8287738: [PPC64] jdk/incubator/vector/*VectorTests failing Reviewed-by: kvn, goetz ! src/hotspot/cpu/ppc/assembler_ppc.hpp ! src/hotspot/cpu/ppc/assembler_ppc.inline.hpp ! src/hotspot/cpu/ppc/ppc.ad Changeset: 4285e3d6 Author: Nick Gasson Date: 2022-06-09 11:48:46 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4285e3d6db487d85138486d1f7853c7c067c59cd 8288023: AArch64: disable PAC-RET when preview is enabled Reviewed-by: rpressler, adinn ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp Changeset: 3fa99844 Author: Harold Seigel Date: 2022-06-09 12:03:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3fa99844a69401f84677e7d512ffd937f7f16898 8287854: Dangling reference in ClassVerifier::verify_class Reviewed-by: dholmes, coleenp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/classfile/verifier.hpp Changeset: 7e948f7c Author: Claes Redestad Date: 2022-06-09 13:11:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e948f7ccbb4b9be04f5ecb65cc8dd72e3b495f4 8287903: Reduce runtime of java.math microbenchmarks Reviewed-by: ecaspole, aph ! test/micro/org/openjdk/bench/java/math/BigDecimals.java ! test/micro/org/openjdk/bench/java/math/BigIntegers.java ! test/micro/org/openjdk/bench/java/math/FpRoundingBenchmark.java = test/micro/org/openjdk/bench/vm/compiler/VectorSignum.java Changeset: db4405d0 Author: Andrew Haley Date: 2022-06-09 14:13:05 +0000 URL: https://git.openjdk.org/panama-foreign/commit/db4405d0f880dd43dc7da0b81bc2da2619d315b0 8288078: linux-aarch64-optimized build fails in Tier5 after JDK-8287567 Reviewed-by: adinn, thartmann ! src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp Changeset: 59b0de6b Author: Aleksey Shipilev Date: 2022-06-09 14:16:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/59b0de6bc7064b39cdc51517dee4f4d96af3efaf 8288048: Build failure with GCC 6 after JDK-8286562 Reviewed-by: kbarrett, ysuenaga ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdBits.inline.hpp ! src/hotspot/share/utilities/compilerWarnings.hpp ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp Changeset: 26714431 Author: Conor Cleary Committer: Daniel Fuchs Date: 2022-06-09 15:03:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/267144311c96109421b897b359c155a963661d31 8286171: HttpClient/2 : Expect:100-Continue blocks indefinitely when response is not 100 Reviewed-by: dfuchs, jpai ! src/java.net.http/share/classes/jdk/internal/net/http/Exchange.java ! src/java.net.http/share/classes/jdk/internal/net/http/ExchangeImpl.java ! src/java.net.http/share/classes/jdk/internal/net/http/Http1Exchange.java ! src/java.net.http/share/classes/jdk/internal/net/http/Http1Response.java ! src/java.net.http/share/classes/jdk/internal/net/http/Stream.java + test/jdk/java/net/httpclient/ExpectContinueTest.java Changeset: edff51e5 Author: Joe Darcy Committer: Erik Joelsson Date: 2022-06-09 16:16:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/edff51e5fdb5282830ecfb3792a88c7b28ca6557 8284858: Start of release updates for JDK 20 8286035: Add source 20 and target 20 to javac 8286034: Add SourceVersion.RELEASE_20 Reviewed-by: dholmes, kcr, iris, erikj, jjg, ihse ! .jcheck/conf ! make/conf/version-numbers.conf ! make/scripts/generate-symbol-data.sh ! src/hotspot/share/classfile/classFileParser.cpp ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementScanner14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleTypeVisitor14.java ! src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor14.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java + src/jdk.compiler/share/data/symbols/java.base-J.sym.txt + src/jdk.compiler/share/data/symbols/java.compiler-J.sym.txt + src/jdk.compiler/share/data/symbols/java.datatransfer-J.sym.txt + src/jdk.compiler/share/data/symbols/java.desktop-J.sym.txt + src/jdk.compiler/share/data/symbols/java.instrument-J.sym.txt + src/jdk.compiler/share/data/symbols/java.logging-J.sym.txt + src/jdk.compiler/share/data/symbols/java.management-J.sym.txt + src/jdk.compiler/share/data/symbols/java.management.rmi-J.sym.txt + src/jdk.compiler/share/data/symbols/java.naming-J.sym.txt + src/jdk.compiler/share/data/symbols/java.net.http-J.sym.txt + src/jdk.compiler/share/data/symbols/java.rmi-J.sym.txt + src/jdk.compiler/share/data/symbols/java.scripting-J.sym.txt + src/jdk.compiler/share/data/symbols/java.security.jgss-J.sym.txt + src/jdk.compiler/share/data/symbols/java.security.sasl-J.sym.txt + src/jdk.compiler/share/data/symbols/java.smartcardio-J.sym.txt + src/jdk.compiler/share/data/symbols/java.sql-J.sym.txt + src/jdk.compiler/share/data/symbols/java.sql.rowset-J.sym.txt + src/jdk.compiler/share/data/symbols/java.xml-J.sym.txt + src/jdk.compiler/share/data/symbols/java.xml.crypto-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.accessibility-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.attach-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.compiler-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.dynalink-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.httpserver-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.incubator.foreign-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.incubator.vector-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jartool-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.javadoc-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jconsole-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jdi-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jfr-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jshell-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.jsobject-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.management-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.management.agent-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.net-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.sctp-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.security.auth-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.security.jgss-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.unsupported-J.sym.txt + src/jdk.compiler/share/data/symbols/jdk.xml.dom-J.sym.txt ! src/jdk.compiler/share/data/symbols/symbols ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java ! test/langtools/tools/javac/api/TestGetSourceVersions.java ! test/langtools/tools/javac/classfiles/ClassVersionChecker.java ! test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java ! test/langtools/tools/javac/preview/classReaderTest/Client.nopreview.out ! test/langtools/tools/javac/preview/classReaderTest/Client.preview.out ! test/langtools/tools/javac/versions/Versions.java Changeset: d482d7f5 Author: Brian Burkhalter Date: 2022-06-09 16:30:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d482d7f5b99e89185471c05cde797f13405c32f2 8286160: (fs) Files.exists returns unexpected results with C:\pagefile.sys because it's not readable Reviewed-by: alanb ! src/java.base/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! test/jdk/java/nio/file/Files/Misc.java Changeset: 900d967d Author: Andrey Turbanov Date: 2022-06-09 20:29:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/900d967da52afca9b239d8a58aa81b48b9fe0a78 8287924: Avoid redundant HashMap.containsKey call in EnvHelp.mapToHashtable Reviewed-by: sspitsyn, cjplummer ! src/java.management/share/classes/com/sun/jmx/remote/util/EnvHelp.java Changeset: 94b473e4 Author: Thomas Schatzl Date: 2022-06-10 07:57:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/94b473e4642a5a4626faeb73341b4aea128ccb31 8280454: G1: ClassLoaderData verification keeps CLDs live that causes problems with VerifyDuringGC during Remark Reviewed-by: stefank, coleenp ! src/hotspot/share/classfile/classLoaderData.hpp ! src/hotspot/share/classfile/classLoaderData.inline.hpp ! src/hotspot/share/classfile/classLoaderDataGraph.cpp ! src/hotspot/share/classfile/classLoaderDataGraph.hpp ! src/hotspot/share/classfile/dictionary.cpp + test/hotspot/jtreg/runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java Changeset: dae4c493 Author: Roland Westrelin Date: 2022-06-10 08:17:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/dae4c493e48b6bb942cf6f629f1ff8839e32e54a 8286197: C2: Optimize MemorySegment shape in int loop Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/castnode.cpp ! src/hotspot/share/opto/castnode.hpp ! src/hotspot/share/opto/loopopts.cpp + test/hotspot/jtreg/compiler/c2/irTests/TestConvI2LCastLongLoop.java ! test/hotspot/jtreg/compiler/lib/ir_framework/IRNode.java Changeset: 09015488 Author: KIRIYAMA Takuya Committer: Erik Joelsson Date: 2022-06-10 09:19:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0901548833a0125f15fede64bc2e7dbe84fed42d 8283724: Incorrect description for jtreg-failure-handler option Reviewed-by: erikj, ihse ! make/autoconf/jdk-options.m4 Changeset: 975316e3 Author: Magnus Ihse Bursie Date: 2022-06-10 10:07:10 +0000 URL: https://git.openjdk.org/panama-foreign/commit/975316e3e5f1208e4e15eadc2493d25c15554647 8287902: UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows Reviewed-by: naoto ! test/jdk/java/util/ResourceBundle/Control/MissingResourceCauseTest.java Changeset: 054f11d5 Author: duke Date: 2022-06-10 11:00:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/054f11d5df584ec0f12653185fae93449da80f94 Automatic merge of jdk:master into master ! .jcheck/conf ! .jcheck/conf From svkamath at openjdk.java.net Mon Jun 13 01:27:34 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Mon, 13 Jun 2022 01:27:34 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v3] In-Reply-To: References: Message-ID: <5Z_F7YXpcB1OviK9fEnAzNKwmJ-jM1oSHxXcwOTx6og=.f8090374-a585-459e-a2fd-c6c1106b4caf@github.com> > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Modified gen-src to add Halffloat as new element type. This change removes redundant code from classes ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/89c872d4..2479ce46 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=02 - incr: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=01-02 Stats: 298 lines in 6 files changed: 5 ins; 269 del; 24 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From sanya.rnd at gmail.com Mon Jun 13 13:06:24 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Mon, 13 Jun 2022 16:06:24 +0300 Subject: Memory segment and unaligned access Message-ID: Hi, I'm testing MemorySegment and stumbled across some inconsistent behavior in the API. I have the following task: * read binary file to RAM, file structure is fixed, but no padding/alignment is present (lots of strings of variable length) * read file content depending on the user input, e.g. sometimes I need to read offset 13, sometimes offset 24 and so on * Stored values are typically privitives (byte, long, double etc) or arrays (byte[], short[], int[] and so on) * Primitives are decoded on the fly to variables, same is true for arrays (random access) or sometimes arrays are copied as a blob to another MemorySegment I'm trying to create a VarHandle for MemorySegment: > @Test > fun sample() { > val mem = MemorySegment.allocateNative(100, > MemorySession.openImplicit()) > val buf = ByteBuffer.allocateDirect(100).order(ByteOrder.LITTLE_ENDIAN) > buf.put(-20) // 0 > buf.putDouble(5.0) // 1 > buf.put(2) // 9 > buf.putInt(5) // 10 > buf.putInt(10) // 14 > buf.flip() > mem.copyFrom(MemorySegment.ofBuffer(buf)) > > val mh = MethodHandles.memorySegmentViewVarHandle(ValueLayout.JAVA_INT) > val bh = MethodHandles.byteBufferViewVarHandle(IntArray::class.java, > ByteOrder.LITTLE_ENDIAN) > println(mh.get(mem, 14L) as Int) // <-- throws > "Misaligned access at address" > println(bh.get(mem.asByteBuffer(), 14) as Int) // works, prints "10" > } The variant with memorySegmentViewVarHandle throws, while variant with byteBufferViewVarHandle works. I checked the source code and found that for some reason MemorySegment-variant uses offsetNoVMAlignCheck, while ByteBuffer-variant doesn't. Here's the code from the source: ByteBuffer-variant > return UNSAFE.getLongUnaligned( > ba, > ((long) index(ba, index)) + Unsafe.ARRAY_BYTE_BASE_OFFSET, > handle.be); > MemorySegment-variant > return SCOPED_MEMORY_ACCESS.getIntUnaligned(bb.sessionImpl(), > bb.unsafeGetBase(), > offsetNoVMAlignCheck(bb, base, handle.alignmentMask), > handle.be); > I'm not sure, but it seems like offsetNoVMAlignCheck shouldn't be present or there must be an alternative API for querying unaligned data? If nothing is wrong, is there a way to query data in MemorySegment without alignment? ByteBuffer is technically fine for the time being, but I'm expecting a high load on the service, and since I'm not using ByteBuffers I'd rather not pay for them (GC). Best regards, Alexander Biryukov From maurizio.cimadamore at oracle.com Mon Jun 13 14:35:46 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Mon, 13 Jun 2022 15:35:46 +0100 Subject: Memory segment and unaligned access In-Reply-To: References: Message-ID: <6729e4bb-1d91-356d-edf6-f8d58a68a53b@oracle.com> Hi Alexander, MemorySegment and ByteBuffer are a bit different when it comes to dereferencing. ByteBuffers always allow you to dereference a value, regardless of its starting offset. So you can read an `int` value at offset 3 in a buffer - which might or might not be aligned (but of course I do realized that, when working with packed representation, alignment is not a concern). On the other hand, when a memory segment is dereferenced, the ValueLayout used for the dereference operation is consulted. This layout might have alignment information attached (all layout constants provided by default such as JAVA_INT and JAVA_LONG do). So if you try something like segment.get(JAVA_INT, 3); This will likely fail with an alignment error. If this is not the behavior you want, because you work on packed layouts, or you simply wants the same behavior you get with the ByteBuffer API, the solution is to declare unaligned layout constants - like this: final static ValueLayout.OfInt JAVA_INT_UNALIGNED = JAVA_INT.withBitAlignment(8); And then: segment.get(JAVA_INT_UNALIGNED, 3); This will work w/o issues. I note that this tends to come up quite a bit - which probably suggests that working with unaligned layouts is not uncommon - we might consider adding unaligned layout constants in the ValueLayout API, so that both aligned and unaligned use cases are supported "out-of-the-box". But the capability to support unaligned access is there. I hope this helps Maurizio On 13/06/2022 14:06, Alexander Biryukov wrote: > Hi, I'm testing MemorySegment and stumbled across some inconsistent > behavior in the API. > > I have the following task: > * read binary file to RAM, file structure is fixed, but no > padding/alignment is present (lots of strings of variable length) > * read file content depending on the user input, e.g. sometimes I need to > read offset 13, sometimes offset 24 and so on > * Stored values are typically privitives (byte, long, double etc) or arrays > (byte[], short[], int[] and so on) > * Primitives are decoded on the fly to variables, same is true for arrays > (random access) or sometimes arrays are copied as a blob to another > MemorySegment > > I'm trying to create a VarHandle for MemorySegment: > >> @Test >> fun sample() { >> val mem = MemorySegment.allocateNative(100, >> MemorySession.openImplicit()) >> val buf = ByteBuffer.allocateDirect(100).order(ByteOrder.LITTLE_ENDIAN) >> buf.put(-20) // 0 >> buf.putDouble(5.0) // 1 >> buf.put(2) // 9 >> buf.putInt(5) // 10 >> buf.putInt(10) // 14 >> buf.flip() >> mem.copyFrom(MemorySegment.ofBuffer(buf)) >> > val mh = MethodHandles.memorySegmentViewVarHandle(ValueLayout.JAVA_INT) >> val bh = MethodHandles.byteBufferViewVarHandle(IntArray::class.java, >> ByteOrder.LITTLE_ENDIAN) > >> println(mh.get(mem, 14L) as Int) // <-- throws >> "Misaligned access at address" >> println(bh.get(mem.asByteBuffer(), 14) as Int) // works, prints "10" >> } > > The variant with memorySegmentViewVarHandle throws, while variant with > byteBufferViewVarHandle works. > I checked the source code and found that for some reason MemorySegment-variant > uses offsetNoVMAlignCheck, while ByteBuffer-variant doesn't. > Here's the code from the source: > > ByteBuffer-variant > >> return UNSAFE.getLongUnaligned( >> ba, >> ((long) index(ba, index)) + Unsafe.ARRAY_BYTE_BASE_OFFSET, >> handle.be); >> > MemorySegment-variant > >> return SCOPED_MEMORY_ACCESS.getIntUnaligned(bb.sessionImpl(), >> bb.unsafeGetBase(), >> offsetNoVMAlignCheck(bb, base, handle.alignmentMask), >> handle.be); >> > > I'm not sure, but it seems like offsetNoVMAlignCheck shouldn't be present > or there must be an alternative API for querying unaligned data? > If nothing is wrong, is there a way to query data in MemorySegment without > alignment? > ByteBuffer is technically fine for the time being, but I'm expecting a high > load on the service, and since I'm not using ByteBuffers I'd rather not pay > for them (GC). > > > Best regards, > Alexander Biryukov From sanya.rnd at gmail.com Mon Jun 13 23:42:23 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Tue, 14 Jun 2022 02:42:23 +0300 Subject: Additional mismatch overloads for memory segments Message-ID: There is a method MemorySegment#mismatch, but it's kind of inefficient in the following situation: val seg1 = mem.asSlice(offset, size) val seg2 = other.mem.asSlice(other.offset, other.size) return seg1.mismatch(seg2) == -1L There are additional mismatch methods in java.util.Arrays for arrays, like public static int mismatch(byte[] a, int aFromIndex, int aToIndex, byte[] b, int bFromIndex, int bToIndex) It would be nice to have something like that for MemorySegment as well. Or even better -- MemorySegment#compare :) NB: is this the correct way to provide feedback? Best regards, Alexander Biryukov -------------- next part -------------- An HTML attachment was scrubbed... URL: From sanya.rnd at gmail.com Mon Jun 13 23:51:00 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Tue, 14 Jun 2022 02:51:00 +0300 Subject: Memory segment and unaligned access In-Reply-To: <6729e4bb-1d91-356d-edf6-f8d58a68a53b@oracle.com> References: <6729e4bb-1d91-356d-edf6-f8d58a68a53b@oracle.com> Message-ID: Thanks Maurizio, this is definitely helpful. I'll be waiting for the updated constants, meanwhile using my own :) I also think some of these points could be reflected in documentation, especially the part about MemorySegment dereferencing. Best regards, Alexander Biryukov ??, 13 ???. 2022 ?. ? 17:35, Maurizio Cimadamore < maurizio.cimadamore at oracle.com>: > Hi Alexander, > MemorySegment and ByteBuffer are a bit different when it comes to > dereferencing. ByteBuffers always allow you to dereference a value, > regardless of its starting offset. So you can read an `int` value at > offset 3 in a buffer - which might or might not be aligned (but of > course I do realized that, when working with packed representation, > alignment is not a concern). > > On the other hand, when a memory segment is dereferenced, the > ValueLayout used for the dereference operation is consulted. This layout > might have alignment information attached (all layout constants provided > by default such as JAVA_INT and JAVA_LONG do). > > So if you try something like > > segment.get(JAVA_INT, 3); > > This will likely fail with an alignment error. > > If this is not the behavior you want, because you work on packed > layouts, or you simply wants the same behavior you get with the > ByteBuffer API, the solution is to declare unaligned layout constants - > like this: > > final static ValueLayout.OfInt JAVA_INT_UNALIGNED = > JAVA_INT.withBitAlignment(8); > > And then: > > segment.get(JAVA_INT_UNALIGNED, 3); > > This will work w/o issues. > > I note that this tends to come up quite a bit - which probably suggests > that working with unaligned layouts is not uncommon - we might consider > adding unaligned layout constants in the ValueLayout API, so that both > aligned and unaligned use cases are supported "out-of-the-box". But the > capability to support unaligned access is there. > > I hope this helps > Maurizio > > On 13/06/2022 14:06, Alexander Biryukov wrote: > > Hi, I'm testing MemorySegment and stumbled across some inconsistent > > behavior in the API. > > > > I have the following task: > > * read binary file to RAM, file structure is fixed, but no > > padding/alignment is present (lots of strings of variable length) > > * read file content depending on the user input, e.g. sometimes I need to > > read offset 13, sometimes offset 24 and so on > > * Stored values are typically privitives (byte, long, double etc) or > arrays > > (byte[], short[], int[] and so on) > > * Primitives are decoded on the fly to variables, same is true for arrays > > (random access) or sometimes arrays are copied as a blob to another > > MemorySegment > > > > I'm trying to create a VarHandle for MemorySegment: > > > >> @Test > >> fun sample() { > >> val mem = MemorySegment.allocateNative(100, > >> MemorySession.openImplicit()) > >> val buf = > ByteBuffer.allocateDirect(100).order(ByteOrder.LITTLE_ENDIAN) > >> buf.put(-20) // 0 > >> buf.putDouble(5.0) // 1 > >> buf.put(2) // 9 > >> buf.putInt(5) // 10 > >> buf.putInt(10) // 14 > >> buf.flip() > >> mem.copyFrom(MemorySegment.ofBuffer(buf)) > >> > > val mh = > MethodHandles.memorySegmentViewVarHandle(ValueLayout.JAVA_INT) > >> val bh = > MethodHandles.byteBufferViewVarHandle(IntArray::class.java, > >> ByteOrder.LITTLE_ENDIAN) > > > >> println(mh.get(mem, 14L) as Int) // <-- throws > >> "Misaligned access at address" > >> println(bh.get(mem.asByteBuffer(), 14) as Int) // works, prints > "10" > >> } > > > > The variant with memorySegmentViewVarHandle throws, while variant with > > byteBufferViewVarHandle works. > > I checked the source code and found that for some reason > MemorySegment-variant > > uses offsetNoVMAlignCheck, while ByteBuffer-variant doesn't. > > Here's the code from the source: > > > > ByteBuffer-variant > > > >> return UNSAFE.getLongUnaligned( > >> ba, > >> ((long) index(ba, index)) + Unsafe.ARRAY_BYTE_BASE_OFFSET, > >> handle.be); > >> > > MemorySegment-variant > > > >> return SCOPED_MEMORY_ACCESS.getIntUnaligned(bb.sessionImpl(), > >> bb.unsafeGetBase(), > >> offsetNoVMAlignCheck(bb, base, handle.alignmentMask), > >> handle.be); > >> > > > > I'm not sure, but it seems like offsetNoVMAlignCheck shouldn't be > present > > or there must be an alternative API for querying unaligned data? > > If nothing is wrong, is there a way to query data in MemorySegment > without > > alignment? > > ByteBuffer is technically fine for the time being, but I'm expecting a > high > > load on the service, and since I'm not using ByteBuffers I'd rather not > pay > > for them (GC). > > > > > > Best regards, > > Alexander Biryukov > -------------- next part -------------- An HTML attachment was scrubbed... URL: From svkamath at openjdk.java.net Tue Jun 14 00:46:07 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Tue, 14 Jun 2022 00:46:07 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v6] In-Reply-To: References: Message-ID: <3t7b7JQaSbwEsoIxdrPG0J6p2tu9_Oy6IVvLmS2iTqI=.641ff813-b0a9-4874-8dca-74ec9eaea853@github.com> > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Code cleanup ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/84033ba4..0d391f79 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=05 - incr: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=04-05 Stats: 48 lines in 8 files changed: 8 ins; 16 del; 24 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From svkamath at openjdk.java.net Tue Jun 14 00:56:20 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Tue, 14 Jun 2022 00:56:20 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v7] In-Reply-To: References: Message-ID: > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Code cleanup ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/0d391f79..17aaf804 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=06 - incr: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=05-06 Stats: 48 lines in 8 files changed: 0 ins; 32 del; 16 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From maurizio.cimadamore at oracle.com Tue Jun 14 08:09:39 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 14 Jun 2022 09:09:39 +0100 Subject: Memory segment and unaligned access In-Reply-To: References: <6729e4bb-1d91-356d-edf6-f8d58a68a53b@oracle.com> Message-ID: <8d503ba5-d32a-cb01-7d4a-59df4a2fdce4@oracle.com> On 14/06/2022 00:51, Alexander Biryukov wrote: > Thanks Maurizio, this is definitely helpful. I'll be waiting for the > updated constants, meanwhile using my own :) > I also think some of these points could be reflected in documentation, > especially the part about MemorySegment dereferencing. Hi, the documentation can be improved perhaps. I note that there is already a section on alignment: https://download.java.net/java/early_access/jdk19/docs/api/java.base/java/lang/foreign/MemorySegment.html#segment-alignment Which also explains in details how alignment w.r.t. heap segments is enforced. But perhaps what's missing is a section which says: ok, if you don't care about alignment, just do this. Maurizio > > Best regards, > Alexander Biryukov > > ??, 13 ???. 2022 ?. ? 17:35, Maurizio Cimadamore > : > > Hi Alexander, > MemorySegment and ByteBuffer are a bit different when it comes to > dereferencing. ByteBuffers always allow you to dereference a value, > regardless of its starting offset. So you can read an `int` value at > offset 3 in a buffer - which might or might not be aligned (but of > course I do realized that, when working with packed representation, > alignment is not a concern). > > On the other hand, when a memory segment is dereferenced, the > ValueLayout used for the dereference operation is consulted. This > layout > might have alignment information attached (all layout constants > provided > by default such as JAVA_INT and JAVA_LONG do). > > So if you try something like > > segment.get(JAVA_INT, 3); > > This will likely fail with an alignment error. > > If this is not the behavior you want, because you work on packed > layouts, or you simply wants the same behavior you get with the > ByteBuffer API, the solution is to declare unaligned layout > constants - > like this: > > final static ValueLayout.OfInt JAVA_INT_UNALIGNED = > JAVA_INT.withBitAlignment(8); > > And then: > > segment.get(JAVA_INT_UNALIGNED, 3); > > This will work w/o issues. > > I note that this tends to come up quite a bit - which probably > suggests > that working with unaligned layouts is not uncommon - we might > consider > adding unaligned layout constants in the ValueLayout API, so that > both > aligned and unaligned use cases are supported "out-of-the-box". > But the > capability to support unaligned access is there. > > I hope this helps > Maurizio > > On 13/06/2022 14:06, Alexander Biryukov wrote: > > Hi, I'm testing MemorySegment and stumbled across some inconsistent > > behavior in the API. > > > > I have the following task: > > * read binary file to RAM, file structure is fixed, but no > > padding/alignment is present (lots of strings of variable length) > > * read file content depending on the user input, e.g. sometimes > I need to > > read offset 13, sometimes offset 24 and so on > > * Stored values are typically privitives (byte, long, double > etc) or arrays > > (byte[], short[], int[] and so on) > > * Primitives are decoded on the fly to variables, same is true > for arrays > > (random access) or sometimes arrays are copied as a blob to another > > MemorySegment > > > > I'm trying to create a VarHandle for MemorySegment: > > > >> @Test > >> fun sample() { > >>? ? ? val mem = MemorySegment.allocateNative(100, > >> MemorySession.openImplicit()) > >>? ? ? val buf = > ByteBuffer.allocateDirect(100).order(ByteOrder.LITTLE_ENDIAN) > >>? ? ? buf.put(-20)? ? ? ? // 0 > >>? ? ? buf.putDouble(5.0)? // 1 > >>? ? ? buf.put(2)? ? ? ? ? // 9 > >>? ? ? buf.putInt(5)? ? ? ?// 10 > >>? ? ? buf.putInt(10)? ? ? // 14 > >>? ? ? buf.flip() > >>? ? ? mem.copyFrom(MemorySegment.ofBuffer(buf)) > >> > >? ? ? val mh = > MethodHandles.memorySegmentViewVarHandle(ValueLayout.JAVA_INT) > >>? ? ? val bh = > MethodHandles.byteBufferViewVarHandle(IntArray::class.java, > >> ByteOrder.LITTLE_ENDIAN) > > > >>? ? ? println(mh.get(mem, 14L) as Int) ?// <-- throws > >> "Misaligned access at address" > >>? ? ? println(bh.get(mem.asByteBuffer(), 14) as Int) // works, > prints "10" > >> } > > > > The variant with memorySegmentViewVarHandle throws, while > variant with > > byteBufferViewVarHandle works. > > I checked the source code and found that for some reason > MemorySegment-variant > > uses offsetNoVMAlignCheck, while ByteBuffer-variant doesn't. > > Here's the code from the source: > > > > ByteBuffer-variant > > > >> return UNSAFE.getLongUnaligned( > >>? ? ? ? ? ba, > >>? ? ? ? ? ((long) index(ba, index)) + Unsafe.ARRAY_BYTE_BASE_OFFSET, > >> handle.be > ); > >> > > MemorySegment-variant > > > >> return SCOPED_MEMORY_ACCESS.getIntUnaligned(bb.sessionImpl(), > >>? ? ? ? ? bb.unsafeGetBase(), > >>? ? ? ? ? offsetNoVMAlignCheck(bb, base, handle.alignmentMask), > >> handle.be > ); > >> > > > > I'm not sure, but it seems like? offsetNoVMAlignCheck shouldn't > be present > > or there must be an alternative API for querying unaligned data? > > If nothing is wrong, is there a way to query data in > MemorySegment without > > alignment? > > ByteBuffer is technically fine for the time being, but I'm > expecting a high > > load on the service, and since I'm not using ByteBuffers I'd > rather not pay > > for them (GC). > > > > > > Best regards, > > Alexander Biryukov > -------------- next part -------------- An HTML attachment was scrubbed... URL: From maurizio.cimadamore at oracle.com Tue Jun 14 09:32:30 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 14 Jun 2022 10:32:30 +0100 Subject: Additional mismatch overloads for memory segments In-Reply-To: References: Message-ID: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> Hi, Yes, this is the correcty way to provide feedback - thank you for asking. This reminds me of the discussion on copyFrom from some time ago. https://mail.openjdk.org/pipermail/panama-dev/2021-April/012872.html In that case, we felt that the burden of (a) creating an heap view of an array, then (b) slice source/dest segment accordingly and (c) translate array "logical" offsets into segment "physical" offsets was just too painful, so we provided static alternatives. In terms of performance it was not super easy to find cases where the static method was better (e.g. microbenchmarks would often reveal no difference). I believe most of the perceived "speedup" is transient, as eventually the slices _will_ be scalarized; but in the case of long running methods like bulk copy and mismatch, it takes _longer_ for the code to become hot enough so that scalarization would be applied, which created some tension. I recall a discussion along these lines with Uwe, who was trying to use memory segments in Lucene/Solr. Back to your question, I sympathize with your use case: a static MemorySegment.mismatch is no different than the static MemorySegment::copy flavor we currently provide (the one that accepts two segments). And, even for mismatch it might make sense to add overloads for arrays in dest/src position (so now there's three methods). That said, looking more broadly at the API, there are several instance methods which might be subject to the same treatment, basically nearly every instance method, except for the dereference methods (which already take an offset, more on that later) and toString/equals/hashcode. Consider the following examples that you might also have included in your email: ``` val seg = mem.asSlice(offset, size); seg.fill((byte)42); seg.isLoaded(); seg.force(); seg.spliterator(); seg.elements(JAVA_INT); seg.toArray(JAVA_INT); ... // the list goes on ``` I think that copy (and now mismatch) were "picked on" the most because they are binary methods - they accept two segments. So the amount of slicing is doubled there, compared to the ones I showed above. But the issue remains: how friendly should the API be to clients that don't want (or can't) use slicing, but want to stick to one big segment and then passing an offset as a side-channel instead? DIfferent APIs deal with this problem in different ways. The ByteBuffer API, somewhat surprisingly, provides no static methods at all, although the bulk copy get/put do provide Java array overloads, so that you don't have to wrap/slice unnecessarily. Also, many methods in the Buffer API take an int offset which, again, helps reducing the amount of slicing going on (although some of these methods were added later[1]). Then there's arrays, which have relatively little info (just a length), and where all capabilities are exposed through a companion "side-car" class, namely j.u.Arrays. While I'm fine, in principle, with both approaches, I'm afraid to steer the API into a middle ground where it's a bit like ByteBuffer, a bit like Arrays. Or, if we go there, we should have a clear/defensible basis on how the bucketization works (which I realize we don't have right now). So, I encourage us not to have a discussion about "mismatch", but, rather, to have a broader discussion on how methods in the MemorySegment class should be "bucketized" (or we will be doomed to have this very same conversation again). Some addional points/observations: first, in your example, you seem to have a `mem` abstraction that stores a segment and then an offset. In other words, it seems like you have implemented your own slicing _on top_. In an alternate world where your API relied on slicing, your snippet would become just: ``` return mem.mismatch(other.mem) == -1L ``` As there would be no offset around (the offset would be embedded into the segment). So, I feel that in order to answer some of the questions re. bucketization, we (or at least I) need to understand why memory segment slices are not good enough a carrier for use cases like yours. Secondly, before we get too static-happy, let's also remember that sometimes dealing with instance methods is generally nice - e.g. I think ``` segment.elements(JAVA_INT) ``` looks/reads better than: ``` MemorySegment.element(segment, JAVA_INT) ``` And the more static calls you have, the more it shows. Ability of using method chaining in these cases is nice. Last, as hinted above, I note that our API has not two but *three* different ways to do things: 1. instance methods: like MemorySegment::fill 2. static methods: like MemorySegment::copy 3. instance methods that are offset-friendly: like MemorySegment::get The presence of (3) is, I think, notable, because it reflects a move that was also made by the ByteBuffer API. That give us some hints about *one* possible way to bucketize the memory segment functionalities: * for unary methods (e.g. methods that work on a single segment), use (3) - that is use an _instance_ method which takes an offset (so that it makes the method more applicable w/o the need to slice) * for binary methods, since there's two offsets, and the order of arguments is always hard to get right, just use static methods; this would apply to both copy and mismatch While the above might not be perfect, I think there's an appealing simplicity to it - and the explanation as to "why things are the way they are" seems straightforward enough. There would be the minor inconvenience of having to pass? a zero offset in some cases (which is already there for dereference methods), but overall feels perhaps like a small price to pay. Thoughts? Maurizio [1] - https://bugs.openjdk.org/browse/JDK-8212619 On 14/06/2022 00:42, Alexander Biryukov wrote: > There is a method MemorySegment#mismatch, but it's kind of inefficient > in the following situation: > > val seg1 = mem.asSlice(offset, size) > val seg2 = other.mem.asSlice(other.offset, other.size) > return seg1.mismatch(seg2) == -1L > > There are additional mismatch methods in java.util.Arrays for arrays, like > > public static int mismatch(byte[] a, int aFromIndex, int aToIndex, > ? ?byte[] b, int bFromIndex, int bToIndex) > > It would be nice to have something like that for MemorySegment as well. > Or even better -- MemorySegment#compare :) > > NB: is this the correct way to provide feedback? > > Best regards, > Alexander Biryukov -------------- next part -------------- An HTML attachment was scrubbed... URL: From sanya.rnd at gmail.com Tue Jun 14 10:53:27 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Tue, 14 Jun 2022 13:53:27 +0300 Subject: Additional mismatch overloads for memory segments In-Reply-To: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> Message-ID: > Back to your question, I sympathize with your use case: a static MemorySegment.mismatch is no different than the static MemorySegment::copy flavor we currently provide (the one that accepts two segments). And, even for mismatch it might make sense to add overloads for arrays in dest/src position (so now there's three methods). Perhaps I emphasised it wrongly. It doesn't really matter whether it is static or not, it's about additional overloads, currently there is no overload that accepts offsets. An example of Arrays class is simply for demonstration purposes (there is something similar in API already). > As there would be no offset around (the offset would be embedded into the segment). So, I feel that in order to answer some of the questions re. bucketization, we (or at least I) need to understand why memory segment slices are not good enough a carrier for use cases like yours. That's true, but I have lots of objects (let's say millions per node), and all of them are stored in multiple binary files (MemorySegment). That's why I decided to go with my own slicing mechanism. I'd be happy to make slices though, but I feel it'll create additional pressure on GC for no reason. And the only reason I need an object in the first place is equals/hashCode, otherwise I'd just pass slices. > While the above might not be perfect, I think there's an appealing simplicity to it - and the explanation as to "why things are the way they are" seems straightforward enough. There would be the minor inconvenience of having to pass a zero offset in some cases (which is already there for dereference methods), but overall feels perhaps like a small price to pay. >From my perspective the Java ecosystem has a "duality" in static and instance methods. But probably this observation comes from Arrays and many Apache *Utils libraries. I think it's not really necessary to pick one, why shouldn't there be 2 ways, at least for the functions which make sense to do so (binary operators). ??, 14 ???. 2022 ?. ? 12:32, Maurizio Cimadamore < maurizio.cimadamore at oracle.com>: > Hi, > Yes, this is the correcty way to provide feedback - thank you for asking. > This reminds me of the discussion on copyFrom from some time ago. > > https://mail.openjdk.org/pipermail/panama-dev/2021-April/012872.html > > In that case, we felt that the burden of (a) creating an heap view of an > array, then (b) slice source/dest segment accordingly and (c) translate > array "logical" offsets into segment "physical" offsets was just too > painful, so we provided static alternatives. In terms of performance it was > not super easy to find cases where the static method was better (e.g. > microbenchmarks would often reveal no difference). I believe most of the > perceived "speedup" is transient, as eventually the slices _will_ be > scalarized; but in the case of long running methods like bulk copy and > mismatch, it takes _longer_ for the code to become hot enough so that > scalarization would be applied, which created some tension. I recall a > discussion along these lines with Uwe, who was trying to use memory > segments in Lucene/Solr. > > Back to your question, I sympathize with your use case: a static > MemorySegment.mismatch is no different than the static MemorySegment::copy > flavor we currently provide (the one that accepts two segments). And, even > for mismatch it might make sense to add overloads for arrays in dest/src > position (so now there's three methods). > > That said, looking more broadly at the API, there are several instance > methods which might be subject to the same treatment, basically nearly > every instance method, except for the dereference methods (which already > take an offset, more on that later) and toString/equals/hashcode. Consider > the following examples that you might also have included in your email: > > ``` > val seg = mem.asSlice(offset, size); > seg.fill((byte)42); > seg.isLoaded(); > seg.force(); > seg.spliterator(); > seg.elements(JAVA_INT); > seg.toArray(JAVA_INT); > ... // the list goes on > ``` > > I think that copy (and now mismatch) were "picked on" the most because > they are binary methods - they accept two segments. So the amount of > slicing is doubled there, compared to the ones I showed above. But the > issue remains: how friendly should the API be to clients that don't want > (or can't) use slicing, but want to stick to one big segment and then > passing an offset as a side-channel instead? > > DIfferent APIs deal with this problem in different ways. The ByteBuffer > API, somewhat surprisingly, provides no static methods at all, although the > bulk copy get/put do provide Java array overloads, so that you don't have > to wrap/slice unnecessarily. Also, many methods in the Buffer API take an > int offset which, again, helps reducing the amount of slicing going on > (although some of these methods were added later[1]). Then there's arrays, > which have relatively little info (just a length), and where all > capabilities are exposed through a companion "side-car" class, namely > j.u.Arrays. > > While I'm fine, in principle, with both approaches, I'm afraid to steer > the API into a middle ground where it's a bit like ByteBuffer, a bit like > Arrays. Or, if we go there, we should have a clear/defensible basis on how > the bucketization works (which I realize we don't have right now). So, I > encourage us not to have a discussion about "mismatch", but, rather, to > have a broader discussion on how methods in the MemorySegment class should > be "bucketized" (or we will be doomed to have this very same conversation > again). > > Some addional points/observations: first, in your example, you seem to > have a `mem` abstraction that stores a segment and then an offset. In other > words, it seems like you have implemented your own slicing _on top_. In an > alternate world where your API relied on slicing, your snippet would become > just: > > ``` > return mem.mismatch(other.mem) == -1L > ``` > > As there would be no offset around (the offset would be embedded into the > segment). So, I feel that in order to answer some of the questions re. > bucketization, we (or at least I) need to understand why memory segment > slices are not good enough a carrier for use cases like yours. > > Secondly, before we get too static-happy, let's also remember that > sometimes dealing with instance methods is generally nice - e.g. I think > > ``` > segment.elements(JAVA_INT) > ``` > > looks/reads better than: > > ``` > MemorySegment.element(segment, JAVA_INT) > ``` > > And the more static calls you have, the more it shows. Ability of using > method chaining in these cases is nice. > > Last, as hinted above, I note that our API has not two but *three* > different ways to do things: > > 1. instance methods: like MemorySegment::fill > 2. static methods: like MemorySegment::copy > 3. instance methods that are offset-friendly: like MemorySegment::get > > The presence of (3) is, I think, notable, because it reflects a move that > was also made by the ByteBuffer API. That give us some hints about *one* > possible way to bucketize the memory segment functionalities: > > * for unary methods (e.g. methods that work on a single segment), use (3) > - that is use an _instance_ method which takes an offset (so that it makes > the method more applicable w/o the need to slice) > * for binary methods, since there's two offsets, and the order of > arguments is always hard to get right, just use static methods; this would > apply to both copy and mismatch > > While the above might not be perfect, I think there's an appealing > simplicity to it - and the explanation as to "why things are the way they > are" seems straightforward enough. There would be the minor inconvenience > of having to pass a zero offset in some cases (which is already there for > dereference methods), but overall feels perhaps like a small price to pay. > > Thoughts? > > Maurizio > > [1] - https://bugs.openjdk.org/browse/JDK-8212619 > > > On 14/06/2022 00:42, Alexander Biryukov wrote: > > There is a method MemorySegment#mismatch, but it's kind of inefficient in > the following situation: > > val seg1 = mem.asSlice(offset, size) > val seg2 = other.mem.asSlice(other.offset, other.size) > return seg1.mismatch(seg2) == -1L > > There are additional mismatch methods in java.util.Arrays for arrays, like > > public static int mismatch(byte[] a, int aFromIndex, int aToIndex, > byte[] b, int bFromIndex, int bToIndex) > > It would be nice to have something like that for MemorySegment as well. > Or even better -- MemorySegment#compare :) > > NB: is this the correct way to provide feedback? > > Best regards, > Alexander Biryukov > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From maurizio.cimadamore at oracle.com Tue Jun 14 11:07:48 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 14 Jun 2022 12:07:48 +0100 Subject: Additional mismatch overloads for memory segments In-Reply-To: References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> Message-ID: <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> On 14/06/2022 11:53, Alexander Biryukov wrote: > From my perspective the Java ecosystem has a "duality" in static and > instance methods. But probably this observation comes from Arrays and > many Apache *Utils libraries. > I think it's not really necessary to pick one, why shouldn't there be > 2 ways, at least for the functions which make sense to do so (binary > operators). This is true, we should not feel compelled to _have to pick one_. That said, especially in the case of `copy`, where directionality is important, a static method is, I think, a superior choice (in fact the instance version is called "copyFrom", to make the directionality pop out a bit more). But yes, we could still provide both (for binary methods), for convenience. The main point I wanted to make is that an offset parameter makes sense in _all_ the instance methods of memory segment (the unary operators). Because, if there's no offset argument in these methods (e.g. toArray) and you use your own offset system (like you do), the API becomes full of "sharp edges" where you can't just pass an offset and you have to slice instead. That's why I'm trying to uplevel the discussion a bit: if storing a MemorySegment and an associated long offset is a common enough operation in certain contexts, and we want to support that use case, then we need to pick a solution that's consistent about it, rather than speculating on how useful adding an overload on one particular operation might be. The latter is at severe risk of extrapolating from too few use cases, since this is a new API (the fact that we're having this discussion again after the one on copy is in itself a revealing fact). Maurizio From sanya.rnd at gmail.com Tue Jun 14 12:03:41 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Tue, 14 Jun 2022 15:03:41 +0300 Subject: Additional mismatch overloads for memory segments In-Reply-To: <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> Message-ID: > That's why I'm trying to uplevel the discussion a bit: if storing a MemorySegment > and an associated long offset is a common enough operation in certain contexts, > and we want to support that use case, then we need to pick a solution that's consistent about it, > rather than speculating on how useful adding an overload on one particular operation might be. That makes sense, and I think your description pretty much sums it up. Maybe it can be transformed in a checklist: 1. Instance methods are preferred 2. Binary operators are implemented as static and instance methods, both with offsets 3. Some instance methods have offset-related overloads, where it makes sense 4. Pure static methods are not welcome, except for some widespread patterns, like factory methods (*) * there are always exceptions of course In my experience I rarely use static methods. Usually the need to use a static method comes from: * missing functionality, but in Kotlin it is typically implemented via extensions * binary operations: sometimes it's easier to read, and static functions have cleaner semantics (function creates new object or modifies in-place?) * factory methods * serialization/deserialization functions, but this one is a tricky: serialization usually requires member-access, but after some trial and error I decided having private serialize delegate is better for API consistency But it's all my personal experience of course, when designing an API it's probably better to do some analytics, like count what's the most popular functions among the users (data collected from top-100 java projects, for example). Polls are fine too, but most of the time they're biased and do not represent a large part of the community. ??, 14 ???. 2022 ?. ? 14:07, Maurizio Cimadamore < maurizio.cimadamore at oracle.com>: > > On 14/06/2022 11:53, Alexander Biryukov wrote: > > From my perspective the Java ecosystem has a "duality" in static and > > instance methods. But probably this observation comes from Arrays and > > many Apache *Utils libraries. > > I think it's not really necessary to pick one, why shouldn't there be > > 2 ways, at least for the functions which make sense to do so (binary > > operators). > > This is true, we should not feel compelled to _have to pick one_. That > said, especially in the case of `copy`, where directionality is > important, a static method is, I think, a superior choice (in fact the > instance version is called "copyFrom", to make the directionality pop > out a bit more). But yes, we could still provide both (for binary > methods), for convenience. > > The main point I wanted to make is that an offset parameter makes sense > in _all_ the instance methods of memory segment (the unary operators). > Because, if there's no offset argument in these methods (e.g. toArray) > and you use your own offset system (like you do), the API becomes full > of "sharp edges" where you can't just pass an offset and you have to > slice instead. > > That's why I'm trying to uplevel the discussion a bit: if storing a > MemorySegment and an associated long offset is a common enough operation > in certain contexts, and we want to support that use case, then we need > to pick a solution that's consistent about it, rather than speculating > on how useful adding an overload on one particular operation might be. > The latter is at severe risk of extrapolating from too few use cases, > since this is a new API (the fact that we're having this discussion > again after the one on copy is in itself a revealing fact). > > Maurizio > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From maurizio.cimadamore at oracle.com Tue Jun 14 12:40:17 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Tue, 14 Jun 2022 13:40:17 +0100 Subject: Additional mismatch overloads for memory segments In-Reply-To: References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> Message-ID: <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> On 14/06/2022 13:03, Alexander Biryukov wrote: > That makes sense, and I think your description pretty much sums it up. > Maybe it can be transformed in a checklist: > > 1. Instance methods are preferred > 2. Binary operators are implemented as static and instance methods, > both with offsets > 3. Some instance methods have offset-related overloads, where it makes > sense > 4. Pure static methods are not welcome, except for some widespread > patterns, like factory methods (*) I would split (3) as follows: 3a. Instance methods have an additional offset parameter 3b. Where it makes sense, offset-free overloads might be provided (e.g. call method in (3a) with offset=0) This feels more principled, as (3a) is a primitive and (3b) is sugare than can easily be derived from that. Re. your point of using analytics, again, this is a relatively new API, there's not much code using it out there, so the risk of "overfitting" is real. I'm slightly on the fence w.r.t. having both static and instance variants for binary methods - that said, as long as we can clearly explain what's the primitive (the static method), I think the API can still be explain in a relatively straightforward fashion. Maurizio From svkamath at openjdk.java.net Tue Jun 14 16:54:39 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Tue, 14 Jun 2022 16:54:39 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v8] In-Reply-To: References: Message-ID: <_2mAsl3vfHvMVsSe2RAW_0hSWMT-T0x8w_mcLIMvMKY=.b8d34a68-2060-4528-94c4-f44c5822dcee@github.com> > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Changed file mode of gen-src.sh ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/17aaf804..ffb9a629 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=07 - incr: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=164&range=06-07 Stats: 0 lines in 1 file changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From jorn.vernee at oracle.com Wed Jun 15 13:46:07 2022 From: jorn.vernee at oracle.com (Jorn Vernee) Date: Wed, 15 Jun 2022 15:46:07 +0200 Subject: Additional mismatch overloads for memory segments In-Reply-To: <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> Message-ID: <7e81e716-eac0-d121-8b0b-758c57c31dac@oracle.com> Just wanted to mention that it's not just offsets, but also lengths in some cases. For instance, fill might need a length and offset overload. And I've also felt in the past that getUtf8String, which currently only takes an offset, should be split into 2 overloads, one that takes an offset and length, and one that takes no arguments (which would internally look for a null terminator). Jorn On 14/06/2022 14:40, Maurizio Cimadamore wrote: > > On 14/06/2022 13:03, Alexander Biryukov wrote: >> That makes sense, and I think your description pretty much sums it up. >> Maybe it can be transformed in a checklist: >> >> 1. Instance methods are preferred >> 2. Binary operators are implemented as static and instance methods, >> both with offsets >> 3. Some instance methods have offset-related overloads, where it >> makes sense >> 4. Pure static methods are not welcome, except for some widespread >> patterns, like factory methods (*) > > I would split (3) as follows: > > 3a. Instance methods have an additional offset parameter > 3b. Where it makes sense, offset-free overloads might be provided > (e.g. call method in (3a) with offset=0) > > This feels more principled, as (3a) is a primitive and (3b) is sugare > than can easily be derived from that. > > Re. your point of using analytics, again, this is a relatively new > API, there's not much code using it out there, so the risk of > "overfitting" is real. > > I'm slightly on the fence w.r.t. having both static and instance > variants for binary methods - that said, as long as we can clearly > explain what's the primitive (the static method), I think the API can > still be explain in a relatively straightforward fashion. > > Maurizio > > > From jbhateja at openjdk.java.net Wed Jun 15 15:00:31 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Wed, 15 Jun 2022 15:00:31 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v8] In-Reply-To: <_2mAsl3vfHvMVsSe2RAW_0hSWMT-T0x8w_mcLIMvMKY=.b8d34a68-2060-4528-94c4-f44c5822dcee@github.com> References: <_2mAsl3vfHvMVsSe2RAW_0hSWMT-T0x8w_mcLIMvMKY=.b8d34a68-2060-4528-94c4-f44c5822dcee@github.com> Message-ID: On Tue, 14 Jun 2022 16:54:39 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Changed file mode of gen-src.sh src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 75: > 73: float f = Float.intBitsToFloat(((val&0x8000)<<16) | (((val&0x7c00)+0x1C000)<<13) | ((val&0x03FF)<<13)); > 74: return f; > 75: } Please add a switch to handle special case values (NaN, Inf, -Inf), i.e. HF.NaN -> Float.NaN : src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 83: > 81: */ > 82: public static boolean isFinite(float f) { > 83: return Math.abs(f) <= Halffloat.MAX_VALUE; We are comparing abs value with short. wont work well. src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 94: > 92: if (!isFinite(f)) return Halffloat.POSITIVE_INFINITY; > 93: > 94: int val = Float.floatToIntBits(f); Handling for NaN and NEG_INF missing. ------------- PR: https://git.openjdk.org/panama-vector/pull/164 From svkamath at openjdk.java.net Wed Jun 15 16:43:29 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Wed, 15 Jun 2022 16:43:29 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v9] In-Reply-To: References: Message-ID: > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Added handling for special cases ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/ffb9a629..8e849c25 Webrevs: - full: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=08 - incr: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=07-08 Stats: 22 lines in 1 file changed: 10 ins; 0 del; 12 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From jbhateja at openjdk.java.net Wed Jun 15 18:09:31 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Wed, 15 Jun 2022 18:09:31 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v9] In-Reply-To: References: Message-ID: On Wed, 15 Jun 2022 16:43:29 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Added handling for special cases src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 66: > 64: * @param value short value assigned to halffloat > 65: */ > 66: public Halffloat(short value) { It will be useful if we can have a constructor accepting float also. src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 99: > 97: */ > 98: public static short valueOf(float f) { > 99: if (!Float.isFinite(f)) return Halffloat.POSITIVE_INFINITY; Will be appropriate if range bound checks are done against Halffloat bounds. ------------- PR: https://git.openjdk.org/panama-vector/pull/164 From svkamath at openjdk.java.net Wed Jun 15 19:56:41 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Wed, 15 Jun 2022 19:56:41 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v10] In-Reply-To: References: Message-ID: > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Changes to Halffloat class ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/8e849c25..4f5b106a Webrevs: - full: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=09 - incr: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=08-09 Stats: 31 lines in 1 file changed: 15 ins; 0 del; 16 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From jbhateja at openjdk.java.net Thu Jun 16 01:57:36 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Thu, 16 Jun 2022 01:57:36 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v10] In-Reply-To: References: Message-ID: On Wed, 15 Jun 2022 19:56:41 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Changes to Halffloat class Marked as reviewed by jbhateja (Committer). Initial version looks ok to me, we can do refinement in subsequent patches. src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Halffloat.java line 120: > 118: > 119: int val = Float.floatToIntBits(f); > 120: val = ((((val>>16)&0x8000)|((((val&0x7f800000)-0x38000000)>>13)&0x7c00)|((val>>13)&0x03ff))); Kindly also add the link to paper. ------------- PR: https://git.openjdk.org/panama-vector/pull/164 From svkamath at openjdk.java.net Thu Jun 16 05:32:25 2022 From: svkamath at openjdk.java.net (Smita Kamath) Date: Thu, 16 Jun 2022 05:32:25 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v10] In-Reply-To: References: Message-ID: On Wed, 15 Jun 2022 19:56:41 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Changes to Halffloat class Reference to Fast float to halffloat conversion: http://fox-toolkit.org/ftp/fasthalffloatconversion.pdf ------------- PR: https://git.openjdk.org/panama-vector/pull/164 From jbhateja at openjdk.java.net Thu Jun 16 07:21:38 2022 From: jbhateja at openjdk.java.net (Jatin Bhateja) Date: Thu, 16 Jun 2022 07:21:38 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v10] In-Reply-To: References: Message-ID: On Wed, 15 Jun 2022 19:56:41 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Changes to Halffloat class Failures seen during jtreg, needs fix. ------------- Changes requested by jbhateja (Committer). PR: https://git.openjdk.org/panama-vector/pull/164 From maurizio.cimadamore at oracle.com Thu Jun 16 14:00:52 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Thu, 16 Jun 2022 15:00:52 +0100 Subject: Additional mismatch overloads for memory segments In-Reply-To: <7e81e716-eac0-d121-8b0b-758c57c31dac@oracle.com> References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> <7e81e716-eac0-d121-8b0b-758c57c31dac@oracle.com> Message-ID: <7b8532e4-92b2-782e-d32c-934eac428ab3@oracle.com> Hi, I've spent some time classifying the various instance methods in MemorySegment, to see if some pattern emerged: (A) streaming ops: * elements(MemoryLayout) * spliterator(MemoryLayout) (B) slicing ops * asSlice(long) * asSlice(long, long) (C) containment ops * asOverlappingSlice(MemorySegment) * segmentOffset(MemorySegment) (D) bulk ops * fill(byte) * copyFrom(MemorySegment) * mismatch(MemorySegment) (E) mapped segment ops * isLoaded() * load() * unload() * force() (F) transform ops * asByteBuffer() * toArray(ValueLayout.OfT) (G) simple dereference ops * get(ValueLayout.OfT, long) * set(ValueLayout.OfT, long, T) (H) indexed dereference ops getAtIndex(ValueLayout.OfT, long) setAtIndex(ValueLayout.OfT, long, T) (I) string dereferene ops getUtf8String(long) setUtf8String(long, String) -------------------------------------- Now, let's see if, case by case, we can see whether some additional overload would be desirable or not. As Jorn pointed out, it's not just about having an offset overload, in some cases offet+size might be better. First, I think (B), (C) and (G) are ok as is. (B) and (G) already provides offset/size accepting variants, and (C) is more about querying whether two segments are related, so adding offsets here seems odd. For (A), (D), (E), (F) you could argue that having an overload that accepts a size and an offset (or two telescopic overloads, one with only offset, another with offset _and_ size), might make sense. Zooming in a bit more, I think some further distinctions are in order. First, copy already provides many static methods in the style of System.arrayCopy. So I think it's fair to say that anybody who wants more control, should use the static method instead. If we add a static mismatch, I think the same argument might apply there. Similarly, toArray is a nice convenience method, but it's really just a shortcut for a bulk copy - again, the static methods are enough for users who want more control. Which leaves us with: * elements(MemoryLayout) // A * spliterator(MemoryLayout) // A * fill(byte) // D * isLoaded() // E * load() // E * unload() // E * force() // E * asByteBuffer // F Adding one or two overloads for both is doable, but feels like overkill API-wise. I also note that MappedByteBuffer does not provide overloads for isLoaded/load/unload. Only force() has an overload, that was added in 13 [1], and, I believe, because ByteBuffer::force relies on the buffer mutable position (see last section in [2]), thus making it impossible to flush independent mapped regions in parallel using the same buffer. MemorySegments do not have that issue, given that they are immutable - so one can create 20 disjoint slices of a mapped segment and force() them in parallel.? And, some of these methods allocate several objects anyway (esp. elements and spliterator), so I don't see a lot of reasons as to why slicing shouldn't just work there. So I believe we could probably just add the following (although I realize this is an arbitrary cut): * fill(byte, long, long) // D As for (H), I think the main problem here is that dereference methods in (H) are not built on top of those in (G). I think the following form: getAtIndex(ValueLayout.OfT, long, long) setAtIndex(ValueLayout.OfT, long, long, T) Would be more useful, where the first parameter is an offset into the segment, and the second is a logical index. Seems strictly more general. Actually note that these new methods are general enough that, in principle, we could only have these, and be done (e.g. just one set of accessors instead of two). Or, instead of having two sets, for offset and offset+index, we could have two sets for index and offset+index - which seems more consistent with the rest of the instance methods (where the offset variant is the "advanced" one). Finally, I think (I) the the most complex of all. Because, if we add something like: getUtf8String(long, long) At least to me it's not entirely clear what the "length" parameter does. Does it means (like in all the other methods discussed so far) that it's like doing asSlice(offset, length) and then getUtf8String? Or does it mean (as Jorn seemed to imply) that the length parameter refers to the string length? Also, what if user specifies a string length, but the memory region contains a terminator char _before_ the user-specified length? Honestly, it is not clear to me that what we do in (I) is clearly lacking, or could be improved in a straightforward way. If user just wants to view a slice of memory as a string, and ignore terminators, they can just use bulk copy, to copy the contents of the segment into a byte array, and then create the string from there (which is what our impl does anyway) - it's all bytes at the end of the day - IMHO the interesting thing about the string dereference method *is* the terminator handling. W/o that it's just a copy. So, summarizing, to make the API more offset/length friendly we could: 1. Add a static mismatch method(s) (similar to what we did for copy) 2. add the following overloads: * fill(byte, long, long) // D 3. Tweak the indexed accessors - e.g. rename them to just "get" and get both an offset (in bytes) parameter as well as an index (in elements) parameter; then decide what to do with the offset-only dereference variant: 3a) keep as is 3b) drop 3c) tweak it so that parameter is an index, not an offset In this plan, the most controversial part is (2) - in the sense that it involves an arbitrary choice based on the uses we've seen on the ByteBuffer API, as well as some other considerations (e.g. how much do the methods end up allocating anyway). As for (3), I think the more general offset+index dereference methods, give us an opportunity to think if the set of dereference we provide is the one that makes the most sense. Thoughts? Maurizio [1] - https://bugs.openjdk.org/browse/JDK-8221696 [2] - https://openjdk.org/jeps/352 On 15/06/2022 14:46, Jorn Vernee wrote: > Just wanted to mention that it's not just offsets, but also lengths in > some cases. > > For instance, fill might need a length and offset overload. And I've > also felt in the past that getUtf8String, which currently only takes > an offset, should be split into 2 overloads, one that takes an offset > and length, and one that takes no arguments (which would internally > look for a null terminator). > > Jorn > > On 14/06/2022 14:40, Maurizio Cimadamore wrote: >> >> On 14/06/2022 13:03, Alexander Biryukov wrote: >>> That makes sense, and I think your description pretty much sums it up. >>> Maybe it can be transformed in a checklist: >>> >>> 1. Instance methods are preferred >>> 2. Binary operators are implemented as static and instance methods, >>> both with offsets >>> 3. Some instance methods have offset-related overloads, where it >>> makes sense >>> 4. Pure static methods are not welcome, except for some widespread >>> patterns, like factory methods (*) >> >> I would split (3) as follows: >> >> 3a. Instance methods have an additional offset parameter >> 3b. Where it makes sense, offset-free overloads might be provided >> (e.g. call method in (3a) with offset=0) >> >> This feels more principled, as (3a) is a primitive and (3b) is sugare >> than can easily be derived from that. >> >> Re. your point of using analytics, again, this is a relatively new >> API, there's not much code using it out there, so the risk of >> "overfitting" is real. >> >> I'm slightly on the fence w.r.t. having both static and instance >> variants for binary methods - that said, as long as we can clearly >> explain what's the primitive (the static method), I think the API can >> still be explain in a relatively straightforward fashion. >> >> Maurizio >> >> >> From duke at openjdk.org Fri Jun 17 11:12:39 2022 From: duke at openjdk.org (duke) Date: Fri, 17 Jun 2022 11:12:39 GMT Subject: git: openjdk/panama-foreign: master: 88 new changesets Message-ID: <1d916ad3-9384-4e8e-92b7-f032eb2aa340@openjdk.org> Changeset: 5d0e8b69 Author: Jie Fu Date: 2022-06-10 11:40:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5d0e8b698144a83025c6912520097f24128858f7 8288203: runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java fails with release VMs Reviewed-by: shade ! test/hotspot/jtreg/runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java Changeset: bdd64d6f Author: Andrew Haley Date: 2022-06-10 13:27:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bdd64d6f7d5cbb470fc951174145602647d1c283 8288181: AArch64: clean up out-of-date comments Reviewed-by: shade ! src/hotspot/cpu/aarch64/c1_FrameMap_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/frame_aarch64.inline.hpp ! src/hotspot/cpu/aarch64/gc/g1/g1BarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Changeset: fcb35ed4 Author: Prasanta Sadhukhan Date: 2022-06-10 13:37:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/fcb35ed40e46759f52d5c86a09e4a4f973edd58d 8287743: javax/swing/text/CSSBorder/6796710/bug6796710.java failed Reviewed-by: aivanov ! test/jdk/javax/swing/text/CSSBorder/6796710/bug6796710.java Changeset: 512db0ff Author: Rajan Halade Date: 2022-06-10 14:49:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/512db0ff31a0a1a2bd8805964ba3d06e2cbfb9e9 8271838: AmazonCA.java interop test fails Reviewed-by: mullan ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/AmazonCA.java Changeset: 3ee1e605 Author: Rajan Halade Date: 2022-06-10 15:01:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3ee1e60595171be0dd8bda47d96e0a1268cdc461 8288132: Update test artifacts in QuoVadis CA interop tests Reviewed-by: mullan ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/QuoVadisCA.java Changeset: 2cc40afa Author: Sandhya Viswanathan Date: 2022-06-10 17:02:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2cc40afa075b1cf749db98d5a6c6cb1c548ba85d 8287835: Add support for additional float/double to integral conversion for x86 Reviewed-by: kvn, jbhateja ! src/hotspot/cpu/x86/assembler_x86.cpp ! src/hotspot/cpu/x86/assembler_x86.hpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp ! src/hotspot/cpu/x86/c2_MacroAssembler_x86.hpp ! src/hotspot/cpu/x86/x86.ad + test/hotspot/jtreg/compiler/vectorapi/VectorFPtoIntCastTest.java + test/micro/org/openjdk/bench/jdk/incubator/vector/VectorFPtoIntCastOperations.java Changeset: aaa89714 Author: Joe Darcy Date: 2022-06-10 17:05:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/aaa897148ab2669e06531521221f0551335b3d1f 8288227: Refactor annotation implementation to use pattern matching for instanceof Reviewed-by: alanb ! src/java.base/share/classes/sun/reflect/annotation/AnnotatedTypeFactory.java ! src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java ! src/java.base/share/classes/sun/reflect/annotation/AnnotationParser.java ! src/java.base/share/classes/sun/reflect/annotation/TypeAnnotationParser.java Changeset: c6dd2ab9 Author: Rajan Halade Date: 2022-06-10 17:25:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c6dd2ab9d72298b1e25ee811b1e200f6a0fdc933 8224768: Test ActalisCA.java fails Reviewed-by: mullan ! test/jdk/ProblemList.txt ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java Changeset: 7e940efc Author: Joe Darcy Date: 2022-06-10 19:00:41 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e940efcbc13a941f749cc6aff3ccf2f0640b438 8286038: Update --release 19 symbol information for JDK 19 build 26 Reviewed-by: iris ! src/jdk.compiler/share/data/symbols/java.base-J.sym.txt ! src/jdk.compiler/share/data/symbols/java.desktop-J.sym.txt ! src/jdk.compiler/share/data/symbols/jdk.compiler-J.sym.txt ! src/jdk.compiler/share/data/symbols/symbols Changeset: d0c8ff8f Author: Magnus Ihse Bursie Date: 2022-06-10 19:32:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d0c8ff8fdfe86a4251290d4c1c7b3dbd4cfaf018 8288195: Prepare build system for GHA changes Reviewed-by: shade, erikj ! make/InitSupport.gmk ! make/autoconf/basic.m4 ! make/autoconf/help.m4 Changeset: 03276a51 Author: Jonathan Gibbons Date: 2022-06-10 15:02:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/03276a515301e7772bbff7cce645f73eb695099b 8281445: Document the default value for the override-methods option Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties Changeset: 0164145a Author: Daniel D. Daugherty Date: 2022-06-10 15:37:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0164145afc178b550313b80f5b5252b3bbff17a2 8288222: ProblemList serviceability/jvmti/vthread/VThreadNotifyFramePopTest/VThreadNotifyFramePopTest.java Reviewed-by: alanb, iklam ! test/hotspot/jtreg/ProblemList.txt Changeset: fa564e9d Author: Jesper Wilhelmsson Date: 2022-06-10 19:53:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/fa564e9d5826218e4a9b8a66de92944d24a2c9fa Merge Changeset: f2e10dce Author: Joe Darcy Date: 2022-06-10 20:00:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f2e10dce786a01768436f32e233d72cb4257fbcf 8288238: Add missing file jdk.incubator.concurrent-J.sym.txt Reviewed-by: mikael, dcubed + src/jdk.compiler/share/data/symbols/jdk.incubator.concurrent-J.sym.txt Changeset: da2339cf Author: Raffaello Giulietti Committer: Brian Burkhalter Date: 2022-06-10 21:01:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/da2339cf6971532593e4f1b5ebbce8d1ed2e83b2 8288173: JDK-8202449 fix causes conformance test failure : api/java_util/Random/RandomGenerator/NextFloat.html Reviewed-by: bpb, darcy ! src/java.base/share/classes/jdk/internal/util/random/RandomSupport.java Changeset: d4b473d8 Author: Weijun Wang Date: 2022-06-10 22:25:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d4b473d89046874f25aa6f65f3ae96f7d8397d50 8287178: IntegerModuloP::multiplicativeInverse returns 0 for 0 Reviewed-by: jnimeh ! src/java.base/share/classes/sun/security/util/math/IntegerModuloP.java Changeset: f7a4be75 Author: Hai-May Chao Date: 2022-06-10 23:58:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f7a4be75fbe9e703dea94459285c72094d4d8646 8288270: Tier1 build failures after JDK-8287178 Reviewed-by: weijun, jiefu ! src/java.base/share/classes/sun/security/util/math/IntegerModuloP.java Changeset: d46f404b Author: David Holmes Date: 2022-06-11 05:52:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d46f404b3179c66e8e5775a9e2253c95238153c7 8279047: Remove expired flags in JDK 20 Reviewed-by: kvn, kbarrett, alanb ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp ! src/java.base/share/man/java.1 ! test/jdk/java/lang/Thread/virtual/HoldsLock.java ! test/jdk/java/util/concurrent/ConcurrentHashMap/MapLoops.java Changeset: f1143b1b Author: Andrey Turbanov Date: 2022-06-11 10:53:35 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f1143b1b57683665c81d24ff192a9babc30f28ea 8287696: Avoid redundant Hashtable.containsKey call in JarVerifier.doneWithMeta Reviewed-by: jpai, lancea ! src/java.base/share/classes/java/util/jar/JarVerifier.java Changeset: 0cb0ecf4 Author: Sibabrata Sahoo Date: 2022-06-13 05:17:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0cb0ecf4433f1054ba2f0fbdabee01323893e0fe 8209935: Test to cover CodeSource.getCodeSigners() Reviewed-by: mullan + test/jdk/java/security/CodeSource/CertsMatch.java ! test/jdk/java/security/CodeSource/Implies.java + test/jdk/java/security/CodeSource/certs Changeset: ac28be72 Author: Koichi Sakata Committer: Roberto Casta?eda Lozano Date: 2022-06-13 08:22:57 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ac28be721feb2d14120132f6b289ca436acf0406 8283612: IGV: Remove Graal module Reviewed-by: rcastanedalo, chagedorn - src/utils/IdealGraphVisualizer/Graal/pom.xml - src/utils/IdealGraphVisualizer/Graal/src/main/java/com/sun/hotspot/igv/graal/filters/GraalCFGFilter.java - src/utils/IdealGraphVisualizer/Graal/src/main/java/com/sun/hotspot/igv/graal/filters/GraalColoringFilter.java - src/utils/IdealGraphVisualizer/Graal/src/main/java/com/sun/hotspot/igv/graal/filters/GraalEdgeColorFilter.java - src/utils/IdealGraphVisualizer/Graal/src/main/nbm/manifest.mf - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/Bundle.properties - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/callgraph.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/color.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/probability.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/reduceEdges.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/removeFloating.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/removeState.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/filters/stampColor.filter - src/utils/IdealGraphVisualizer/Graal/src/main/resources/com/sun/hotspot/igv/graal/layer.xml ! src/utils/IdealGraphVisualizer/application/pom.xml ! src/utils/IdealGraphVisualizer/pom.xml Changeset: 33ed0365 Author: Emanuel Peter Date: 2022-06-13 11:46:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33ed0365c3ed182a9d063e1701fe69bfb72dfa2e 8283775: better dump: VM support for graph querying in debugger with BFS traversal and node filtering Reviewed-by: kvn, chagedorn, thartmann, rcastanedalo ! src/hotspot/share/opto/callnode.cpp ! src/hotspot/share/opto/callnode.hpp ! src/hotspot/share/opto/node.cpp ! src/hotspot/share/opto/node.hpp Changeset: 0207d761 Author: Andrew Haley Date: 2022-06-13 14:35:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0207d761f45c85dbcdc509bbba9e73bbe5d19329 8287926: AArch64: intrinsics for divideUnsigned and remainderUnsigned methods in java.lang.Integer and java.lang.Long Reviewed-by: adinn, ngasson ! src/hotspot/cpu/aarch64/aarch64.ad Changeset: 4aede33f Author: Jie Fu Date: 2022-06-13 14:36:57 +0000 URL: https://git.openjdk.org/panama-foreign/commit/4aede33fbf940290bb86ac1af1e833ce4d709100 8288282: Zero-release build is broken after JDK-8279047 due to UseHeavyMonitors is read-only Reviewed-by: dholmes, shade ! src/hotspot/cpu/zero/vm_version_zero.cpp ! test/hotspot/jtreg/runtime/Monitor/SyncOnValueBasedClassTest.java Changeset: 2adef6a1 Author: Kevin Driver Committer: Bradford Wetmore Date: 2022-06-13 14:38:36 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2adef6a1f84d478bb38b179795f08ffa43680e36 8267860: Off-by-one bug when searching arrays in AlpnGreaseTest Co-authored-by: Bradford Wetmore Reviewed-by: wetmore ! test/jdk/sun/security/ssl/ALPN/AlpnGreaseTest.java Changeset: b97a4f6c Author: Alexey Ivanov Date: 2022-06-13 14:48:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b97a4f6cdcd5e497ab901e68923666e493414825 8288114: Update JIRA link in vcs.xml Reviewed-by: mcimadamore, ihse, erikj ! make/ide/idea/jdk/template/vcs.xml Changeset: 17695962 Author: Mark Powers Committer: Weijun Wang Date: 2022-06-13 15:13:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/17695962ac191b1c0404f9671f09e0e9bbc83ef5 8285263: Minor cleanup could be done in java.security Reviewed-by: weijun ! src/java.base/share/classes/java/security/AlgorithmConstraints.java ! src/java.base/share/classes/java/security/AlgorithmParameterGenerator.java ! src/java.base/share/classes/java/security/AlgorithmParameters.java ! src/java.base/share/classes/java/security/AllPermission.java ! src/java.base/share/classes/java/security/BasicPermission.java ! src/java.base/share/classes/java/security/CodeSigner.java ! src/java.base/share/classes/java/security/CodeSource.java ! src/java.base/share/classes/java/security/DigestInputStream.java ! src/java.base/share/classes/java/security/DigestOutputStream.java ! src/java.base/share/classes/java/security/DomainLoadStoreParameter.java ! src/java.base/share/classes/java/security/DrbgParameters.java ! src/java.base/share/classes/java/security/Guard.java ! src/java.base/share/classes/java/security/GuardedObject.java ! src/java.base/share/classes/java/security/InvalidKeyException.java ! src/java.base/share/classes/java/security/Key.java ! src/java.base/share/classes/java/security/KeyFactory.java ! src/java.base/share/classes/java/security/KeyFactorySpi.java ! src/java.base/share/classes/java/security/KeyPair.java ! src/java.base/share/classes/java/security/KeyPairGenerator.java ! src/java.base/share/classes/java/security/KeyRep.java ! src/java.base/share/classes/java/security/KeyStore.java ! src/java.base/share/classes/java/security/KeyStoreSpi.java ! src/java.base/share/classes/java/security/MessageDigest.java ! src/java.base/share/classes/java/security/MessageDigestSpi.java ! src/java.base/share/classes/java/security/PKCS12Attribute.java ! src/java.base/share/classes/java/security/Permission.java ! src/java.base/share/classes/java/security/PermissionCollection.java ! src/java.base/share/classes/java/security/Permissions.java ! src/java.base/share/classes/java/security/Principal.java ! src/java.base/share/classes/java/security/PrivateKey.java ! src/java.base/share/classes/java/security/ProtectionDomain.java ! src/java.base/share/classes/java/security/Provider.java ! src/java.base/share/classes/java/security/PublicKey.java ! src/java.base/share/classes/java/security/SecureClassLoader.java ! src/java.base/share/classes/java/security/SecureRandom.java ! src/java.base/share/classes/java/security/SecureRandomSpi.java ! src/java.base/share/classes/java/security/Security.java ! src/java.base/share/classes/java/security/SecurityPermission.java ! src/java.base/share/classes/java/security/Signature.java ! src/java.base/share/classes/java/security/SignatureSpi.java ! src/java.base/share/classes/java/security/Timestamp.java ! src/java.base/share/classes/java/security/URIParameter.java ! src/java.base/share/classes/java/security/UnresolvedPermission.java ! src/java.base/share/classes/java/security/cert/CRL.java ! src/java.base/share/classes/java/security/cert/CertPath.java ! src/java.base/share/classes/java/security/cert/CertPathBuilder.java ! src/java.base/share/classes/java/security/cert/CertPathValidator.java ! src/java.base/share/classes/java/security/cert/CertPathValidatorException.java ! src/java.base/share/classes/java/security/cert/CertStore.java ! src/java.base/share/classes/java/security/cert/Certificate.java ! src/java.base/share/classes/java/security/cert/CertificateFactory.java ! src/java.base/share/classes/java/security/cert/CertificateFactorySpi.java ! src/java.base/share/classes/java/security/cert/CertificateRevokedException.java ! src/java.base/share/classes/java/security/cert/CollectionCertStoreParameters.java ! src/java.base/share/classes/java/security/cert/Extension.java ! src/java.base/share/classes/java/security/cert/LDAPCertStoreParameters.java ! src/java.base/share/classes/java/security/cert/PKIXBuilderParameters.java ! src/java.base/share/classes/java/security/cert/PKIXCertPathBuilderResult.java ! src/java.base/share/classes/java/security/cert/PKIXCertPathChecker.java ! src/java.base/share/classes/java/security/cert/PKIXCertPathValidatorResult.java ! src/java.base/share/classes/java/security/cert/PKIXRevocationChecker.java ! src/java.base/share/classes/java/security/cert/PolicyQualifierInfo.java ! src/java.base/share/classes/java/security/cert/URICertStoreParameters.java ! src/java.base/share/classes/java/security/cert/X509CRL.java ! src/java.base/share/classes/java/security/cert/X509Certificate.java ! src/java.base/share/classes/java/security/cert/X509Extension.java ! src/java.base/share/classes/java/security/interfaces/DSAKey.java ! src/java.base/share/classes/java/security/interfaces/DSAKeyPairGenerator.java ! src/java.base/share/classes/java/security/interfaces/DSAParams.java ! src/java.base/share/classes/java/security/interfaces/DSAPrivateKey.java ! src/java.base/share/classes/java/security/interfaces/DSAPublicKey.java ! src/java.base/share/classes/java/security/interfaces/ECPrivateKey.java ! src/java.base/share/classes/java/security/interfaces/ECPublicKey.java ! src/java.base/share/classes/java/security/interfaces/RSAKey.java ! src/java.base/share/classes/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPrivateCrtKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPrivateKey.java ! src/java.base/share/classes/java/security/interfaces/RSAPublicKey.java ! src/java.base/share/classes/java/security/package-info.java ! src/java.base/share/classes/java/security/spec/DSAPrivateKeySpec.java ! src/java.base/share/classes/java/security/spec/DSAPublicKeySpec.java ! src/java.base/share/classes/java/security/spec/ECField.java ! src/java.base/share/classes/java/security/spec/ECFieldF2m.java ! src/java.base/share/classes/java/security/spec/ECFieldFp.java ! src/java.base/share/classes/java/security/spec/ECPrivateKeySpec.java ! src/java.base/share/classes/java/security/spec/ECPublicKeySpec.java ! src/java.base/share/classes/java/security/spec/EdDSAParameterSpec.java ! src/java.base/share/classes/java/security/spec/EllipticCurve.java ! src/java.base/share/classes/java/security/spec/EncodedKeySpec.java ! src/java.base/share/classes/java/security/spec/NamedParameterSpec.java ! src/java.base/share/classes/java/security/spec/PSSParameterSpec.java ! src/java.base/share/classes/java/security/spec/RSAKeyGenParameterSpec.java ! src/java.base/share/classes/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.java ! src/java.base/share/classes/java/security/spec/RSAOtherPrimeInfo.java Changeset: e0baf012 Author: Severin Gehwolf Date: 2022-06-13 15:14:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e0baf012b111e422ddf39a577b1b4af2599fd00d 8287007: [cgroups] Consistently use stringStream throughout parsing code Reviewed-by: iklam ! src/hotspot/os/linux/cgroupV1Subsystem_linux.cpp ! src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp + test/hotspot/gtest/runtime/test_os_linux_cgroups.cpp + test/jdk/jdk/internal/platform/cgroup/CgroupV1SubsystemControllerTest.java + test/jdk/jdk/internal/platform/cgroup/CgroupV2SubsystemControllerTest.java Changeset: 8f400b9a Author: Hai-May Chao Date: 2022-06-13 15:31:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8f400b9aab57d0639721add2ba511bfc0459bd89 8286779: javax.crypto.CryptoPolicyParser#isConsistent always returns 'true' Reviewed-by: mullan, rhalade ! src/java.base/share/classes/javax/crypto/CryptoPolicyParser.java + test/jdk/javax/crypto/CryptoPermissions/InconsistentEntries.java Changeset: 53a0acee Author: Jonathan Gibbons Date: 2022-06-13 18:13:21 +0000 URL: https://git.openjdk.org/panama-foreign/commit/53a0acee06eb32fba700967c9a34d37ea42f7a99 8286101: Support formatting in @value tag Reviewed-by: prappo ! src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeFactory.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/DocCommentParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocPretty.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocTreeMaker.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Messages.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets.properties ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/taglets/ValueTaglet.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/Checker.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/resources/doclint.properties + test/langtools/jdk/javadoc/doclet/testValueTag/TestValueFormats.java ! test/langtools/tools/doclint/ValueTest.java ! test/langtools/tools/doclint/ValueTest.out ! test/langtools/tools/javac/doctree/DocCommentTester.java ! test/langtools/tools/javac/doctree/ValueTest.java ! test/langtools/tools/javac/lib/DPrinter.java Changeset: 9b6d0a7e Author: Gaurav Chaudhari Committer: Naoto Sato Date: 2022-06-13 20:01:57 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9b6d0a7e94fd18d302c559bec6f785d71a919a88 8285838: DST not applying properly with zone id offset set with TZ env variable Reviewed-by: naoto ! src/java.base/unix/native/libjava/TimeZone_md.c + test/jdk/java/util/TimeZone/CustomTzIDCheckDST.java Changeset: b42c1ad1 Author: Alisen Chung Committer: Alexey Ivanov Date: 2022-06-13 20:05:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b42c1ad1086a5c3f579e27380d23f67f8cebb437 8279614: The left line of the TitledBorder is not painted on 150 scale factor Co-authored-by: Alexey Ivanov Reviewed-by: kizune, aivanov, prr ! src/java.desktop/share/classes/javax/swing/border/EtchedBorder.java + test/jdk/javax/swing/border/EtchedBorder/ScaledEtchedBorderTest.java Changeset: e90b579b Author: Daniel D. Daugherty Date: 2022-06-13 20:47:34 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e90b579b294eb88f6b4e236d19b05063775ee8d7 8288332: Tier1 validate-source fails after 8279614 Reviewed-by: darcy ! test/jdk/javax/swing/border/EtchedBorder/ScaledEtchedBorderTest.java Changeset: a9c2ab67 Author: Brian Burkhalter Date: 2022-06-13 22:47:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a9c2ab67c44872ce0247aef6bf972bf4246b44be 8288080: (fc) FileChannel::map for MemorySegments should state it always throws UOE Reviewed-by: alanb ! src/java.base/share/classes/java/nio/channels/FileChannel.java Changeset: d9c1364d Author: Aleksey Shipilev Date: 2022-06-10 17:07:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d9c1364ddecde7e56e165b86e55dc23bda4ff921 8288101: False build warning-as-error with GCC 9 after JDK-8214976 Reviewed-by: mdoerr, zgu, kbarrett ! src/hotspot/share/utilities/compilerWarnings_gcc.hpp Changeset: f4b05a11 Author: Joe Darcy Date: 2022-06-11 00:44:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f4b05a1168e17000ef31173860af77aa722d2280 8288173: JDK-8202449 fix causes conformance test failure : api/java_util/Random/RandomGenerator/NextFloat.html Backport-of: da2339cf6971532593e4f1b5ebbce8d1ed2e83b2 ! src/java.base/share/classes/jdk/internal/util/random/RandomSupport.java Changeset: 7aafc69a Author: Martin Doerr Date: 2022-06-13 14:42:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7aafc69a96cc5c2899d9930bcb81ae4cd0319d5c 8288105: [PPC64] Problems with -XX:+VerifyStack Reviewed-by: goetz, mbaesken ! src/hotspot/cpu/ppc/frame_ppc.cpp ! src/hotspot/cpu/ppc/frame_ppc.hpp ! src/hotspot/cpu/ppc/frame_ppc.inline.hpp ! src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp Changeset: 19043538 Author: Jesper Wilhelmsson Date: 2022-06-14 00:27:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/19043538e100f3646802c2f571dd9c5c67e7f90d Merge Changeset: fbe92666 Author: Naoto Sato Date: 2022-06-14 01:06:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/fbe926662287283c579fdb4ca8290670500cf5a5 8288378: [BACKOUT] DST not applying properly with zone id offset set with TZ env variable Reviewed-by: dholmes ! src/java.base/unix/native/libjava/TimeZone_md.c - test/jdk/java/util/TimeZone/CustomTzIDCheckDST.java Changeset: 86c9241c Author: Eric Liu Committer: Xiaohong Gong Date: 2022-06-14 03:38:42 +0000 URL: https://git.openjdk.org/panama-foreign/commit/86c9241cce50dfdaf1dcd2c218ecc8e5f5af3918 8287028: AArch64: [vectorapi] Backend implementation of VectorMask.fromLong with SVE2 Reviewed-by: xgong, ngasson ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.hpp ! test/hotspot/gtest/aarch64/aarch64-asmtest.py ! test/hotspot/gtest/aarch64/asmtest.out.h Changeset: 03dca565 Author: Swati Sharma Committer: Jatin Bhateja Date: 2022-06-14 06:13:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/03dca565cfcb3fb65a69ac6c59f062f1eeef87ac 8287525: Extend IR annotation with new options to test specific target feature. Co-authored-by: Jatin Bhateja Reviewed-by: chagedorn, kvn ! src/hotspot/cpu/x86/vm_version_x86.cpp ! test/hotspot/jtreg/compiler/lib/ir_framework/IR.java ! test/hotspot/jtreg/compiler/lib/ir_framework/IRNode.java ! test/hotspot/jtreg/compiler/lib/ir_framework/test/IREncodingPrinter.java + test/hotspot/jtreg/compiler/vectorapi/TestCPUFeatureCheck.java Changeset: c2ccf4ca Author: Matthias Baesken Date: 2022-06-14 07:18:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c2ccf4ca85b5375e08dce836acd6e86c851c3bd6 8288003: log events for os::dll_unload Reviewed-by: dholmes, stuefe ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/linux/os_linux.hpp ! src/hotspot/os/posix/os_posix.cpp ! src/hotspot/os/windows/os_windows.cpp Changeset: 1a653322 Author: Magnus Ihse Bursie Date: 2022-06-14 07:48:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1a6533225d8f4b9c5d21e236eaa9f827f096fa5d 8287906: Rewrite of GitHub Actions (GHA) sanity tests Reviewed-by: shade, erikj, cstein + .github/actions/config/action.yml + .github/actions/do-build/action.yml + .github/actions/get-bootjdk/action.yml + .github/actions/get-bundles/action.yml + .github/actions/get-gtest/action.yml + .github/actions/get-jtreg/action.yml + .github/actions/get-msys2/action.yml + .github/actions/upload-bundles/action.yml + .github/scripts/gen-build-failure-report.sh + .github/scripts/gen-test-results.sh + .github/scripts/gen-test-summary.sh + .github/workflows/build-cross-compile.yml + .github/workflows/build-linux.yml + .github/workflows/build-macos.yml + .github/workflows/build-windows.yml + .github/workflows/main.yml - .github/workflows/submit.yml + .github/workflows/test.yml + make/conf/github-actions.conf - make/conf/test-dependencies Changeset: 0530f4e5 Author: Matthias Baesken Date: 2022-06-14 10:43:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0530f4e517be5d5b3ff10be8a0764e564f068c06 8288094: cleanup old _MSC_VER handling Reviewed-by: mdoerr, clanger, aturbanov ! src/hotspot/os_cpu/windows_aarch64/unwind_windows_aarch64.hpp ! src/hotspot/os_cpu/windows_x86/unwind_windows_x86.hpp ! src/hotspot/share/adlc/adlc.hpp ! src/hotspot/share/adlc/main.cpp ! src/hotspot/share/interpreter/bytecodes.cpp ! src/java.base/share/native/launcher/main.c ! src/java.desktop/windows/native/libawt/windows/ThemeReader.cpp ! src/java.desktop/windows/native/libawt/windows/awt_DesktopProperties.cpp ! src/java.desktop/windows/native/libawt/windows/awt_Window.cpp Changeset: fb297705 Author: Paul Sandoz Date: 2022-06-14 16:22:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/fb297705f6dc668bea0257efb9c46b90b5eab2e9 8287186: JDK modules participating in preview Reviewed-by: alanb, jlahoda + src/java.base/share/classes/jdk/internal/javac/ParticipatesInPreview.java ! src/java.base/share/classes/module-info.java ! src/java.management/share/classes/java/lang/management/ThreadInfo.java ! src/java.management/share/classes/module-info.java ! src/java.management/share/classes/sun/management/ThreadImpl.java ! src/java.management/share/classes/sun/management/Util.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Preview.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructuredTaskScope.java ! src/jdk.incubator.concurrent/share/classes/module-info.java ! src/jdk.incubator.vector/share/classes/module-info.java Changeset: 0f580974 Author: Coleen Phillimore Date: 2022-06-14 19:30:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0f580974a606cf9df293dbaebf72ab86cd01b774 8288134: Super class names don't have envelopes Reviewed-by: iklam, hseigel, fparain ! src/hotspot/share/classfile/systemDictionary.cpp ! src/hotspot/share/classfile/systemDictionary.hpp Changeset: bbaeacb5 Author: Harshitha Onkar Committer: Dmitry Markov Date: 2022-06-14 19:48:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bbaeacb597a8acc2c88793a6231c53ea0453f4d4 8265586: [windows] last button is not shown in AWT Frame with BorderLayout and MenuBar set. Reviewed-by: aivanov, dmarkov, azvegint ! src/java.desktop/windows/native/libawt/windows/awt_Window.cpp + test/jdk/java/awt/Frame/AwtFramePackTest.java Changeset: fe807217 Author: Yoshiki Sato Committer: Mandy Chung Date: 2022-06-15 00:12:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/fe807217a79753f84c00432e7451c17baa6645c5 8287917: System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier Reviewed-by: mchung ! src/java.base/macosx/classes/jdk/internal/loader/ClassLoaderHelper.java ! test/jdk/java/lang/RuntimeTests/loadLibrary/exeLibraryCache/LibraryFromCache.java Changeset: 08400f18 Author: Zhuojun Miao Committer: Tobias Hartmann Date: 2022-06-15 05:57:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/08400f18badb23ea3d00282e8b71e76844398a67 8287349: AArch64: Merge LDR instructions to improve C1 OSR performance Reviewed-by: aph, ngasson, thartmann ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp Changeset: 444a0d98 Author: Matthias Baesken Date: 2022-06-15 06:39:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/444a0d98ac06ab043e3b11281234fd515abff302 8284977: MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn't exist Reviewed-by: sgehwolf, mdoerr ! test/lib/jdk/test/lib/containers/cgroup/MetricsTesterCgroupV2.java Changeset: 33f34d54 Author: Matthias Baesken Date: 2022-06-15 06:53:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33f34d540e01db7e64da97d518e9dd88d014fb23 8288207: Enhance MalformedURLException in Uri.parseCompat Reviewed-by: dfuchs, alanb ! src/java.naming/share/classes/com/sun/jndi/toolkit/url/Uri.java Changeset: 2471f8f7 Author: Emanuel Peter Date: 2022-06-15 08:06:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2471f8f7c56dfc1b8de287cb990121d30976ba36 8287647: VM debug support: find node by pattern in name or dump Reviewed-by: kvn, chagedorn, thartmann ! src/hotspot/share/opto/node.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/utilities/stringUtils.cpp ! src/hotspot/share/utilities/stringUtils.hpp Changeset: 68b20572 Author: Boris Ulasevich Date: 2022-06-15 09:10:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/68b2057205844228562f3a0801d70e4a5a04ea85 8287373: remove unnecessary paddings in generated code Reviewed-by: kvn ! src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp ! src/hotspot/share/asm/codeBuffer.cpp ! src/hotspot/share/asm/codeBuffer.hpp ! src/hotspot/share/jvmci/jvmciCodeInstaller.cpp ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidCompilationResult.java ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidDebugInfo.java ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidOopMap.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/TestAssembler.java Changeset: dfeeb6f8 Author: Andrey Turbanov Date: 2022-06-15 10:35:02 +0000 URL: https://git.openjdk.org/panama-foreign/commit/dfeeb6f8f3c42d6fe2adf89f243e7011827db122 8288140: Avoid redundant Hashtable.get call in Signal.handle Reviewed-by: rriggs ! src/java.base/share/classes/jdk/internal/misc/Signal.java Changeset: d5cd2f2c Author: Johan Sj?l?n Committer: Jorn Vernee Date: 2022-06-15 12:23:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d5cd2f2caa857891c2cbc13e7da4f85720f3bbb7 8284849: Add deoptimization to unified logging Reviewed-by: jvernee, kvn, xliu, coleenp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/runtime/deoptimization.cpp Changeset: 6633855c Author: Andrew Leonard Date: 2022-06-15 14:00:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6633855ca78ff0f5f1213a2a1424436678a30e55 8288399: MacOS debug symbol files not always deterministic in reproducible builds Reviewed-by: erikj ! make/autoconf/flags-cflags.m4 ! make/common/NativeCompilation.gmk Changeset: 13d4ddc3 Author: Conor Cleary Committer: Daniel Fuchs Date: 2022-06-15 15:41:18 +0000 URL: https://git.openjdk.org/panama-foreign/commit/13d4ddc35b1a64e2d882c7dcd554b5aee2720c53 8286962: java/net/httpclient/ServerCloseTest.java failed once with ConnectException Reviewed-by: dfuchs, jpai ! test/jdk/java/net/httpclient/ServerCloseTest.java Changeset: cb5ef3da Author: Magnus Ihse Bursie Date: 2022-06-15 17:36:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/cb5ef3da1904e6639130c601db9644895807b4d6 8288499: Restore cancel-in-progress in GHA Reviewed-by: erikj, shade ! .github/workflows/main.yml Changeset: 3475e12f Author: Andrey Turbanov Date: 2022-06-15 18:12:29 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3475e12fa6c50dbaf53b6b03f3b8032017394c1f 8288330: Avoid redundant ConcurrentHashMap.get call in Http2ClientImpl.deleteConnection Reviewed-by: jpai, dfuchs ! src/java.net.http/share/classes/jdk/internal/net/http/Http2ClientImpl.java Changeset: 6d595614 Author: Claes Redestad Date: 2022-06-15 19:48:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6d595614a26ebe579268dc8216344dfb099bb3ad 8288425: Footprint regression due MH creation when initializing StringConcatFactory Reviewed-by: jvernee, mchung ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java Changeset: 1855e9d2 Author: Kevin Driver Committer: Weijun Wang Date: 2022-06-15 21:03:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1855e9d2017f315b31f40329b41eb1cf13c59cfe 8220732: setSeed(long) java api doc is missing warning about provided seed quality Reviewed-by: wetmore ! src/java.base/share/classes/java/security/SecureRandom.java Changeset: 9ff40346 Author: Daniel D. Daugherty Date: 2022-06-15 21:19:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9ff40346dd45ae1607785bb242d9db10562fb99a 8288530: ProblemList serviceability/jvmti/VMObjectAlloc/VMObjectAllocTest.java in -Xcomp mode Reviewed-by: amenkov ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 07612281 Author: Ioi Lam Date: 2022-06-15 22:40:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/07612281b084de62b6fb9e682184f93316130f41 8288443: Simplify vmClasses::resolve_all() Reviewed-by: ccheung, dholmes, coleenp ! src/hotspot/share/classfile/vmClassMacros.hpp ! src/hotspot/share/classfile/vmClasses.cpp Changeset: f7ba3b7e Author: Hao Sun Committer: Ningsheng Jian Date: 2022-06-16 00:54:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f7ba3b7e422c0a4b899b7aa11d0f903e6c1614a9 8288300: AArch64: Remove the assertion in fmovs/fmovd(FloatRegister, FloatRegister) Reviewed-by: aph, ngasson ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp Changeset: a1795901 Author: Fei Gao Committer: Pengfei Li Date: 2022-06-16 02:40:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a1795901ee292fa6272768cef2fedcaaf8044074 8283091: Support type conversion between different data sizes in SLP Reviewed-by: kvn, sviswanathan ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/arm/arm.ad ! src/hotspot/cpu/ppc/ppc.ad ! src/hotspot/cpu/riscv/riscv.ad ! src/hotspot/cpu/s390/s390.ad ! src/hotspot/cpu/x86/x86.ad ! src/hotspot/share/opto/matcher.hpp ! src/hotspot/share/opto/superword.cpp ! src/hotspot/share/opto/superword.hpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/opto/vectornode.hpp + test/hotspot/jtreg/compiler/c2/irTests/TestVectorizeTypeConversion.java ! test/hotspot/jtreg/compiler/codegen/TestByteDoubleVect.java ! test/hotspot/jtreg/compiler/codegen/TestByteFloatVect.java ! test/hotspot/jtreg/compiler/codegen/TestByteLongVect.java ! test/hotspot/jtreg/compiler/codegen/TestFloatDoubleVect.java ! test/hotspot/jtreg/compiler/codegen/TestIntDoubleVect.java ! test/hotspot/jtreg/compiler/codegen/TestIntLongVect.java ! test/hotspot/jtreg/compiler/codegen/TestLongFloatVect.java ! test/hotspot/jtreg/compiler/codegen/TestShortDoubleVect.java ! test/hotspot/jtreg/compiler/codegen/TestShortFloatVect.java ! test/hotspot/jtreg/compiler/codegen/TestShortLongVect.java ! test/micro/org/openjdk/bench/vm/compiler/TypeVectorOperations.java Changeset: 39526e28 Author: Tejesh R Committer: Prasanta Sadhukhan Date: 2022-06-16 03:47:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/39526e28bc4b82d22623a839362fd443e9fb11f0 8284619: javax/swing/JTable/8236907/LastVisibleRow.java failed with "Test Case Failed!!, Last Row not Visible!!!" Reviewed-by: psadhukhan, honkar ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/JTable/8236907/LastVisibleRow.java Changeset: b2a58bec Author: Dmitry Kulikov Committer: Aleksey Shipilev Date: 2022-06-16 08:12:30 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b2a58bec4a4f70a06b23013cc4c351b36a413521 8288005: HotSpot build with disabled PCH fails for Windows AArch64 Reviewed-by: shade, kbarrett ! src/hotspot/os_cpu/windows_aarch64/vm_version_windows_aarch64.cpp Changeset: 53ef59c4 Author: Daniel D. Daugherty Date: 2022-06-13 22:47:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/53ef59c40253d893b8624ab54092d4ddb0966695 8288365: ProblemList java/lang/reflect/callerCache/ReflectionCallerCacheTest.java in -Xcomp on macosx-x64 and windows-x64 Reviewed-by: dholmes, mchung ! test/jdk/ProblemList-Xcomp.txt Changeset: c76a06ae Author: Alan Bateman Date: 2022-06-14 13:00:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c76a06aeb5fe7d7630736a74aad8c873b7afe36b 8288214: serviceability/jvmti/vthread/VThreadNotifyFramePopTest/VThreadNotifyFramePopTest.java test failed Reviewed-by: lmesnik, zgu, dcubed, sspitsyn ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/serviceability/jvmti/vthread/VThreadNotifyFramePopTest/VThreadNotifyFramePopTest.java Changeset: 8cd87e73 Author: Aleksey Shipilev Date: 2022-06-14 14:34:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8cd87e731bcaff2d7838995c68056742d577ad3b 8288303: C1: Miscompilation due to broken Class.getModifiers intrinsic Reviewed-by: iveresov, dlong ! src/hotspot/share/c1/c1_LIRGenerator.cpp + test/hotspot/jtreg/compiler/intrinsics/klass/TestGetModifiers.java Changeset: 5a8e1e43 Author: Brian Burkhalter Date: 2022-06-14 17:59:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5a8e1e43a4436e6537fc96cfea4ea47d4a958c35 8287889: (fs) Files.copy description of REPLACE_EXISTING is hard to read Reviewed-by: alanb ! src/java.base/share/classes/java/nio/file/Files.java Changeset: 50f99c32 Author: Vladimir Ivanov Date: 2022-06-14 22:37:00 +0000 URL: https://git.openjdk.org/panama-foreign/commit/50f99c3208fc9f479cc109fb6e73d262e27026a2 8288360: CI: ciInstanceKlass::implementor() is not consistent for well-known classes Reviewed-by: thartmann, kvn ! src/hotspot/share/ci/ciInstanceKlass.cpp Changeset: 31bc6899 Author: Aleksey Shipilev Date: 2022-06-15 07:49:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/31bc689977c536d7e6b28020eac1b472b60f7e06 8288324: Loom: Uninitialized JvmtiEnvs in VM_Virtual* ops Reviewed-by: sspitsyn, dholmes ! src/hotspot/share/prims/jvmtiEnvBase.hpp Changeset: f3b1f60a Author: Alan Bateman Date: 2022-06-15 08:20:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f3b1f60a29d0d48346988239f15437780642f562 8288289: Preview APIs in jdk.jdi, jdk.management, and jdk.jfr should be reflective preview APIs Reviewed-by: cjplummer, jlahoda ! src/jdk.jdi/share/classes/com/sun/jdi/ThreadReference.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadDeathRequest.java ! src/jdk.jdi/share/classes/com/sun/jdi/request/ThreadStartRequest.java ! src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordedThread.java ! src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java Changeset: 395aea30 Author: Paul Sandoz Date: 2022-06-15 19:21:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/395aea307faa96bf78ddc15798ba7d855c2db170 8288414: Long::compress/expand samples are not correct Reviewed-by: alanb ! src/java.base/share/classes/java/lang/Long.java Changeset: 9254e129 Author: Daniel D. Daugherty Date: 2022-06-15 19:43:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9254e1299374b772c2ea12176a145fb0e91c7fbc 8288526: ProblemList gc/stress/TestStressG1Humongous.java on windows-x64 Reviewed-by: psandoz ! test/hotspot/jtreg/ProblemList.txt Changeset: 729164f5 Author: Jonathan Gibbons Date: 2022-06-15 22:31:56 +0000 URL: https://git.openjdk.org/panama-foreign/commit/729164f53499f146579a48ba1b466c687802f330 8288533: Missing @param tags in com.sun.source classes Reviewed-by: darcy, iris ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java ! src/jdk.compiler/share/classes/com/sun/source/util/TreePathScanner.java Changeset: 3d12c022 Author: Jesper Wilhelmsson Date: 2022-06-16 12:01:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3d12c0225b31bb359bec70aac6befd879cd0c934 Merge ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeScanner.java Changeset: cf4a4966 Author: Coleen Phillimore Date: 2022-06-16 12:38:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/cf4a4966a846ebea7e07c4ee6387fbf1081ea385 8288064: Class initialization locking Reviewed-by: rehn, vlivanov ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/vframe.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/services/heapDumper.cpp ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/InstanceKlass.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotVMConfig.java ! test/hotspot/jtreg/runtime/Thread/TestThreadDumpClassInitMonitor.java Changeset: 8fc8fdca Author: Claes Redestad Date: 2022-06-16 15:05:00 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8fc8fdca96138df20226972be8e8326237b07788 8287905: Reduce runtime of java.nio microbenchmarks Reviewed-by: jvernee ! test/micro/org/openjdk/bench/java/nio/channels/SelectOne.java ! test/micro/org/openjdk/bench/java/nio/channels/SelectorWakeup.java Changeset: ce5024f6 Author: Andrey Turbanov Date: 2022-06-16 16:03:05 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ce5024f66fb21400cbb619064d4f0d19849faab4 8288468: Avoid redundant HashMap.get call in NegotiateAuthentication.firstToken Reviewed-by: dfuchs, jpai ! src/java.base/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java Changeset: 2cf7c017 Author: Andrew Haley Date: 2022-06-16 16:38:39 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2cf7c0175977defa765b2acf33a857b9ead1a243 8288478: AArch64: Clean up whitespace in assembler_aarch64.hpp Reviewed-by: shade ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp Changeset: e7d52e25 Author: Adam Sotona Date: 2022-06-16 16:59:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e7d52e25a273a534c3195ea58745fd4a34963454 8288594: Address possibly lossy conversions in java.base FloatToDecimal Reviewed-by: rriggs ! src/java.base/share/classes/jdk/internal/math/FloatToDecimal.java Changeset: e833c1d1 Author: Andrey Turbanov Date: 2022-06-16 17:29:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e833c1d179f926edabb2d40c6c357ab20bba726e 8285519: Change usages of TimeUnit.convert to TimeUnit.toXXX Reviewed-by: rriggs ! src/java.base/share/classes/java/util/zip/ZipUtils.java ! src/java.base/share/classes/sun/nio/ch/NioSocketImpl.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java ! src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipUtils.java Changeset: 9d4b25e7 Author: Sandhya Viswanathan Date: 2022-06-16 22:07:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9d4b25e7888098a866ff980e37b8d16d456906d8 8288281: compiler/vectorapi/VectorFPtoIntCastTest.java failed with "IRViolationException: There were one or multiple IR rule failures." Reviewed-by: thartmann, chagedorn ! test/hotspot/jtreg/compiler/vectorapi/VectorFPtoIntCastTest.java Changeset: f3da7ff6 Author: Roberto Casta?eda Lozano Date: 2022-06-17 07:32:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f3da7ff66e83a44118c090b7729dce858f0df1b1 8288421: IGV: warn user about all unreachable nodes Reviewed-by: chagedorn, thartmann ! src/utils/IdealGraphVisualizer/ServerCompiler/src/main/java/com/sun/hotspot/igv/servercompiler/ServerCompilerScheduler.java Changeset: 523d553e Author: Srinivas Mandalika Committer: Sergey Bylokhov Date: 2022-06-17 08:22:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/523d553e13e7d6fbf0a3befb1c18431738fe8d7f 8282777: Create a Regression test for JDK-4515031 Reviewed-by: serb + test/jdk/javax/accessibility/JFileChooserAccessibleDescriptionTest.java Changeset: 22a3878b Author: duke Date: 2022-06-17 11:01:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/22a3878b1d48c2a82ed4940fec6a309e23b1cacf Automatic merge of jdk:master into master From sanya.rnd at gmail.com Fri Jun 17 12:49:22 2022 From: sanya.rnd at gmail.com (Alexander Biryukov) Date: Fri, 17 Jun 2022 15:49:22 +0300 Subject: Additional mismatch overloads for memory segments In-Reply-To: <7b8532e4-92b2-782e-d32c-934eac428ab3@oracle.com> References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> <7e81e716-eac0-d121-8b0b-758c57c31dac@oracle.com> <7b8532e4-92b2-782e-d32c-934eac428ab3@oracle.com> Message-ID: > > 1. Add a static mismatch method(s) (similar to what we did for copy) > 2. add the following overloads: > * fill(byte, long, long) // D > 3. Tweak the indexed accessors - e.g. rename them to just "get" and get > both an offset (in bytes) parameter as well as an index (in elements) > parameter; then decide what to do with the offset-only dereference variant: > 3a) keep as is > 3b) drop > 3c) tweak it so that parameter is an index, not an offset 1. Agree, basic functionality like copy/mismatch must expose an offset 2. Can't see harm here, so I'd add an overload 3. I think the current get/set methods with offsets are fine as is (3a). I'm not sure if merging them together with setAtIndex is a good idea, something like set(JAVA_INT, 0, 0, 123) looks confusing. I expect that "index" means that it starts with 0. Otherwise I'd just use set/get and do offset + i * 2/4/8, it's much simpler. By the way, about getUtf8String(long, long).There are multiple ways to put UTF-8 strings in byte[], like null-termination or write length as the first byte/int/varint/stored somewhere else (schema). Current implementation is a null-terminated string, which is fine for C interop. Perhaps naming could be better to reflect it. ??, 16 ???. 2022 ?. ? 17:01, Maurizio Cimadamore < maurizio.cimadamore at oracle.com>: > Hi, > I've spent some time classifying the various instance methods in > MemorySegment, to see if some pattern emerged: > > (A) streaming ops: > > * elements(MemoryLayout) > * spliterator(MemoryLayout) > > (B) slicing ops > > * asSlice(long) > * asSlice(long, long) > > (C) containment ops > > * asOverlappingSlice(MemorySegment) > * segmentOffset(MemorySegment) > > (D) bulk ops > > * fill(byte) > * copyFrom(MemorySegment) > * mismatch(MemorySegment) > > (E) mapped segment ops > > * isLoaded() > * load() > * unload() > * force() > > (F) transform ops > > * asByteBuffer() > * toArray(ValueLayout.OfT) > > (G) simple dereference ops > > * get(ValueLayout.OfT, long) > * set(ValueLayout.OfT, long, T) > > (H) indexed dereference ops > > getAtIndex(ValueLayout.OfT, long) > setAtIndex(ValueLayout.OfT, long, T) > > (I) string dereferene ops > > getUtf8String(long) > setUtf8String(long, String) > > -------------------------------------- > > Now, let's see if, case by case, we can see whether some additional > overload would be desirable or not. As Jorn pointed out, it's not just > about having an offset overload, in some cases offet+size might be better. > > First, I think (B), (C) and (G) are ok as is. (B) and (G) already > provides offset/size accepting variants, and (C) is more about querying > whether two segments are related, so adding offsets here seems odd. > > For (A), (D), (E), (F) you could argue that having an overload that > accepts a size and an offset (or two telescopic overloads, one with only > offset, another with offset _and_ size), might make sense. Zooming in a > bit more, I think some further distinctions are in order. > > First, copy already provides many static methods in the style of > System.arrayCopy. So I think it's fair to say that anybody who wants > more control, should use the static method instead. If we add a static > mismatch, I think the same argument might apply there. > > Similarly, toArray is a nice convenience method, but it's really just a > shortcut for a bulk copy - again, the static methods are enough for > users who want more control. > > Which leaves us with: > > * elements(MemoryLayout) // A > * spliterator(MemoryLayout) // A > * fill(byte) // D > * isLoaded() // E > * load() // E > * unload() // E > * force() // E > * asByteBuffer // F > > Adding one or two overloads for both is doable, but feels like overkill > API-wise. I also note that MappedByteBuffer does not provide overloads > for isLoaded/load/unload. Only force() has an overload, that was added > in 13 [1], and, I believe, because ByteBuffer::force relies on the > buffer mutable position (see last section in [2]), thus making it > impossible to flush independent mapped regions in parallel using the > same buffer. MemorySegments do not have that issue, given that they are > immutable - so one can create 20 disjoint slices of a mapped segment and > force() them in parallel. And, some of these methods allocate several > objects anyway (esp. elements and spliterator), so I don't see a lot of > reasons as to why slicing shouldn't just work there. > > So I believe we could probably just add the following (although I > realize this is an arbitrary cut): > > * fill(byte, long, long) // D > > As for (H), I think the main problem here is that dereference methods in > (H) are not built on top of those in (G). I think the following form: > > getAtIndex(ValueLayout.OfT, long, long) > setAtIndex(ValueLayout.OfT, long, long, T) > > Would be more useful, where the first parameter is an offset into the > segment, and the second is a logical index. Seems strictly more general. > Actually note that these new methods are general enough that, in > principle, we could only have these, and be done (e.g. just one set of > accessors instead of two). Or, instead of having two sets, for offset > and offset+index, we could have two sets for index and offset+index - > which seems more consistent with the rest of the instance methods (where > the offset variant is the "advanced" one). > > Finally, I think (I) the the most complex of all. Because, if we add > something like: > > getUtf8String(long, long) > > At least to me it's not entirely clear what the "length" parameter does. > Does it means (like in all the other methods discussed so far) that it's > like doing asSlice(offset, length) and then getUtf8String? Or does it > mean (as Jorn seemed to imply) that the length parameter refers to the > string length? Also, what if user specifies a string length, but the > memory region contains a terminator char _before_ the user-specified > length? Honestly, it is not clear to me that what we do in (I) is > clearly lacking, or could be improved in a straightforward way. If user > just wants to view a slice of memory as a string, and ignore > terminators, they can just use bulk copy, to copy the contents of the > segment into a byte array, and then create the string from there (which > is what our impl does anyway) - it's all bytes at the end of the day - > IMHO the interesting thing about the string dereference method *is* the > terminator handling. W/o that it's just a copy. > > So, summarizing, to make the API more offset/length friendly we could: > > 1. Add a static mismatch method(s) (similar to what we did for copy) > 2. add the following overloads: > * fill(byte, long, long) // D > 3. Tweak the indexed accessors - e.g. rename them to just "get" and get > both an offset (in bytes) parameter as well as an index (in elements) > parameter; then decide what to do with the offset-only dereference variant: > 3a) keep as is > 3b) drop > 3c) tweak it so that parameter is an index, not an offset > > In this plan, the most controversial part is (2) - in the sense that it > involves an arbitrary choice based on the uses we've seen on the > ByteBuffer API, as well as some other considerations (e.g. how much do > the methods end up allocating anyway). As for (3), I think the more > general offset+index dereference methods, give us an opportunity to > think if the set of dereference we provide is the one that makes the > most sense. > > Thoughts? > > Maurizio > > [1] - https://bugs.openjdk.org/browse/JDK-8221696 > [2] - https://openjdk.org/jeps/352 > > On 15/06/2022 14:46, Jorn Vernee wrote: > > Just wanted to mention that it's not just offsets, but also lengths in > > some cases. > > > > For instance, fill might need a length and offset overload. And I've > > also felt in the past that getUtf8String, which currently only takes > > an offset, should be split into 2 overloads, one that takes an offset > > and length, and one that takes no arguments (which would internally > > look for a null terminator). > > > > Jorn > > > > On 14/06/2022 14:40, Maurizio Cimadamore wrote: > >> > >> On 14/06/2022 13:03, Alexander Biryukov wrote: > >>> That makes sense, and I think your description pretty much sums it up. > >>> Maybe it can be transformed in a checklist: > >>> > >>> 1. Instance methods are preferred > >>> 2. Binary operators are implemented as static and instance methods, > >>> both with offsets > >>> 3. Some instance methods have offset-related overloads, where it > >>> makes sense > >>> 4. Pure static methods are not welcome, except for some widespread > >>> patterns, like factory methods (*) > >> > >> I would split (3) as follows: > >> > >> 3a. Instance methods have an additional offset parameter > >> 3b. Where it makes sense, offset-free overloads might be provided > >> (e.g. call method in (3a) with offset=0) > >> > >> This feels more principled, as (3a) is a primitive and (3b) is sugare > >> than can easily be derived from that. > >> > >> Re. your point of using analytics, again, this is a relatively new > >> API, there's not much code using it out there, so the risk of > >> "overfitting" is real. > >> > >> I'm slightly on the fence w.r.t. having both static and instance > >> variants for binary methods - that said, as long as we can clearly > >> explain what's the primitive (the static method), I think the API can > >> still be explain in a relatively straightforward fashion. > >> > >> Maurizio > >> > >> > >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From maurizio.cimadamore at oracle.com Fri Jun 17 13:02:56 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Fri, 17 Jun 2022 14:02:56 +0100 Subject: Additional mismatch overloads for memory segments In-Reply-To: References: <01f7a8d1-209f-cd8f-5cdd-6ce18083a57f@oracle.com> <177fd742-4727-be88-8706-0a9ce48542c4@oracle.com> <796df98f-cbbf-f8a5-a278-cccbf7fa4713@oracle.com> <7e81e716-eac0-d121-8b0b-758c57c31dac@oracle.com> <7b8532e4-92b2-782e-d32c-934eac428ab3@oracle.com> Message-ID: On 17/06/2022 13:49, Alexander Biryukov wrote: > > 1. Add a static mismatch method(s) (similar to what we did for copy) > 2. add the following overloads: > * fill(byte, long, long) // D > 3. Tweak the indexed accessors - e.g. rename them to just "get" > and get > both an offset (in bytes) parameter as well as an index (in elements) > parameter; then decide what to do with the offset-only dereference > variant: > 3a) keep as is > 3b) drop > 3c) tweak it so that parameter is an index, not an offset > > > 1. Agree, basic functionality like copy/mismatch must expose an offset > 2. Can't see harm here, so I'd add an overload > 3. I think the current get/set methods with offsets are fine as is (3a). > I'm not sure if merging them together with setAtIndex is a good idea, > something like set(JAVA_INT, 0, 0, 123) looks confusing. > I expect that "index" means that it starts with 0. > Otherwise I'd just use set/get and do offset + i * 2/4/8, it's much > simpler. Point taken. Note that option 3c though would give you the same e.g. set(JAVA_INT, 0, 123) // sets 123 at index 0 and, also have an advanced option: set(JAVA_INT, offset, 0, 123) // sets 123 at index 0, starting at offset Doing I *2/4/8 is, of course possible, but looks redundant, given that you are also passing a layout. That said, I don't feel particularly strongly about any of the options here - and I agree that the API points provided now are expressive enough (assuming one wants to do offset computation by hand). > By the way, about getUtf8String(long, long).There are multiple ways to > put UTF-8 strings in byte[], > like null-termination or write length as the first > byte/int/varint/stored somewhere else (schema). > Current implementation is a null-terminated string, which is fine for > C interop. > Perhaps naming could be better to reflect it. True. Best we could do is probably dropping a C somewhere in there. (e.g. getUtf8CString), as I don't think "getUtf8NullTerminatedString" would fly :-) Maurizio > > > > ??, 16 ???. 2022 ?. ? 17:01, Maurizio Cimadamore > : > > Hi, > I've spent some time classifying the various instance methods in > MemorySegment, to see if some pattern emerged: > > (A) streaming ops: > > * elements(MemoryLayout) > * spliterator(MemoryLayout) > > (B) slicing ops > > * asSlice(long) > * asSlice(long, long) > > (C) containment ops > > * asOverlappingSlice(MemorySegment) > * segmentOffset(MemorySegment) > > (D) bulk ops > > * fill(byte) > * copyFrom(MemorySegment) > * mismatch(MemorySegment) > > (E) mapped segment ops > > * isLoaded() > * load() > * unload() > * force() > > (F) transform ops > > * asByteBuffer() > * toArray(ValueLayout.OfT) > > (G) simple dereference ops > > * get(ValueLayout.OfT, long) > * set(ValueLayout.OfT, long, T) > > (H) indexed dereference ops > > getAtIndex(ValueLayout.OfT, long) > setAtIndex(ValueLayout.OfT, long, T) > > (I) string dereferene ops > > getUtf8String(long) > setUtf8String(long, String) > > -------------------------------------- > > Now, let's see if, case by case, we can see whether some additional > overload would be desirable or not. As Jorn pointed out, it's not > just > about having an offset overload, in some cases offet+size might be > better. > > First, I think (B), (C) and (G) are ok as is. (B) and (G) already > provides offset/size accepting variants, and (C) is more about > querying > whether two segments are related, so adding offsets here seems odd. > > For (A), (D), (E), (F) you could argue that having an overload that > accepts a size and an offset (or two telescopic overloads, one > with only > offset, another with offset _and_ size), might make sense. Zooming > in a > bit more, I think some further distinctions are in order. > > First, copy already provides many static methods in the style of > System.arrayCopy. So I think it's fair to say that anybody who wants > more control, should use the static method instead. If we add a > static > mismatch, I think the same argument might apply there. > > Similarly, toArray is a nice convenience method, but it's really > just a > shortcut for a bulk copy - again, the static methods are enough for > users who want more control. > > Which leaves us with: > > * elements(MemoryLayout) // A > * spliterator(MemoryLayout) // A > * fill(byte) // D > * isLoaded() // E > * load() // E > * unload() // E > * force() // E > * asByteBuffer // F > > Adding one or two overloads for both is doable, but feels like > overkill > API-wise. I also note that MappedByteBuffer does not provide > overloads > for isLoaded/load/unload. Only force() has an overload, that was > added > in 13 [1], and, I believe, because ByteBuffer::force relies on the > buffer mutable position (see last section in [2]), thus making it > impossible to flush independent mapped regions in parallel using the > same buffer. MemorySegments do not have that issue, given that > they are > immutable - so one can create 20 disjoint slices of a mapped > segment and > force() them in parallel.? And, some of these methods allocate > several > objects anyway (esp. elements and spliterator), so I don't see a > lot of > reasons as to why slicing shouldn't just work there. > > So I believe we could probably just add the following (although I > realize this is an arbitrary cut): > > * fill(byte, long, long) // D > > As for (H), I think the main problem here is that dereference > methods in > (H) are not built on top of those in (G). I think the following form: > > getAtIndex(ValueLayout.OfT, long, long) > setAtIndex(ValueLayout.OfT, long, long, T) > > Would be more useful, where the first parameter is an offset into the > segment, and the second is a logical index. Seems strictly more > general. > Actually note that these new methods are general enough that, in > principle, we could only have these, and be done (e.g. just one > set of > accessors instead of two). Or, instead of having two sets, for offset > and offset+index, we could have two sets for index and offset+index - > which seems more consistent with the rest of the instance methods > (where > the offset variant is the "advanced" one). > > Finally, I think (I) the the most complex of all. Because, if we add > something like: > > getUtf8String(long, long) > > At least to me it's not entirely clear what the "length" parameter > does. > Does it means (like in all the other methods discussed so far) > that it's > like doing asSlice(offset, length) and then getUtf8String? Or does it > mean (as Jorn seemed to imply) that the length parameter refers to > the > string length? Also, what if user specifies a string length, but the > memory region contains a terminator char _before_ the user-specified > length? Honestly, it is not clear to me that what we do in (I) is > clearly lacking, or could be improved in a straightforward way. If > user > just wants to view a slice of memory as a string, and ignore > terminators, they can just use bulk copy, to copy the contents of the > segment into a byte array, and then create the string from there > (which > is what our impl does anyway) - it's all bytes at the end of the > day - > IMHO the interesting thing about the string dereference method > *is* the > terminator handling. W/o that it's just a copy. > > So, summarizing, to make the API more offset/length friendly we could: > > 1. Add a static mismatch method(s) (similar to what we did for copy) > 2. add the following overloads: > * fill(byte, long, long) // D > 3. Tweak the indexed accessors - e.g. rename them to just "get" > and get > both an offset (in bytes) parameter as well as an index (in elements) > parameter; then decide what to do with the offset-only dereference > variant: > 3a) keep as is > 3b) drop > 3c) tweak it so that parameter is an index, not an offset > > In this plan, the most controversial part is (2) - in the sense > that it > involves an arbitrary choice based on the uses we've seen on the > ByteBuffer API, as well as some other considerations (e.g. how > much do > the methods end up allocating anyway). As for (3), I think the more > general offset+index dereference methods, give us an opportunity to > think if the set of dereference we provide is the one that makes the > most sense. > > Thoughts? > > Maurizio > > [1] - https://bugs.openjdk.org/browse/JDK-8221696 > [2] - https://openjdk.org/jeps/352 > > On 15/06/2022 14:46, Jorn Vernee wrote: > > Just wanted to mention that it's not just offsets, but also > lengths in > > some cases. > > > > For instance, fill might need a length and offset overload. And > I've > > also felt in the past that getUtf8String, which currently only > takes > > an offset, should be split into 2 overloads, one that takes an > offset > > and length, and one that takes no arguments (which would internally > > look for a null terminator). > > > > Jorn > > > > On 14/06/2022 14:40, Maurizio Cimadamore wrote: > >> > >> On 14/06/2022 13:03, Alexander Biryukov wrote: > >>> That makes sense, and I think your description pretty much > sums it up. > >>> Maybe it can be transformed in a checklist: > >>> > >>> 1. Instance methods are preferred > >>> 2. Binary operators are implemented as static and instance > methods, > >>> both with offsets > >>> 3. Some instance methods have offset-related overloads, where it > >>> makes sense > >>> 4. Pure static methods are not welcome, except for some > widespread > >>> patterns, like factory methods (*) > >> > >> I would split (3) as follows: > >> > >> 3a. Instance methods have an additional offset parameter > >> 3b. Where it makes sense, offset-free overloads might be provided > >> (e.g. call method in (3a) with offset=0) > >> > >> This feels more principled, as (3a) is a primitive and (3b) is > sugare > >> than can easily be derived from that. > >> > >> Re. your point of using analytics, again, this is a relatively new > >> API, there's not much code using it out there, so the risk of > >> "overfitting" is real. > >> > >> I'm slightly on the fence w.r.t. having both static and instance > >> variants for binary methods - that said, as long as we can clearly > >> explain what's the primitive (the static method), I think the > API can > >> still be explain in a relatively straightforward fashion. > >> > >> Maurizio > >> > >> > >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From svkamath at openjdk.org Wed Jun 22 22:02:30 2022 From: svkamath at openjdk.org (Smita Kamath) Date: Wed, 22 Jun 2022 22:02:30 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v11] In-Reply-To: References: Message-ID: > Initial FP16 vectorAPI Java support. Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: Fixing jtreg failures ------------- Changes: - all: https://git.openjdk.org/panama-vector/pull/164/files - new: https://git.openjdk.org/panama-vector/pull/164/files/4f5b106a..536b40a5 Webrevs: - full: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=10 - incr: https://webrevs.openjdk.org/?repo=panama-vector&pr=164&range=09-10 Stats: 16 lines in 4 files changed: 6 ins; 0 del; 10 mod Patch: https://git.openjdk.org/panama-vector/pull/164.diff Fetch: git fetch https://git.openjdk.org/panama-vector pull/164/head:pull/164 PR: https://git.openjdk.org/panama-vector/pull/164 From sviswanathan at openjdk.org Wed Jun 22 22:56:09 2022 From: sviswanathan at openjdk.org (Sandhya Viswanathan) Date: Wed, 22 Jun 2022 22:56:09 GMT Subject: [vectorIntrinsics+fp16] RFR: 8277304: Java support for FP16 [v11] In-Reply-To: References: Message-ID: On Wed, 22 Jun 2022 22:02:30 GMT, Smita Kamath wrote: >> Initial FP16 vectorAPI Java support. > > Smita Kamath has updated the pull request incrementally with one additional commit since the last revision: > > Fixing jtreg failures Looks good to me. ------------- Marked as reviewed by sviswanathan (Committer). PR: https://git.openjdk.org/panama-vector/pull/164 From svkamath at openjdk.org Wed Jun 22 23:24:13 2022 From: svkamath at openjdk.org (Smita Kamath) Date: Wed, 22 Jun 2022 23:24:13 GMT Subject: [vectorIntrinsics+fp16] Integrated: 8277304: Java support for FP16 In-Reply-To: References: Message-ID: <3WvYOPCREB-hnlt2UbzxbCNSyxsStZD9sIAsBPdEEBM=.308aa21f-dc4f-41ff-a562-a8ad424e77f2@github.com> On Tue, 16 Nov 2021 23:52:01 GMT, Smita Kamath wrote: > Initial FP16 vectorAPI Java support. This pull request has now been integrated. Changeset: 6b7b1070 Author: Smita Kamath Committer: Sandhya Viswanathan URL: https://git.openjdk.org/panama-vector/commit/6b7b107051e456d660140275239a02fb21154239 Stats: 9183 lines in 19 files changed: 9101 ins; 1 del; 81 mod 8277304: Java support for FP16 Reviewed-by: sviswanathan ------------- PR: https://git.openjdk.org/panama-vector/pull/164 From duke at openjdk.org Fri Jun 24 11:07:10 2022 From: duke at openjdk.org (duke) Date: Fri, 24 Jun 2022 11:07:10 GMT Subject: git: openjdk/panama-foreign: foreign-memaccess+abi: 81 new changesets Message-ID: <2d4e254e-6955-41f8-b014-c47f52afd0fe@openjdk.org> Changeset: cc445926 Author: Claes Redestad Date: 2022-06-17 12:24:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/cc445926cfe41ee7803791fb223504b0d9fd8100 8287904: Reduce runtime of java.net microbenchmarks Reviewed-by: jvernee = test/micro/org/openjdk/bench/java/net/DatagramChannelSendReceive.java ! test/micro/org/openjdk/bench/java/net/DatagramSocketSendReceive.java - test/micro/org/openjdk/bench/java/net/DatagramSocketTest.java ! test/micro/org/openjdk/bench/java/net/NetworkInterfaceLookup.java - test/micro/org/openjdk/bench/java/net/SocketChannelCompare.java ! test/micro/org/openjdk/bench/java/net/SocketChannelConnectionSetup.java - test/micro/org/openjdk/bench/java/net/SocketChannelReadWrite.java ! test/micro/org/openjdk/bench/java/net/SocketReadWrite.java ! test/micro/org/openjdk/bench/java/net/SocketStreaming.java ! test/micro/org/openjdk/bench/java/net/ThreadLocalParseUtil.java ! test/micro/org/openjdk/bench/java/net/ThreadLocalURI.java ! test/micro/org/openjdk/bench/java/net/URLEncodeDecode.java ! test/micro/org/openjdk/bench/java/net/UnixSocketChannelReadWrite.java Changeset: ff3db520 Author: Maurizio Cimadamore Date: 2022-06-16 15:59:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ff3db52044f69754b1ccf54961f453d4afbfba3a 8288534: Out of bound errors for memory segment access mentions wrong values Reviewed-by: psandoz ! src/java.base/share/classes/java/lang/foreign/AbstractLayout.java ! src/java.base/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java ! test/jdk/java/foreign/TestSegments.java Changeset: c254c9d0 Author: Alexey Semenyuk Date: 2022-06-16 22:04:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c254c9d095d0473282ad74e66239a790912a3d76 8287401: jpackage tests failing on Windows due to powershell issue Reviewed-by: almatvee ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/LauncherIconVerifier.java Changeset: 53bf1bfd Author: Alan Bateman Date: 2022-06-17 05:57:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/53bf1bfdabb79b37afedd09051d057f9eea620f2 8286176: Add JNI_VERSION_19 to jni.h and JNI spec Reviewed-by: dcubed, iris, mchung, dholmes ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/runtime/thread.cpp ! src/java.base/share/native/include/jni.h ! src/jdk.management.agent/unix/native/libmanagement_agent/FileSystemImpl.c ! src/jdk.management.agent/windows/native/libmanagement_agent/FileSystemImpl.c ! test/hotspot/jtreg/native_sanity/JniVersion.java ! test/jdk/java/lang/ClassLoader/nativeLibrary/libnativeLibraryTest.c ! test/jdk/java/lang/StackWalker/libnativeMethod.c ! test/jdk/jdk/internal/loader/NativeLibraries/libnativeLibrariesTest.c ! test/micro/org/openjdk/bench/java/lang/foreign/libQSortJNI.c Changeset: af64d316 Author: Jesper Wilhelmsson Date: 2022-06-17 13:46:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/af64d316c0f687c4ceab7591e050449c64e3babc Merge Changeset: 47b86690 Author: Joe Darcy Date: 2022-06-17 16:57:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/47b86690b6672301aa46d4a7b9ced58d17047cc7 8288573: Make Executable.getParameterCount() actually abstract Reviewed-by: iris, alanb, jpai ! src/java.base/share/classes/java/lang/reflect/Executable.java Changeset: 7d4df6a8 Author: Erik ?sterlund Date: 2022-06-20 06:43:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7d4df6a83f6333e0e73686b807ee5d4b0ac10cd2 8284404: Too aggressive sweeping with Loom Reviewed-by: kvn, thartmann ! src/hotspot/share/compiler/compilerDefinitions.cpp Changeset: 02da5f99 Author: Roberto Casta?eda Lozano Date: 2022-06-20 07:27:11 +0000 URL: https://git.openjdk.org/panama-foreign/commit/02da5f9970ae02e0a67a8bae7cddefe9f3a17ce4 8263384: IGV: Outline should highlight the Graph that has focus Reviewed-by: xliu, chagedorn, thartmann ! src/utils/IdealGraphVisualizer/Coordinator/src/main/java/com/sun/hotspot/igv/coordinator/FolderNode.java ! src/utils/IdealGraphVisualizer/Coordinator/src/main/java/com/sun/hotspot/igv/coordinator/OutlineTopComponent.java Changeset: f62b2bd9 Author: Roberto Casta?eda Lozano Date: 2022-06-20 07:34:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f62b2bd9cda952b205ee03151cc58c95f588a742 8288480: IGV: toolbar action is not applied to the focused graph Reviewed-by: chagedorn, thartmann ! src/utils/IdealGraphVisualizer/View/src/main/java/com/sun/hotspot/igv/view/EditorTopComponent.java Changeset: 7acdcc10 Author: Andrey Turbanov Date: 2022-06-20 08:03:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7acdcc1034fb9529ee7b617889d38b0e557a20ec 8288329: Avoid redundant TreeMap.containsKey call in PolicyParser.read Reviewed-by: mullan ! src/java.base/share/classes/sun/security/provider/PolicyParser.java Changeset: 695d8656 Author: Andrey Turbanov Date: 2022-06-20 09:02:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/695d8656c5c6452b20d9d5a33ebb8f3d2f71c176 8284672: Collapse identical catch branches in java.desktop Reviewed-by: prr, aivanov, serb ! src/java.desktop/macosx/classes/com/apple/laf/AquaSpinnerUI.java ! src/java.desktop/macosx/classes/com/apple/laf/AquaTabbedPaneCopyFromBasicUI.java ! src/java.desktop/share/classes/com/sun/beans/decoder/DocumentHandler.java ! src/java.desktop/share/classes/com/sun/beans/finder/ClassFinder.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFImageMetadata.java ! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKPainter.java ! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/java.desktop/share/classes/com/sun/media/sound/AudioFileSoundbankReader.java ! src/java.desktop/share/classes/com/sun/media/sound/DLSSoundbankReader.java ! src/java.desktop/share/classes/com/sun/media/sound/DirectAudioDevice.java ! src/java.desktop/share/classes/com/sun/media/sound/JavaSoundAudioClip.java ! src/java.desktop/share/classes/com/sun/media/sound/SF2SoundbankReader.java ! src/java.desktop/share/classes/java/awt/AWTKeyStroke.java ! src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java ! src/java.desktop/share/classes/javax/swing/JEditorPane.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicPopupMenuUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicSpinnerUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/LazyActionMap.java ! src/java.desktop/share/classes/javax/swing/plaf/synth/SynthParser.java ! src/java.desktop/share/classes/javax/swing/text/CompositeView.java ! src/java.desktop/share/classes/javax/swing/text/InternationalFormatter.java ! src/java.desktop/share/classes/javax/swing/text/JTextComponent.java ! src/java.desktop/share/classes/javax/swing/text/html/FrameView.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/java.desktop/share/classes/javax/swing/text/html/IsindexView.java ! src/java.desktop/share/classes/sun/awt/image/InputStreamImageSource.java ! src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java ! src/java.desktop/share/classes/sun/font/TrueTypeFont.java ! src/java.desktop/share/classes/sun/font/Type1Font.java ! src/java.desktop/share/classes/sun/print/PSPrinterJob.java ! src/java.desktop/share/classes/sun/print/PSStreamPrintJob.java ! src/java.desktop/share/classes/sun/swing/text/TextComponentPrintable.java ! src/java.desktop/unix/classes/sun/awt/X11/MotifDnDDragSourceProtocol.java ! src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java ! src/java.desktop/unix/classes/sun/awt/X11/XTrayIconPeer.java ! src/java.desktop/unix/classes/sun/java2d/opengl/GLXVolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/java2d/x11/X11VolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/java2d/xr/XRVolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/print/UnixPrintJob.java ! src/java.desktop/windows/classes/sun/java2d/d3d/D3DVolatileSurfaceManager.java ! src/java.desktop/windows/classes/sun/java2d/opengl/WGLVolatileSurfaceManager.java ! src/java.desktop/windows/classes/sun/print/Win32PrintJob.java Changeset: d917e187 Author: Claes Redestad Date: 2022-06-20 10:20:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d917e1874e46ccc26a8fa4ac82d21f4b22484452 8288667: Reduce runtime of java.text microbenchmarks Reviewed-by: jvernee ! test/micro/org/openjdk/bench/java/text/DefFormatterBench.java Changeset: 68bff045 Author: Claes Redestad Date: 2022-06-20 10:21:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/68bff04515ecd482771196cfe51203db43a667b4 8288673: Reduce runtime of java.time microbenchmarks Reviewed-by: jvernee ! test/micro/org/openjdk/bench/java/time/GetYearBench.java ! test/micro/org/openjdk/bench/java/time/InstantBench.java ! test/micro/org/openjdk/bench/java/time/format/DateTimeFormatterBench.java Changeset: 46d5b682 Author: Erik Gahlin Date: 2022-06-20 11:48:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/46d5b682db028c51e6dd9a22473161de6a5a9f1a 8288685: JFR: Use static methods for Active Recording and Active Setting events Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/events/ActiveRecordingEvent.java ! src/jdk.jfr/share/classes/jdk/jfr/events/ActiveSettingEvent.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/EventControl.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java Changeset: 5cdb4b19 Author: Claes Redestad Date: 2022-06-20 11:56:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5cdb4b196047d4f2d69df0fc73102c102bf042f7 8288011: StringConcatFactory: Split application of stringifiers Reviewed-by: jvernee, mchung ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java Changeset: 406cf611 Author: tqxia Committer: Thomas Schatzl Date: 2022-06-20 12:58:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/406cf611d99e30052373aeab0f7bcbd0efd7177b 8287771: Remove useless G1 After GC summary refinement and sampling thread times Reviewed-by: tschatzl, kbarrett ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RemSet.hpp ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.hpp ! test/hotspot/jtreg/gc/g1/TestRemsetLoggingTools.java Changeset: a7df5a40 Author: Markus Gr?nlund Date: 2022-06-20 13:30:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a7df5a40639a4d3138616c9fc1b144381240d2e5 8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state Reviewed-by: jbachorik, egahlin ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.hpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformEventType.java Changeset: 302a6c06 Author: Emanuel Peter Date: 2022-06-20 14:29:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/302a6c068dcbb176381b1535baf25547079c9b06 8287801: Fix test-bugs related to stress flags Reviewed-by: chagedorn, thartmann ! test/hotspot/jtreg/compiler/arraycopy/TestArrayCopyNoInitDeopt.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestDriver.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestSSE2IntVect.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestSSE4IntVect.java ! test/hotspot/jtreg/compiler/c2/irTests/blackhole/BlackholeStoreStoreEATest.java ! test/hotspot/jtreg/compiler/cha/AbstractRootMethod.java ! test/hotspot/jtreg/compiler/cha/DefaultRootMethod.java ! test/hotspot/jtreg/compiler/intrinsics/klass/CastNullCheckDroppingsTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ReprofileTest.java ! test/hotspot/jtreg/compiler/profiling/TestTypeProfiling.java ! test/hotspot/jtreg/compiler/rangechecks/TestExplicitRangeChecks.java ! test/hotspot/jtreg/compiler/rangechecks/TestLongRangeCheck.java ! test/hotspot/jtreg/compiler/rangechecks/TestRangeCheckSmearing.java ! test/hotspot/jtreg/compiler/uncommontrap/Decompile.java ! test/hotspot/jtreg/compiler/uncommontrap/TestUnstableIfTrap.java Changeset: 983f75ca Author: Jonathan Gibbons Date: 2022-06-17 16:53:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/983f75caa614432d25724851c979321f85a16327 8288545: Missing space in error message Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java + test/langtools/jdk/javadoc/doclet/testLinkTaglet/TestLinkNotFound.java Changeset: 97544be5 Author: Erik Gahlin Date: 2022-06-17 19:40:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/97544be5b68860bad0431ec88737ad7cdc284862 8268398: 15% increase in JFR footprint in Noop-Base Reviewed-by: jbachorik ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVMUpcalls.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/MetadataRepository.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/instrument/JDKEvents.java Changeset: f12d0449 Author: Jonathan Gibbons Date: 2022-06-17 21:48:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f12d04492943bd9ff66ec754956fa17b53677794 8288692: jdk/javadoc/doclet/testTagMisuse/TestTagMisuse.java fails after JDK-8288545 Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! test/langtools/jdk/javadoc/doclet/testTagMisuse/TestTagMisuse.java Changeset: ae030bcb Author: Xiaohong Gong Date: 2022-06-20 01:07:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ae030bcbc53fdfcfb748ae1e47e660f698b3fcb7 8288397: AArch64: Fix register issues in SVE backend match rules Reviewed-by: njian, ngasson ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 + test/hotspot/jtreg/compiler/vectorapi/VectorGatherScatterTest.java + test/hotspot/jtreg/compiler/vectorapi/VectorMaskedNotTest.java Changeset: ed714af8 Author: Christian Hagedorn Date: 2022-06-20 06:47:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ed714af854d79fb2b47849f6efdf0c26686b58b3 8288564: C2: LShiftLNode::Ideal produces wrong result after JDK-8278114 Reviewed-by: kvn, iveresov, thartmann ! src/hotspot/share/opto/mulnode.cpp ! test/hotspot/jtreg/compiler/c2/irTests/TestIRLShiftIdeal_XPlusX_LShiftC.java Changeset: 09da87cf Author: Martin Doerr Date: 2022-06-20 08:34:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/09da87cf5c2ed6de059425437e46517da9883e7e 8288485: jni/nullCaller/NullCallerTest.java failing (ppc64) Reviewed-by: alanb ! test/jdk/jni/nullCaller/CallHelper.hpp Changeset: 1cf83a40 Author: Erik Gahlin Date: 2022-06-20 12:23:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1cf83a403f15067fb5a64cff68dc5706f533ebd7 8287800: JFR: Incorrect error message when starting recording with missing .jfc file Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/dcmd/DCmdStart.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/JFC.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/JFCParser.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/JFCModel.java + src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/JFCModelException.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/Parser.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlCondition.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlConfiguration.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlElement.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlExpression.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlNot.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlTest.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/Configure.java ! test/jdk/jdk/jfr/jcmd/JcmdAsserts.java Changeset: 0408f9c5 Author: Markus Gr?nlund Date: 2022-06-20 14:24:35 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0408f9c5436c96128bfe1264faf9fe3f9668f492 8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state Backport-of: a7df5a40639a4d3138616c9fc1b144381240d2e5 ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.hpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformEventType.java Changeset: 33d0363e Author: Erik Gahlin Date: 2022-06-20 16:20:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33d0363e03358c15126b7f040732fb32cafef420 8288741: JFR: Change package name of snippet files Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/consumer/snippet-files/Snippets.java ! src/jdk.jfr/share/classes/jdk/jfr/snippet-files/Snippets.java Changeset: 453e8beb Author: Lance Andersen Date: 2022-06-20 17:32:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/453e8beb43d56656d358c56f9d505ceaeba53f72 8288527: broken link in java.base/java/util/zip/package-summary.html Reviewed-by: bpb, martin ! src/java.base/share/classes/java/util/zip/package-info.java Changeset: 7039c661 Author: Jesper Wilhelmsson Date: 2022-06-20 19:38:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7039c6616ad1b67320f08e7ea4763e8ff4977430 Merge ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java Changeset: 7e211d7d Author: Rob McKenna Date: 2022-06-21 00:23:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e211d7daac32dca8f26f408d1a3b2c7805b5a2e 8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run Reviewed-by: dfuchs, aefimov ! test/jdk/com/sun/jndi/ldap/LdapPoolTimeoutTest.java Changeset: ad891461 Author: Ioi Lam Date: 2022-06-21 05:20:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ad8914616bd63f628e5b6472f1f48315dacfbc94 8288601: Consolidate static/dynamic archive tables Reviewed-by: ccheung ! src/hotspot/share/cds/runTimeClassInfo.cpp ! src/hotspot/share/cds/runTimeClassInfo.hpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/classfile/systemDictionaryShared.hpp Changeset: 5e680d05 Author: Jaikiran Pai Date: 2022-06-21 07:12:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5e680d059445f1c2e702914a4033624ed7979509 8288724: Prevent NullPointerException in serviceability/tmtools/jstack/DaemonThreadTest.java if jstack process fails Reviewed-by: kevinw, sspitsyn ! test/hotspot/jtreg/serviceability/tmtools/jstack/DaemonThreadTest.java Changeset: 701ea3be Author: Thomas Stuefe Date: 2022-06-21 07:55:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/701ea3beaaef1acda2d2e041cfdb7d75549cf95c 8288556: VM crashes if it gets sent SIGUSR2 from outside Reviewed-by: dholmes, lucy ! src/hotspot/os/posix/signals_posix.cpp Changeset: 0f801fe6 Author: Andrey Turbanov Date: 2022-06-21 08:28:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0f801fe6fd2fcc181121f9846f6869ca3a03e18a 8288628: Unnecessary Hashtable usage in ConditionalSpecialCasing Reviewed-by: naoto, jpai ! src/java.base/share/classes/java/lang/ConditionalSpecialCasing.java Changeset: 19017358 Author: Weijun Wang Date: 2022-06-21 14:33:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/19017358b1b3c63fdddc1eecb2fe52f7b7d4b6e3 8288209: SSL debug message wrong about unsupported authentication scheme Reviewed-by: djelinski, jnimeh ! src/java.base/share/classes/sun/security/ssl/CertificateMessage.java ! src/java.base/share/classes/sun/security/ssl/CertificateRequest.java ! src/java.base/share/classes/sun/security/ssl/SSLLogger.java ! src/java.base/share/classes/sun/security/ssl/SignatureScheme.java ! src/java.base/share/classes/sun/security/ssl/X509Authentication.java Changeset: 535fba8b Author: Brian Burkhalter Date: 2022-06-21 15:27:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/535fba8bfcd1bec6400b7be7d7c95e1310ac2b4b 8288687: (fc) Unix version ofFileChannelImpl.transferTo0() should should return IOS_UNSUPPORTED if not Linux, macOS, nor AIX Reviewed-by: alanb ! src/java.base/unix/native/libnio/ch/FileChannelImpl.c Changeset: f0804304 Author: Leonid Mesnik Date: 2022-06-21 18:38:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f0804304400f380661a8a06e4c1dad97068fae60 8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ... Reviewed-by: sspitsyn, kevinw ! test/jdk/com/sun/management/OperatingSystemMXBean/TestTotalSwap.java Changeset: 9f8bfab2 Author: Ioi Lam Date: 2022-06-21 20:54:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9f8bfab29009299e81f4929b5dbd399c21f34d7c 8288537: Move Devirtualizer out of hotspot/share/memory/iterator.hpp Reviewed-by: stefank, coleenp ! src/hotspot/share/gc/serial/defNewGeneration.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.inline.hpp ! src/hotspot/share/memory/iterator.hpp ! src/hotspot/share/memory/iterator.inline.hpp ! src/hotspot/share/oops/instanceClassLoaderKlass.inline.hpp ! src/hotspot/share/oops/instanceKlass.inline.hpp ! src/hotspot/share/oops/instanceMirrorKlass.inline.hpp ! src/hotspot/share/oops/instanceRefKlass.inline.hpp ! src/hotspot/share/oops/instanceStackChunkKlass.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.inline.hpp ! src/hotspot/share/oops/objArrayKlass.inline.hpp ! src/hotspot/share/runtime/stackChunkFrameStream.inline.hpp + src/hotspot/share/utilities/devirtualizer.hpp + src/hotspot/share/utilities/devirtualizer.inline.hpp Changeset: b9c39662 Author: Hannes Walln?fer Date: 2022-06-21 05:56:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b9c396625cc3fcddb89f93255f85f73a931acc34 8288671: Problematic fix for font boosting Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Changeset: af051391 Author: Emanuel Peter Date: 2022-06-21 15:22:02 +0000 URL: https://git.openjdk.org/panama-foreign/commit/af05139133530871c88991aa0340205cfc44972a 8288467: remove memory_operand assert for spilled instructions Reviewed-by: thartmann, shade, jbhateja ! src/hotspot/share/opto/chaitin.cpp Changeset: c74a9235 Author: Hannes Walln?fer Date: 2022-06-21 16:02:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c74a9235fc4526d9954ba3cedd14bbb370217570 8288531: Empty spans in mobile navigation markup Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Navigation.java Changeset: e26d3b3c Author: Daniel D. Daugherty Date: 2022-06-21 16:08:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e26d3b3c01a06f250344d0afdaa9fadd1fdae33b 8288497: add support for JavaThread::is_oop_safe() Reviewed-by: pchilanomate, dholmes, rehn, eosterlund ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/thread.inline.hpp ! src/hotspot/share/services/threadService.cpp Changeset: a1449886 Author: Daniel D. Daugherty Date: 2022-06-21 16:21:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a1449886004b2f0a70f1413bb19ce3ba5c914fdf 8288139: JavaThread touches oop after GC barrier is detached Reviewed-by: pchilanomate, dholmes, rehn, eosterlund ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/threadSMR.cpp ! src/hotspot/share/services/threadIdTable.cpp Changeset: 31d981e5 Author: Daniel D. Daugherty Date: 2022-06-21 16:36:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/31d981e5ea0fa4108da5ef94272794a8fed4a363 8288532: additional review changes for JDK-8286830 Reviewed-by: pchilanomate, dholmes ! src/hotspot/share/runtime/thread.inline.hpp ! test/hotspot/jtreg/runtime/Thread/StopAtExit.java ! test/hotspot/jtreg/runtime/Thread/SuspendAtExit.java Changeset: 97200a78 Author: Ron Pressler Committer: Serguei Spitsyn Date: 2022-06-21 16:48:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/97200a78b176ccc8781acb67db2af2f62572d46a 8278053: serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java failing in loom repo with Xcomp Reviewed-by: sspitsyn, pchilanomate, coleenp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 198cec9e Author: Ron Pressler Committer: Serguei Spitsyn Date: 2022-06-21 16:58:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/198cec9e1b7e8f77a619335dbc569c8def21670c 8286103: VThreadMonitorTest fails "assert(!current->cont_fastpath() || (current->cont_fastpath_thread_state() && !interpreted_native_or_deoptimized_on_stack(current))) failed" Reviewed-by: sspitsyn, pchilanomate ! src/hotspot/share/runtime/continuationFreezeThaw.cpp Changeset: 834d92dd Author: Aleksey Shipilev Date: 2022-06-21 18:13:36 +0000 URL: https://git.openjdk.org/panama-foreign/commit/834d92dd72257ab5d8c6759028098ac0867c5752 8288754: GCC 12 fails to build zReferenceProcessor.cpp Reviewed-by: kbarrett, ayang, stefank, tschatzl ! src/hotspot/share/gc/z/zReferenceProcessor.cpp Changeset: d7b43af5 Author: Maurizio Cimadamore Date: 2022-06-21 20:59:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d7b43af5914d88e5410f33db8b56f4dabdfec25d 8288761: SegmentAllocator:allocate(long bytesSize) not throwing IAEx when bytesSize < 0 Reviewed-by: psandoz ! src/java.base/share/classes/java/lang/foreign/MemorySegment.java ! src/java.base/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java ! src/java.base/share/classes/jdk/internal/foreign/ArenaAllocator.java ! src/java.base/share/classes/jdk/internal/foreign/Utils.java ! test/jdk/java/foreign/TestSegmentAllocators.java Changeset: 70008da6 Author: Alexander Matveev Date: 2022-06-21 21:12:21 +0000 URL: https://git.openjdk.org/panama-foreign/commit/70008da6b47c371c4d15162ca38e1521cd09acf9 8287971: Throw exception for missing values in .jpackage.xml Reviewed-by: asemenyuk ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacBaseInstallerBundler.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageFile.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_zh_CN.properties ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/junit/jdk/jpackage/internal/AppImageFileTest.java ! test/jdk/tools/jpackage/share/AppImagePackageTest.java ! test/jdk/tools/jpackage/share/jdk/jpackage/tests/PredefinedAppImageErrorTest.java Changeset: 2bf5c9a6 Author: Jesper Wilhelmsson Date: 2022-06-21 22:26:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2bf5c9a6877b51377a535c6021a9e38549c89029 Merge ! src/hotspot/share/runtime/sharedRuntime.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt ! src/hotspot/share/runtime/sharedRuntime.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: affbd72a Author: Jaikiran Pai Date: 2022-06-22 05:51:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/affbd72aa3dce80e2ad54ff775c6f7469f38b05b 8288744: Remove tools/jlink/plugins/CompressorPluginTest.java from problemlist Reviewed-by: alanb ! test/jdk/ProblemList.txt Changeset: d51f4f47 Author: Matthias Baesken Date: 2022-06-22 10:36:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d51f4f471f3941294a987dcb68ee264fe27f018a 8287011: Improve container information Reviewed-by: sgehwolf, stuefe ! src/hotspot/os/linux/cgroupSubsystem_linux.hpp ! src/hotspot/os/linux/cgroupV1Subsystem_linux.cpp ! src/hotspot/os/linux/cgroupV1Subsystem_linux.hpp ! src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp ! src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp ! src/hotspot/os/linux/osContainer_linux.cpp ! src/hotspot/os/linux/osContainer_linux.hpp ! src/hotspot/os/linux/os_linux.cpp ! test/hotspot/jtreg/containers/docker/TestMisc.java Changeset: 270cf67e Author: Coleen Phillimore Date: 2022-06-22 12:49:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/270cf67e5ff19b082f710d52831f436dd144d883 8288752: Split thread implementation files Reviewed-by: dholmes, rehn, iklam ! src/hotspot/cpu/aarch64/gc/g1/g1BarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shared/barrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shared/barrierSetNMethod_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp ! src/hotspot/cpu/aarch64/jniFastGetField_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/stubRoutines_aarch64.cpp ! src/hotspot/cpu/arm/gc/g1/g1BarrierSetAssembler_arm.cpp ! src/hotspot/cpu/arm/gc/shared/barrierSetAssembler_arm.cpp ! src/hotspot/cpu/arm/nativeInst_arm_32.hpp ! src/hotspot/cpu/ppc/gc/shenandoah/shenandoahBarrierSetAssembler_ppc.cpp ! src/hotspot/cpu/ppc/stubGenerator_ppc.cpp ! src/hotspot/cpu/riscv/gc/g1/g1BarrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetNMethod_riscv.cpp ! src/hotspot/cpu/riscv/gc/shenandoah/shenandoahBarrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/interp_masm_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/riscv/stubGenerator_riscv.cpp ! src/hotspot/cpu/riscv/stubRoutines_riscv.cpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.inline.hpp ! src/hotspot/cpu/s390/stubGenerator_s390.cpp ! src/hotspot/cpu/s390/stubRoutines_s390.cpp ! src/hotspot/cpu/x86/gc/shared/barrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shared/barrierSetNMethod_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/rdtsc_x86.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_32.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.cpp ! src/hotspot/cpu/x86/stubRoutines_x86_32.cpp ! src/hotspot/cpu/x86/stubRoutines_x86_64.cpp ! src/hotspot/cpu/zero/interpreterFrame_zero.hpp ! src/hotspot/cpu/zero/stack_zero.cpp ! src/hotspot/cpu/zero/stack_zero.inline.hpp ! src/hotspot/cpu/zero/stubGenerator_zero.cpp ! src/hotspot/cpu/zero/stubRoutines_zero.cpp ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/aix/porting_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/posix/signals_posix.cpp ! src/hotspot/os/posix/threadCritical_posix.cpp ! src/hotspot/os/posix/vmError_posix.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/os/windows/os_windows.inline.hpp ! src/hotspot/os/windows/threadCritical_windows.cpp ! src/hotspot/os/windows/vmError_windows.cpp = src/hotspot/os_cpu/aix_ppc/javaThread_aix_ppc.cpp = src/hotspot/os_cpu/aix_ppc/javaThread_aix_ppc.hpp ! src/hotspot/os_cpu/aix_ppc/os_aix_ppc.cpp = src/hotspot/os_cpu/bsd_aarch64/javaThread_bsd_aarch64.cpp = src/hotspot/os_cpu/bsd_aarch64/javaThread_bsd_aarch64.hpp ! src/hotspot/os_cpu/bsd_aarch64/os_bsd_aarch64.cpp = src/hotspot/os_cpu/bsd_x86/javaThread_bsd_x86.cpp = src/hotspot/os_cpu/bsd_x86/javaThread_bsd_x86.hpp ! src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp = src/hotspot/os_cpu/bsd_zero/javaThread_bsd_zero.cpp = src/hotspot/os_cpu/bsd_zero/javaThread_bsd_zero.hpp ! src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp = src/hotspot/os_cpu/linux_aarch64/javaThread_linux_aarch64.cpp = src/hotspot/os_cpu/linux_aarch64/javaThread_linux_aarch64.hpp ! src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp = src/hotspot/os_cpu/linux_arm/javaThread_linux_arm.cpp = src/hotspot/os_cpu/linux_arm/javaThread_linux_arm.hpp ! src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp = src/hotspot/os_cpu/linux_ppc/javaThread_linux_ppc.cpp = src/hotspot/os_cpu/linux_ppc/javaThread_linux_ppc.hpp ! src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp = src/hotspot/os_cpu/linux_riscv/javaThread_linux_riscv.cpp = src/hotspot/os_cpu/linux_riscv/javaThread_linux_riscv.hpp ! src/hotspot/os_cpu/linux_riscv/os_linux_riscv.cpp = src/hotspot/os_cpu/linux_s390/javaThread_linux_s390.cpp = src/hotspot/os_cpu/linux_s390/javaThread_linux_s390.hpp ! src/hotspot/os_cpu/linux_s390/os_linux_s390.cpp = src/hotspot/os_cpu/linux_x86/javaThread_linux_x86.cpp = src/hotspot/os_cpu/linux_x86/javaThread_linux_x86.hpp ! src/hotspot/os_cpu/linux_x86/os_linux_x86.cpp = src/hotspot/os_cpu/linux_zero/javaThread_linux_zero.cpp = src/hotspot/os_cpu/linux_zero/javaThread_linux_zero.hpp ! src/hotspot/os_cpu/linux_zero/os_linux_zero.cpp = src/hotspot/os_cpu/windows_aarch64/javaThread_windows_aarch64.cpp + src/hotspot/os_cpu/windows_aarch64/javaThread_windows_aarch64.hpp ! src/hotspot/os_cpu/windows_aarch64/os_windows_aarch64.cpp - src/hotspot/os_cpu/windows_aarch64/thread_windows_aarch64.hpp = src/hotspot/os_cpu/windows_x86/javaThread_windows_x86.cpp = src/hotspot/os_cpu/windows_x86/javaThread_windows_x86.hpp ! src/hotspot/os_cpu/windows_x86/os_windows_x86.cpp ! src/hotspot/share/asm/assembler.cpp ! src/hotspot/share/cds/archiveBuilder.cpp ! src/hotspot/share/cds/cdsProtectionDomain.hpp ! src/hotspot/share/cds/classListWriter.hpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/ci/ciReplay.cpp ! src/hotspot/share/classfile/defaultMethods.cpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/metadataOnStackMark.cpp ! src/hotspot/share/classfile/placeholders.cpp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/code/debugInfo.cpp ! src/hotspot/share/code/debugInfo.hpp ! src/hotspot/share/code/dependencies.cpp ! src/hotspot/share/code/dependencyContext.cpp ! src/hotspot/share/code/icBuffer.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/compileTask.cpp ! src/hotspot/share/compiler/compilerEvent.cpp ! src/hotspot/share/compiler/compilerThread.cpp ! src/hotspot/share/compiler/compilerThread.hpp ! src/hotspot/share/gc/epsilon/epsilonBarrierSet.cpp ! src/hotspot/share/gc/epsilon/epsilonThreadLocalData.hpp ! src/hotspot/share/gc/g1/g1Allocator.cpp ! src/hotspot/share/gc/g1/g1BarrierSet.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefineThread.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1HotCardCache.hpp ! src/hotspot/share/gc/g1/g1MonitoringSupport.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RootProcessor.cpp ! src/hotspot/share/gc/g1/g1ThreadLocalData.hpp ! src/hotspot/share/gc/g1/g1YoungCollector.cpp ! src/hotspot/share/gc/g1/heapRegionManager.cpp ! src/hotspot/share/gc/g1/heapRegionRemSet.cpp ! src/hotspot/share/gc/parallel/mutableNUMASpace.cpp ! src/hotspot/share/gc/parallel/mutableSpace.cpp ! src/hotspot/share/gc/parallel/psOldGen.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/serial/defNewGeneration.cpp ! src/hotspot/share/gc/serial/genMarkSweep.cpp ! src/hotspot/share/gc/shared/barrierSet.cpp ! src/hotspot/share/gc/shared/barrierSetNMethod.cpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.cpp ! src/hotspot/share/gc/shared/collectedHeap.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/concurrentGCBreakpoints.cpp ! src/hotspot/share/gc/shared/concurrentGCThread.hpp ! src/hotspot/share/gc/shared/copyFailedInfo.hpp ! src/hotspot/share/gc/shared/gcId.cpp ! src/hotspot/share/gc/shared/gcLocker.cpp ! src/hotspot/share/gc/shared/gcLocker.inline.hpp ! src/hotspot/share/gc/shared/gcVMOperations.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.cpp ! src/hotspot/share/gc/shared/memAllocator.cpp ! src/hotspot/share/gc/shared/memAllocator.hpp ! src/hotspot/share/gc/shared/oopStorage.cpp ! src/hotspot/share/gc/shared/satbMarkQueue.cpp ! src/hotspot/share/gc/shared/space.hpp ! src/hotspot/share/gc/shared/stringdedup/stringDedup.cpp ! src/hotspot/share/gc/shared/stringdedup/stringDedupStorageUse.cpp ! src/hotspot/share/gc/shared/strongRootsScope.cpp ! src/hotspot/share/gc/shared/suspendibleThreadSet.cpp ! src/hotspot/share/gc/shared/taskTerminator.cpp ! src/hotspot/share/gc/shared/taskqueue.cpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.cpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.inline.hpp ! src/hotspot/share/gc/shared/workerThread.cpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahEvacOOMHandler.cpp ! src/hotspot/share/gc/shenandoah/shenandoahEvacOOMHandler.hpp ! src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahFullGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahLock.cpp ! src/hotspot/share/gc/shenandoah/shenandoahLock.hpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahParallelCleaning.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahSATBMarkQueueSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.hpp ! src/hotspot/share/gc/shenandoah/shenandoahThreadLocalData.hpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkGroup.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.cpp ! src/hotspot/share/gc/z/zBarrierSet.cpp ! src/hotspot/share/gc/z/zBarrierSetAssembler.cpp ! src/hotspot/share/gc/z/zCPU.cpp ! src/hotspot/share/gc/z/zDriver.cpp ! src/hotspot/share/gc/z/zFuture.inline.hpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zLock.inline.hpp ! src/hotspot/share/gc/z/zMark.cpp ! src/hotspot/share/gc/z/zMark.inline.hpp ! src/hotspot/share/gc/z/zNMethodTable.cpp ! src/hotspot/share/gc/z/zThread.cpp ! src/hotspot/share/gc/z/zThreadLocalAllocBuffer.cpp ! src/hotspot/share/gc/z/zThreadLocalData.hpp ! src/hotspot/share/gc/z/zVerify.cpp ! src/hotspot/share/interpreter/abstractInterpreter.hpp ! src/hotspot/share/interpreter/bootstrapInfo.cpp ! src/hotspot/share/interpreter/interpreterRuntime.hpp ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp ! src/hotspot/share/jfr/instrumentation/jfrJvmtiAgent.cpp ! src/hotspot/share/jfr/instrumentation/jfrResolution.cpp ! src/hotspot/share/jfr/jni/jfrJavaSupport.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/jni/jfrUpcalls.cpp ! src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleDescription.cpp ! src/hotspot/share/jfr/leakprofiler/leakProfiler.cpp ! src/hotspot/share/jfr/leakprofiler/sampling/objectSampler.cpp ! src/hotspot/share/jfr/periodic/jfrFinalizerStatisticsEvent.cpp ! src/hotspot/share/jfr/periodic/jfrPeriodic.cpp ! src/hotspot/share/jfr/periodic/jfrThreadCPULoadEvent.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrCallTrace.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/recorder/checkpoint/jfrMetadataEvent.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrThreadState.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrType.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeManager.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdLoadBarrier.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdLoadBarrier.inline.hpp ! src/hotspot/share/jfr/recorder/repository/jfrEmergencyDump.cpp ! src/hotspot/share/jfr/recorder/repository/jfrRepository.cpp ! src/hotspot/share/jfr/recorder/service/jfrEvent.hpp ! src/hotspot/share/jfr/recorder/service/jfrOptionSet.cpp ! src/hotspot/share/jfr/recorder/service/jfrPostBox.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderService.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderThread.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderThreadLoop.cpp ! src/hotspot/share/jfr/recorder/storage/jfrBuffer.cpp ! src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.hpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.inline.hpp ! src/hotspot/share/jfr/recorder/stringpool/jfrStringPool.cpp ! src/hotspot/share/jfr/support/jfrAllocationTracer.cpp ! src/hotspot/share/jfr/support/jfrFlush.cpp ! src/hotspot/share/jfr/support/jfrJdkJfrEvent.cpp ! src/hotspot/share/jfr/support/jfrStackTraceMark.cpp ! src/hotspot/share/jfr/support/jfrThreadLocal.cpp ! src/hotspot/share/jfr/utilities/jfrEpochQueue.inline.hpp ! src/hotspot/share/jfr/utilities/jfrJavaLog.cpp ! src/hotspot/share/jfr/utilities/jfrSpinlockHelper.hpp ! src/hotspot/share/jfr/utilities/jfrThreadIterator.cpp ! src/hotspot/share/jfr/utilities/jfrThreadIterator.hpp ! src/hotspot/share/jfr/writers/jfrJavaEventWriter.cpp ! src/hotspot/share/jvmci/jvmciEnv.hpp ! src/hotspot/share/libadt/dict.hpp ! src/hotspot/share/logging/logDecorations.cpp ! src/hotspot/share/logging/logMessageBuffer.cpp ! src/hotspot/share/memory/resourceArea.cpp ! src/hotspot/share/memory/resourceArea.hpp ! src/hotspot/share/memory/universe.cpp ! src/hotspot/share/oops/accessBackend.cpp ! src/hotspot/share/oops/constantPool.cpp ! src/hotspot/share/oops/constantPool.hpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/fieldStreams.inline.hpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/markWord.cpp ! src/hotspot/share/oops/oop.cpp ! src/hotspot/share/oops/oopsHierarchy.cpp ! src/hotspot/share/precompiled/precompiled.hpp ! src/hotspot/share/prims/forte.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jniCheck.cpp ! src/hotspot/share/prims/jniCheck.hpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiDeferredUpdates.hpp ! src/hotspot/share/prims/jvmtiEnter.xsl ! src/hotspot/share/prims/jvmtiEnv.cpp ! src/hotspot/share/prims/jvmtiEnvBase.cpp ! src/hotspot/share/prims/jvmtiEnvBase.hpp ! src/hotspot/share/prims/jvmtiEnvThreadState.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/prims/jvmtiRawMonitor.cpp ! src/hotspot/share/prims/jvmtiTagMap.cpp ! src/hotspot/share/prims/jvmtiThreadState.hpp ! src/hotspot/share/prims/jvmtiThreadState.inline.hpp ! src/hotspot/share/prims/jvmtiTrace.cpp ! src/hotspot/share/prims/jvmtiUtil.hpp ! src/hotspot/share/prims/stackwalk.cpp ! src/hotspot/share/prims/unsafe.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuationEntry.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp ! src/hotspot/share/runtime/continuationWrapper.cpp ! src/hotspot/share/runtime/continuationWrapper.inline.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/escapeBarrier.cpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/handles.cpp ! src/hotspot/share/runtime/handles.inline.hpp ! src/hotspot/share/runtime/handshake.cpp ! src/hotspot/share/runtime/interfaceSupport.cpp ! src/hotspot/share/runtime/interfaceSupport.inline.hpp ! src/hotspot/share/runtime/java.cpp ! src/hotspot/share/runtime/javaCalls.cpp ! src/hotspot/share/runtime/javaCalls.hpp + src/hotspot/share/runtime/javaThread.cpp + src/hotspot/share/runtime/javaThread.hpp + src/hotspot/share/runtime/javaThread.inline.hpp ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/monitorDeflationThread.hpp ! src/hotspot/share/runtime/mutex.cpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/nonJavaThread.cpp ! src/hotspot/share/runtime/notificationThread.hpp ! src/hotspot/share/runtime/objectMonitor.cpp ! src/hotspot/share/runtime/orderAccess.cpp ! src/hotspot/share/runtime/os.cpp ! src/hotspot/share/runtime/park.cpp ! src/hotspot/share/runtime/reflection.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/safepointMechanism.cpp ! src/hotspot/share/runtime/safepointMechanism.inline.hpp ! src/hotspot/share/runtime/safepointVerifiers.hpp ! src/hotspot/share/runtime/semaphore.inline.hpp ! src/hotspot/share/runtime/serviceThread.hpp ! src/hotspot/share/runtime/stackOverflow.cpp ! src/hotspot/share/runtime/stackWatermark.cpp ! src/hotspot/share/runtime/stackWatermark.inline.hpp ! src/hotspot/share/runtime/stackWatermarkSet.cpp ! src/hotspot/share/runtime/sweeper.cpp ! src/hotspot/share/runtime/synchronizer.cpp ! src/hotspot/share/runtime/task.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/thread.inline.hpp ! src/hotspot/share/runtime/threadSMR.cpp ! src/hotspot/share/runtime/threadSMR.hpp ! src/hotspot/share/runtime/threadSMR.inline.hpp + src/hotspot/share/runtime/threads.cpp + src/hotspot/share/runtime/threads.hpp ! src/hotspot/share/runtime/unhandledOops.cpp ! src/hotspot/share/runtime/vframe.cpp ! src/hotspot/share/runtime/vframe.hpp ! src/hotspot/share/runtime/vframe.inline.hpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/runtime/vmThread.cpp ! src/hotspot/share/runtime/vmThread.hpp ! src/hotspot/share/services/diagnosticArgument.cpp ! src/hotspot/share/services/diagnosticArgument.hpp ! src/hotspot/share/services/finalizerService.cpp ! src/hotspot/share/services/heapDumper.cpp ! src/hotspot/share/services/heapDumperCompression.cpp ! src/hotspot/share/services/management.cpp ! src/hotspot/share/services/memBaseline.cpp ! src/hotspot/share/services/memoryManager.cpp ! src/hotspot/share/services/memoryPool.cpp ! src/hotspot/share/services/memoryService.cpp ! src/hotspot/share/services/threadIdTable.cpp ! src/hotspot/share/services/threadService.cpp ! src/hotspot/share/services/threadService.hpp ! src/hotspot/share/utilities/concurrentHashTable.inline.hpp ! src/hotspot/share/utilities/debug.cpp ! src/hotspot/share/utilities/events.cpp ! src/hotspot/share/utilities/events.hpp ! src/hotspot/share/utilities/exceptions.cpp ! src/hotspot/share/utilities/globalCounter.cpp ! src/hotspot/share/utilities/globalCounter.inline.hpp ! src/hotspot/share/utilities/growableArray.cpp ! src/hotspot/share/utilities/vmError.cpp ! src/hotspot/share/utilities/waitBarrier.hpp ! test/hotspot/gtest/code/test_dependencyContext.cpp ! test/hotspot/gtest/runtime/test_os.cpp ! test/hotspot/gtest/runtime/test_threads.cpp ! test/hotspot/gtest/utilities/test_metaspaceClosure.cpp Changeset: 50c37f53 Author: Jaikiran Pai Date: 2022-06-22 14:45:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/50c37f53f2ebd2fbbfd9dc5dd055658c55e4c69a 8276798: HttpURLConnection sends invalid HTTP request Reviewed-by: dfuchs, michaelm ! src/java.base/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Changeset: d4de4757 Author: Naoto Sato Date: 2022-06-22 15:47:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d4de4757471d9f21c2a059f91504ecbc4781566e 8287868: Localized names update in COMPAT locale provider Reviewed-by: iris, joehw ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_de.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_es.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_fr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_it.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_ja.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_ko.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_pt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sk_SK.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sr_Latn_BA.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sr_Latn_RS.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_zh_CN.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_zh_TW.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ar.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_be.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ca.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_cs.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_da.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_de.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_el.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_el_CY.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_MT.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_PH.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_SG.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_es.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_es_US.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_et.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_fi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_fr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ga.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_hi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_id.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_it.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ja.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ko.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_lt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_lv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_mk.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ms.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_mt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_nl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_no.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_no_NO_NY.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt_BR.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt_PT.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ru.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sk.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sq.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sr_Latn.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_th.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_vi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh_SG.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh_TW.properties ! test/jdk/java/util/Locale/LocaleEnhanceTest.java ! test/jdk/java/util/Locale/LocaleTest.java ! test/jdk/sun/text/resources/LocaleData ! test/jdk/sun/text/resources/LocaleDataTest.java ! test/jdk/sun/util/resources/Locale/Bug4429024.java ! test/jdk/sun/util/resources/Locale/Bug4965260.java Changeset: 82c77ca8 Author: Xin Liu Date: 2022-06-22 15:57:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/82c77ca807d62c25b9605c6c8164e42af6c3ce6e 8288926: make runtime/logging/DeoptStats.java more reliable Reviewed-by: simonis, phh ! test/hotspot/jtreg/runtime/logging/DeoptStats.java Changeset: 58b6937b Author: Erik Gahlin Date: 2022-06-22 19:37:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/58b6937b092c8ba5a5ff64865b40b4f5c4149908 8288982: JFR: Log event streaming actions Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/Dispatcher.java ! test/jdk/jdk/jfr/api/consumer/recordingstream/TestOnEvent.java Changeset: 3b1ec3e6 Author: Jonathan Gibbons Date: 2022-06-22 20:48:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3b1ec3e660b9905f59373022b287de77196b407c 8288994: Incorrect @since tags for @value update in JDK-8286101 Reviewed-by: darcy, prappo ! src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeFactory.java Changeset: 9e2d9ac5 Author: Joe Wang Date: 2022-06-22 04:49:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9e2d9ac59a19caa52fc661542d4257a7473636d7 8288529: broken link in java.xml Reviewed-by: iris, lancea, naoto ! src/java.xml/share/classes/javax/xml/validation/package-info.java Changeset: 7cf71bc2 Author: Alan Bateman Date: 2022-06-22 07:48:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7cf71bc2d3ae3d84552f06358e70204dc65552fc 8287982: Concurrent implicit attach from native threads crashes VM Reviewed-by: dholmes, rehn ! make/test/JtregNativeJdk.gmk ! src/java.base/share/classes/java/lang/Thread.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/AttachTest.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/ExplicitAttach.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/ImplicitAttach.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/libExplicitAttach.c + test/jdk/java/lang/Thread/jni/AttachCurrentThread/libImplicitAttach.c Changeset: 8fa46c8f Author: Alan Bateman Date: 2022-06-22 07:48:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8fa46c8f72201637e377190d94247e8d96646425 8288840: StructureViolationException should not link to fork method Reviewed-by: psandoz, mchung ! src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructureViolationException.java Changeset: 6037ccdd Author: Markus Gr?nlund Date: 2022-06-22 13:29:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6037ccdd50acd5424a46120028738b811dff064a 8288846: misc tests fail "assert(ms < 1000) failed: Un-interruptable sleep, short time use only" Reviewed-by: egahlin ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/jdk/jdk/jfr/event/sampling/TestNative.java Changeset: 6458ebc8 Author: Daniel D. Daugherty Date: 2022-06-22 16:20:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6458ebc8e4cb11d99f7447e01f890ba36ad41664 8288988: ProblemList serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java in -Xcomp mode Reviewed-by: alanb, azvegint ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 5b583e47 Author: Jesper Wilhelmsson Date: 2022-06-22 23:21:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5b583e4792b1d59891495a4a050fcdd4d38dfee1 Merge ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: bf0623b1 Author: Evgeny Astigeevich Committer: Andrew Haley Date: 2022-06-23 09:30:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf0623b11fd95f09fe953822af71d965bdab8d0f 8286314: Trampoline not created for far runtime targets outside small CodeCache Reviewed-by: aph, phh ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp Changeset: a802b981 Author: Thiago Henrique H?pner Committer: Alan Bateman Date: 2022-06-23 09:41:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a802b9816ac5c0cb0fd236cc7f25ed4fdb1349ef 8287760: --do-not-resolve-by-default gets overwritten if --warn-if-resolved flags is used Reviewed-by: lancea, alanb, cstein ! src/jdk.jartool/share/classes/sun/tools/jar/GNUStyleOptions.java ! test/jdk/tools/jar/modularJar/Basic.java Changeset: 26c03c18 Author: Thomas Stuefe Date: 2022-06-23 10:15:05 +0000 URL: https://git.openjdk.org/panama-foreign/commit/26c03c1860c6da450b5cd6a46576c78bea682f96 8288719: [arm32] SafeFetch32 thumb interleaving causes random crashes 8284997: arm32 build crashes since JDK-8283326 Reviewed-by: snazarki, xliu, lucy ! src/hotspot/os_cpu/linux_arm/safefetch_linux_arm.S ! src/hotspot/share/runtime/safefetch.hpp Changeset: d579916a Author: Julian Waters Committer: Magnus Ihse Bursie Date: 2022-06-23 14:17:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d579916a6b93577519b095e5fbf07377963dcec6 8288740: Change incorrect documentation for sjavac flag Reviewed-by: ihse ! doc/building.html ! doc/building.md Changeset: b8db0c38 Author: Brian Burkhalter Date: 2022-06-23 15:36:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b8db0c383b6ebd741f6981c89a0cafdfd9751315 6980847: (fs) Files.copy needs to be "tuned" Reviewed-by: alanb ! src/java.base/unix/classes/sun/nio/fs/UnixCopyFile.java ! src/java.base/unix/native/libnio/fs/UnixCopyFile.c ! src/java.base/windows/classes/sun/nio/fs/WindowsConstants.java ! src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java Changeset: 72f286a9 Author: Brian Burkhalter Date: 2022-06-23 15:39:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/72f286a9baecd914b77e3436b999ae432025e992 8287580: (se) CancelledKeyException during channel registration Reviewed-by: alanb ! src/java.base/share/classes/sun/nio/ch/SelectorImpl.java + test/jdk/java/nio/channels/Selector/CancelDuringRegister.java Changeset: ef17ee4d Author: Brian Burkhalter Date: 2022-06-23 15:40:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ef17ee4dea38c3bb953927bfdaabf1fe1b7e54ea 8288515: (ch) Unnecessary use of Math.addExact() in java.nio.channels.FileLock.overlaps() Reviewed-by: alanb ! src/java.base/share/classes/java/nio/channels/FileLock.java Changeset: 2728770e Author: Naoto Sato Date: 2022-06-23 15:49:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2728770e3d73bb11c4d6e54b5aff91588a1a780b 8288589: Files.readString ignores encoding errors for UTF-16 Reviewed-by: rriggs, iris, alanb ! src/java.base/share/classes/java/lang/String.java - test/jdk/java/lang/String/NewStringNoRepl.java + test/jdk/java/lang/String/NoReplTest.java ! test/jdk/java/nio/file/Files/ReadWriteString.java Changeset: b206d2d1 Author: Coleen Phillimore Date: 2022-06-23 16:21:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b206d2d14937bf8cfebb629888a09311275ac0db 8289006: Cleanup from thread.hpp split Reviewed-by: dholmes, dcubed ! src/hotspot/cpu/zero/stack_zero.cpp ! src/hotspot/share/runtime/interfaceSupport.inline.hpp Changeset: 13cbb3a4 Author: Brian Burkhalter Date: 2022-06-23 17:48:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/13cbb3a4169fdbf882da70beaa1b88faca2bc9c8 8289073: (fs) UnsatisfiedLinkError for sun.nio.fs.UnixCopyFile.bufferedCopy0() Reviewed-by: alanb ! src/java.base/unix/native/libnio/fs/UnixCopyFile.c Changeset: 740169ce Author: Sergey Tsypanov Committer: Daniel Fuchs Date: 2022-06-23 17:52:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/740169ce1cacb60f8b294220fc389bb34ef75af3 8285521: Minor improvements in java.net.URI Reviewed-by: dfuchs ! src/java.base/share/classes/java/net/URI.java Changeset: c8cc94a3 Author: Daniel Jeli?ski Date: 2022-06-23 18:44:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c8cc94a38423c0cef597986fb51938a26dc20b51 8288979: Improve CLDRConverter run time Reviewed-by: naoto, rriggs ! make/jdk/src/classes/build/tools/cldrconverter/ResourceBundleGenerator.java Changeset: 64782a75 Author: Ioi Lam Date: 2022-06-24 04:29:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/64782a7524038380c0e8b61cc74102463e997850 8288623: Move Continuation classes out of javaClasses.hpp Reviewed-by: stefank, coleenp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/classfile/javaClasses.inline.hpp + src/hotspot/share/classfile/javaClassesImpl.hpp ! src/hotspot/share/code/dependencies.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.inline.hpp ! src/hotspot/share/gc/shared/memAllocator.cpp ! src/hotspot/share/gc/z/zCollectedHeap.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.inline.hpp ! src/hotspot/share/oops/stackChunkOop.inline.hpp ! src/hotspot/share/prims/jvmtiEnvBase.cpp ! src/hotspot/share/prims/jvmtiThreadState.cpp ! src/hotspot/share/prims/nativeEntryPoint.cpp ! src/hotspot/share/prims/stackwalk.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp + src/hotspot/share/runtime/continuationJavaClasses.cpp + src/hotspot/share/runtime/continuationJavaClasses.hpp + src/hotspot/share/runtime/continuationJavaClasses.inline.hpp ! src/hotspot/share/runtime/continuationWrapper.inline.hpp ! src/hotspot/share/runtime/javaThread.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/vframe.inline.hpp Changeset: 9dc9a64f Author: Johan Sj?l?n Committer: David Holmes Date: 2022-06-24 05:00:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9dc9a64fa453d8afc90871e9663a0ccc46212f64 8287281: adjust guarantee in Handshake::execute for the case of target thread being current Reviewed-by: rehn, pchilanomate, dholmes, dcubed ! src/hotspot/share/prims/jvmtiEnvThreadState.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/runtime/handshake.cpp Changeset: 17aacde5 Author: Christian Hagedorn Date: 2022-06-24 07:28:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/17aacde50fb971bc686825772e29f6bfecadabda 8288669: compiler/vectorapi/VectorFPtoIntCastTest.java still fails with "IRViolationException: There were one or multiple IR rule failures." Reviewed-by: thartmann, dcubed ! test/hotspot/jtreg/compiler/vectorapi/VectorFPtoIntCastTest.java Changeset: f0274e4c Author: duke Date: 2022-06-24 11:01:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f0274e4c868b0beaea54ce4f554cf1f2553476f1 Automatic merge of jdk:master into master Changeset: a5e7d0d5 Author: duke Date: 2022-06-24 11:01:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a5e7d0d5693135b6db4b82588925bcd8ac4ff3b0 Automatic merge of master into foreign-memaccess+abi From duke at openjdk.org Fri Jun 24 11:11:51 2022 From: duke at openjdk.org (duke) Date: Fri, 24 Jun 2022 11:11:51 GMT Subject: git: openjdk/panama-foreign: master: 80 new changesets Message-ID: Changeset: cc445926 Author: Claes Redestad Date: 2022-06-17 12:24:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/cc445926cfe41ee7803791fb223504b0d9fd8100 8287904: Reduce runtime of java.net microbenchmarks Reviewed-by: jvernee = test/micro/org/openjdk/bench/java/net/DatagramChannelSendReceive.java ! test/micro/org/openjdk/bench/java/net/DatagramSocketSendReceive.java - test/micro/org/openjdk/bench/java/net/DatagramSocketTest.java ! test/micro/org/openjdk/bench/java/net/NetworkInterfaceLookup.java - test/micro/org/openjdk/bench/java/net/SocketChannelCompare.java ! test/micro/org/openjdk/bench/java/net/SocketChannelConnectionSetup.java - test/micro/org/openjdk/bench/java/net/SocketChannelReadWrite.java ! test/micro/org/openjdk/bench/java/net/SocketReadWrite.java ! test/micro/org/openjdk/bench/java/net/SocketStreaming.java ! test/micro/org/openjdk/bench/java/net/ThreadLocalParseUtil.java ! test/micro/org/openjdk/bench/java/net/ThreadLocalURI.java ! test/micro/org/openjdk/bench/java/net/URLEncodeDecode.java ! test/micro/org/openjdk/bench/java/net/UnixSocketChannelReadWrite.java Changeset: ff3db520 Author: Maurizio Cimadamore Date: 2022-06-16 15:59:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ff3db52044f69754b1ccf54961f453d4afbfba3a 8288534: Out of bound errors for memory segment access mentions wrong values Reviewed-by: psandoz ! src/java.base/share/classes/java/lang/foreign/AbstractLayout.java ! src/java.base/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java ! test/jdk/java/foreign/TestSegments.java Changeset: c254c9d0 Author: Alexey Semenyuk Date: 2022-06-16 22:04:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c254c9d095d0473282ad74e66239a790912a3d76 8287401: jpackage tests failing on Windows due to powershell issue Reviewed-by: almatvee ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/LauncherIconVerifier.java Changeset: 53bf1bfd Author: Alan Bateman Date: 2022-06-17 05:57:28 +0000 URL: https://git.openjdk.org/panama-foreign/commit/53bf1bfdabb79b37afedd09051d057f9eea620f2 8286176: Add JNI_VERSION_19 to jni.h and JNI spec Reviewed-by: dcubed, iris, mchung, dholmes ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/runtime/thread.cpp ! src/java.base/share/native/include/jni.h ! src/jdk.management.agent/unix/native/libmanagement_agent/FileSystemImpl.c ! src/jdk.management.agent/windows/native/libmanagement_agent/FileSystemImpl.c ! test/hotspot/jtreg/native_sanity/JniVersion.java ! test/jdk/java/lang/ClassLoader/nativeLibrary/libnativeLibraryTest.c ! test/jdk/java/lang/StackWalker/libnativeMethod.c ! test/jdk/jdk/internal/loader/NativeLibraries/libnativeLibrariesTest.c ! test/micro/org/openjdk/bench/java/lang/foreign/libQSortJNI.c Changeset: af64d316 Author: Jesper Wilhelmsson Date: 2022-06-17 13:46:47 +0000 URL: https://git.openjdk.org/panama-foreign/commit/af64d316c0f687c4ceab7591e050449c64e3babc Merge Changeset: 47b86690 Author: Joe Darcy Date: 2022-06-17 16:57:38 +0000 URL: https://git.openjdk.org/panama-foreign/commit/47b86690b6672301aa46d4a7b9ced58d17047cc7 8288573: Make Executable.getParameterCount() actually abstract Reviewed-by: iris, alanb, jpai ! src/java.base/share/classes/java/lang/reflect/Executable.java Changeset: 7d4df6a8 Author: Erik ?sterlund Date: 2022-06-20 06:43:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7d4df6a83f6333e0e73686b807ee5d4b0ac10cd2 8284404: Too aggressive sweeping with Loom Reviewed-by: kvn, thartmann ! src/hotspot/share/compiler/compilerDefinitions.cpp Changeset: 02da5f99 Author: Roberto Casta?eda Lozano Date: 2022-06-20 07:27:11 +0000 URL: https://git.openjdk.org/panama-foreign/commit/02da5f9970ae02e0a67a8bae7cddefe9f3a17ce4 8263384: IGV: Outline should highlight the Graph that has focus Reviewed-by: xliu, chagedorn, thartmann ! src/utils/IdealGraphVisualizer/Coordinator/src/main/java/com/sun/hotspot/igv/coordinator/FolderNode.java ! src/utils/IdealGraphVisualizer/Coordinator/src/main/java/com/sun/hotspot/igv/coordinator/OutlineTopComponent.java Changeset: f62b2bd9 Author: Roberto Casta?eda Lozano Date: 2022-06-20 07:34:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f62b2bd9cda952b205ee03151cc58c95f588a742 8288480: IGV: toolbar action is not applied to the focused graph Reviewed-by: chagedorn, thartmann ! src/utils/IdealGraphVisualizer/View/src/main/java/com/sun/hotspot/igv/view/EditorTopComponent.java Changeset: 7acdcc10 Author: Andrey Turbanov Date: 2022-06-20 08:03:13 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7acdcc1034fb9529ee7b617889d38b0e557a20ec 8288329: Avoid redundant TreeMap.containsKey call in PolicyParser.read Reviewed-by: mullan ! src/java.base/share/classes/sun/security/provider/PolicyParser.java Changeset: 695d8656 Author: Andrey Turbanov Date: 2022-06-20 09:02:15 +0000 URL: https://git.openjdk.org/panama-foreign/commit/695d8656c5c6452b20d9d5a33ebb8f3d2f71c176 8284672: Collapse identical catch branches in java.desktop Reviewed-by: prr, aivanov, serb ! src/java.desktop/macosx/classes/com/apple/laf/AquaSpinnerUI.java ! src/java.desktop/macosx/classes/com/apple/laf/AquaTabbedPaneCopyFromBasicUI.java ! src/java.desktop/share/classes/com/sun/beans/decoder/DocumentHandler.java ! src/java.desktop/share/classes/com/sun/beans/finder/ClassFinder.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFImageMetadata.java ! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKPainter.java ! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/java.desktop/share/classes/com/sun/media/sound/AudioFileSoundbankReader.java ! src/java.desktop/share/classes/com/sun/media/sound/DLSSoundbankReader.java ! src/java.desktop/share/classes/com/sun/media/sound/DirectAudioDevice.java ! src/java.desktop/share/classes/com/sun/media/sound/JavaSoundAudioClip.java ! src/java.desktop/share/classes/com/sun/media/sound/SF2SoundbankReader.java ! src/java.desktop/share/classes/java/awt/AWTKeyStroke.java ! src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java ! src/java.desktop/share/classes/javax/swing/JEditorPane.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicPopupMenuUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicSpinnerUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java ! src/java.desktop/share/classes/javax/swing/plaf/basic/LazyActionMap.java ! src/java.desktop/share/classes/javax/swing/plaf/synth/SynthParser.java ! src/java.desktop/share/classes/javax/swing/text/CompositeView.java ! src/java.desktop/share/classes/javax/swing/text/InternationalFormatter.java ! src/java.desktop/share/classes/javax/swing/text/JTextComponent.java ! src/java.desktop/share/classes/javax/swing/text/html/FrameView.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java ! src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/java.desktop/share/classes/javax/swing/text/html/IsindexView.java ! src/java.desktop/share/classes/sun/awt/image/InputStreamImageSource.java ! src/java.desktop/share/classes/sun/awt/shell/ShellFolder.java ! src/java.desktop/share/classes/sun/font/TrueTypeFont.java ! src/java.desktop/share/classes/sun/font/Type1Font.java ! src/java.desktop/share/classes/sun/print/PSPrinterJob.java ! src/java.desktop/share/classes/sun/print/PSStreamPrintJob.java ! src/java.desktop/share/classes/sun/swing/text/TextComponentPrintable.java ! src/java.desktop/unix/classes/sun/awt/X11/MotifDnDDragSourceProtocol.java ! src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java ! src/java.desktop/unix/classes/sun/awt/X11/XTrayIconPeer.java ! src/java.desktop/unix/classes/sun/java2d/opengl/GLXVolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/java2d/x11/X11VolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/java2d/xr/XRVolatileSurfaceManager.java ! src/java.desktop/unix/classes/sun/print/UnixPrintJob.java ! src/java.desktop/windows/classes/sun/java2d/d3d/D3DVolatileSurfaceManager.java ! src/java.desktop/windows/classes/sun/java2d/opengl/WGLVolatileSurfaceManager.java ! src/java.desktop/windows/classes/sun/print/Win32PrintJob.java Changeset: d917e187 Author: Claes Redestad Date: 2022-06-20 10:20:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d917e1874e46ccc26a8fa4ac82d21f4b22484452 8288667: Reduce runtime of java.text microbenchmarks Reviewed-by: jvernee ! test/micro/org/openjdk/bench/java/text/DefFormatterBench.java Changeset: 68bff045 Author: Claes Redestad Date: 2022-06-20 10:21:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/68bff04515ecd482771196cfe51203db43a667b4 8288673: Reduce runtime of java.time microbenchmarks Reviewed-by: jvernee ! test/micro/org/openjdk/bench/java/time/GetYearBench.java ! test/micro/org/openjdk/bench/java/time/InstantBench.java ! test/micro/org/openjdk/bench/java/time/format/DateTimeFormatterBench.java Changeset: 46d5b682 Author: Erik Gahlin Date: 2022-06-20 11:48:27 +0000 URL: https://git.openjdk.org/panama-foreign/commit/46d5b682db028c51e6dd9a22473161de6a5a9f1a 8288685: JFR: Use static methods for Active Recording and Active Setting events Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/events/ActiveRecordingEvent.java ! src/jdk.jfr/share/classes/jdk/jfr/events/ActiveSettingEvent.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/EventControl.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java Changeset: 5cdb4b19 Author: Claes Redestad Date: 2022-06-20 11:56:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5cdb4b196047d4f2d69df0fc73102c102bf042f7 8288011: StringConcatFactory: Split application of stringifiers Reviewed-by: jvernee, mchung ! src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java Changeset: 406cf611 Author: tqxia Committer: Thomas Schatzl Date: 2022-06-20 12:58:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/406cf611d99e30052373aeab0f7bcbd0efd7177b 8287771: Remove useless G1 After GC summary refinement and sampling thread times Reviewed-by: tschatzl, kbarrett ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1RemSet.cpp ! src/hotspot/share/gc/g1/g1RemSet.hpp ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.hpp ! test/hotspot/jtreg/gc/g1/TestRemsetLoggingTools.java Changeset: a7df5a40 Author: Markus Gr?nlund Date: 2022-06-20 13:30:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a7df5a40639a4d3138616c9fc1b144381240d2e5 8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state Reviewed-by: jbachorik, egahlin ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.hpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformEventType.java Changeset: 302a6c06 Author: Emanuel Peter Date: 2022-06-20 14:29:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/302a6c068dcbb176381b1535baf25547079c9b06 8287801: Fix test-bugs related to stress flags Reviewed-by: chagedorn, thartmann ! test/hotspot/jtreg/compiler/arraycopy/TestArrayCopyNoInitDeopt.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestDriver.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestSSE2IntVect.java ! test/hotspot/jtreg/compiler/c2/cr7200264/TestSSE4IntVect.java ! test/hotspot/jtreg/compiler/c2/irTests/blackhole/BlackholeStoreStoreEATest.java ! test/hotspot/jtreg/compiler/cha/AbstractRootMethod.java ! test/hotspot/jtreg/compiler/cha/DefaultRootMethod.java ! test/hotspot/jtreg/compiler/intrinsics/klass/CastNullCheckDroppingsTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ReprofileTest.java ! test/hotspot/jtreg/compiler/profiling/TestTypeProfiling.java ! test/hotspot/jtreg/compiler/rangechecks/TestExplicitRangeChecks.java ! test/hotspot/jtreg/compiler/rangechecks/TestLongRangeCheck.java ! test/hotspot/jtreg/compiler/rangechecks/TestRangeCheckSmearing.java ! test/hotspot/jtreg/compiler/uncommontrap/Decompile.java ! test/hotspot/jtreg/compiler/uncommontrap/TestUnstableIfTrap.java Changeset: 983f75ca Author: Jonathan Gibbons Date: 2022-06-17 16:53:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/983f75caa614432d25724851c979321f85a16327 8288545: Missing space in error message Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java + test/langtools/jdk/javadoc/doclet/testLinkTaglet/TestLinkNotFound.java Changeset: 97544be5 Author: Erik Gahlin Date: 2022-06-17 19:40:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/97544be5b68860bad0431ec88737ad7cdc284862 8268398: 15% increase in JFR footprint in Noop-Base Reviewed-by: jbachorik ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVMUpcalls.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/MetadataRepository.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/instrument/JDKEvents.java Changeset: f12d0449 Author: Jonathan Gibbons Date: 2022-06-17 21:48:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f12d04492943bd9ff66ec754956fa17b53677794 8288692: jdk/javadoc/doclet/testTagMisuse/TestTagMisuse.java fails after JDK-8288545 Reviewed-by: prappo ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties ! test/langtools/jdk/javadoc/doclet/testTagMisuse/TestTagMisuse.java Changeset: ae030bcb Author: Xiaohong Gong Date: 2022-06-20 01:07:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ae030bcbc53fdfcfb748ae1e47e660f698b3fcb7 8288397: AArch64: Fix register issues in SVE backend match rules Reviewed-by: njian, ngasson ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 + test/hotspot/jtreg/compiler/vectorapi/VectorGatherScatterTest.java + test/hotspot/jtreg/compiler/vectorapi/VectorMaskedNotTest.java Changeset: ed714af8 Author: Christian Hagedorn Date: 2022-06-20 06:47:40 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ed714af854d79fb2b47849f6efdf0c26686b58b3 8288564: C2: LShiftLNode::Ideal produces wrong result after JDK-8278114 Reviewed-by: kvn, iveresov, thartmann ! src/hotspot/share/opto/mulnode.cpp ! test/hotspot/jtreg/compiler/c2/irTests/TestIRLShiftIdeal_XPlusX_LShiftC.java Changeset: 09da87cf Author: Martin Doerr Date: 2022-06-20 08:34:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/09da87cf5c2ed6de059425437e46517da9883e7e 8288485: jni/nullCaller/NullCallerTest.java failing (ppc64) Reviewed-by: alanb ! test/jdk/jni/nullCaller/CallHelper.hpp Changeset: 1cf83a40 Author: Erik Gahlin Date: 2022-06-20 12:23:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/1cf83a403f15067fb5a64cff68dc5706f533ebd7 8287800: JFR: Incorrect error message when starting recording with missing .jfc file Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/dcmd/DCmdStart.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/JFC.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/JFCParser.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/JFCModel.java + src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/JFCModelException.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/Parser.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlCondition.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlConfiguration.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlElement.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlExpression.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlNot.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/model/XmlTest.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/tool/Configure.java ! test/jdk/jdk/jfr/jcmd/JcmdAsserts.java Changeset: 0408f9c5 Author: Markus Gr?nlund Date: 2022-06-20 14:24:35 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0408f9c5436c96128bfe1264faf9fe3f9668f492 8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state Backport-of: a7df5a40639a4d3138616c9fc1b144381240d2e5 ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.hpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.hpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/JVM.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformEventType.java Changeset: 33d0363e Author: Erik Gahlin Date: 2022-06-20 16:20:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/33d0363e03358c15126b7f040732fb32cafef420 8288741: JFR: Change package name of snippet files Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/consumer/snippet-files/Snippets.java ! src/jdk.jfr/share/classes/jdk/jfr/snippet-files/Snippets.java Changeset: 453e8beb Author: Lance Andersen Date: 2022-06-20 17:32:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/453e8beb43d56656d358c56f9d505ceaeba53f72 8288527: broken link in java.base/java/util/zip/package-summary.html Reviewed-by: bpb, martin ! src/java.base/share/classes/java/util/zip/package-info.java Changeset: 7039c661 Author: Jesper Wilhelmsson Date: 2022-06-20 19:38:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7039c6616ad1b67320f08e7ea4763e8ff4977430 Merge ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java ! src/hotspot/cpu/aarch64/aarch64_sve.ad ! src/hotspot/cpu/aarch64/aarch64_sve_ad.m4 ! src/jdk.jfr/share/classes/jdk/jfr/internal/Utils.java Changeset: 7e211d7d Author: Rob McKenna Date: 2022-06-21 00:23:12 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7e211d7daac32dca8f26f408d1a3b2c7805b5a2e 8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run Reviewed-by: dfuchs, aefimov ! test/jdk/com/sun/jndi/ldap/LdapPoolTimeoutTest.java Changeset: ad891461 Author: Ioi Lam Date: 2022-06-21 05:20:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ad8914616bd63f628e5b6472f1f48315dacfbc94 8288601: Consolidate static/dynamic archive tables Reviewed-by: ccheung ! src/hotspot/share/cds/runTimeClassInfo.cpp ! src/hotspot/share/cds/runTimeClassInfo.hpp ! src/hotspot/share/classfile/systemDictionaryShared.cpp ! src/hotspot/share/classfile/systemDictionaryShared.hpp Changeset: 5e680d05 Author: Jaikiran Pai Date: 2022-06-21 07:12:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5e680d059445f1c2e702914a4033624ed7979509 8288724: Prevent NullPointerException in serviceability/tmtools/jstack/DaemonThreadTest.java if jstack process fails Reviewed-by: kevinw, sspitsyn ! test/hotspot/jtreg/serviceability/tmtools/jstack/DaemonThreadTest.java Changeset: 701ea3be Author: Thomas Stuefe Date: 2022-06-21 07:55:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/701ea3beaaef1acda2d2e041cfdb7d75549cf95c 8288556: VM crashes if it gets sent SIGUSR2 from outside Reviewed-by: dholmes, lucy ! src/hotspot/os/posix/signals_posix.cpp Changeset: 0f801fe6 Author: Andrey Turbanov Date: 2022-06-21 08:28:04 +0000 URL: https://git.openjdk.org/panama-foreign/commit/0f801fe6fd2fcc181121f9846f6869ca3a03e18a 8288628: Unnecessary Hashtable usage in ConditionalSpecialCasing Reviewed-by: naoto, jpai ! src/java.base/share/classes/java/lang/ConditionalSpecialCasing.java Changeset: 19017358 Author: Weijun Wang Date: 2022-06-21 14:33:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/19017358b1b3c63fdddc1eecb2fe52f7b7d4b6e3 8288209: SSL debug message wrong about unsupported authentication scheme Reviewed-by: djelinski, jnimeh ! src/java.base/share/classes/sun/security/ssl/CertificateMessage.java ! src/java.base/share/classes/sun/security/ssl/CertificateRequest.java ! src/java.base/share/classes/sun/security/ssl/SSLLogger.java ! src/java.base/share/classes/sun/security/ssl/SignatureScheme.java ! src/java.base/share/classes/sun/security/ssl/X509Authentication.java Changeset: 535fba8b Author: Brian Burkhalter Date: 2022-06-21 15:27:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/535fba8bfcd1bec6400b7be7d7c95e1310ac2b4b 8288687: (fc) Unix version ofFileChannelImpl.transferTo0() should should return IOS_UNSUPPORTED if not Linux, macOS, nor AIX Reviewed-by: alanb ! src/java.base/unix/native/libnio/ch/FileChannelImpl.c Changeset: f0804304 Author: Leonid Mesnik Date: 2022-06-21 18:38:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f0804304400f380661a8a06e4c1dad97068fae60 8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ... Reviewed-by: sspitsyn, kevinw ! test/jdk/com/sun/management/OperatingSystemMXBean/TestTotalSwap.java Changeset: 9f8bfab2 Author: Ioi Lam Date: 2022-06-21 20:54:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9f8bfab29009299e81f4929b5dbd399c21f34d7c 8288537: Move Devirtualizer out of hotspot/share/memory/iterator.hpp Reviewed-by: stefank, coleenp ! src/hotspot/share/gc/serial/defNewGeneration.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahMark.inline.hpp ! src/hotspot/share/memory/iterator.hpp ! src/hotspot/share/memory/iterator.inline.hpp ! src/hotspot/share/oops/instanceClassLoaderKlass.inline.hpp ! src/hotspot/share/oops/instanceKlass.inline.hpp ! src/hotspot/share/oops/instanceMirrorKlass.inline.hpp ! src/hotspot/share/oops/instanceRefKlass.inline.hpp ! src/hotspot/share/oops/instanceStackChunkKlass.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.inline.hpp ! src/hotspot/share/oops/objArrayKlass.inline.hpp ! src/hotspot/share/runtime/stackChunkFrameStream.inline.hpp + src/hotspot/share/utilities/devirtualizer.hpp + src/hotspot/share/utilities/devirtualizer.inline.hpp Changeset: b9c39662 Author: Hannes Walln?fer Date: 2022-06-21 05:56:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b9c396625cc3fcddb89f93255f85f73a931acc34 8288671: Problematic fix for font boosting Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Changeset: af051391 Author: Emanuel Peter Date: 2022-06-21 15:22:02 +0000 URL: https://git.openjdk.org/panama-foreign/commit/af05139133530871c88991aa0340205cfc44972a 8288467: remove memory_operand assert for spilled instructions Reviewed-by: thartmann, shade, jbhateja ! src/hotspot/share/opto/chaitin.cpp Changeset: c74a9235 Author: Hannes Walln?fer Date: 2022-06-21 16:02:22 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c74a9235fc4526d9954ba3cedd14bbb370217570 8288531: Empty spans in mobile navigation markup Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Navigation.java Changeset: e26d3b3c Author: Daniel D. Daugherty Date: 2022-06-21 16:08:09 +0000 URL: https://git.openjdk.org/panama-foreign/commit/e26d3b3c01a06f250344d0afdaa9fadd1fdae33b 8288497: add support for JavaThread::is_oop_safe() Reviewed-by: pchilanomate, dholmes, rehn, eosterlund ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/thread.inline.hpp ! src/hotspot/share/services/threadService.cpp Changeset: a1449886 Author: Daniel D. Daugherty Date: 2022-06-21 16:21:03 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a1449886004b2f0a70f1413bb19ce3ba5c914fdf 8288139: JavaThread touches oop after GC barrier is detached Reviewed-by: pchilanomate, dholmes, rehn, eosterlund ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/threadSMR.cpp ! src/hotspot/share/services/threadIdTable.cpp Changeset: 31d981e5 Author: Daniel D. Daugherty Date: 2022-06-21 16:36:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/31d981e5ea0fa4108da5ef94272794a8fed4a363 8288532: additional review changes for JDK-8286830 Reviewed-by: pchilanomate, dholmes ! src/hotspot/share/runtime/thread.inline.hpp ! test/hotspot/jtreg/runtime/Thread/StopAtExit.java ! test/hotspot/jtreg/runtime/Thread/SuspendAtExit.java Changeset: 97200a78 Author: Ron Pressler Committer: Serguei Spitsyn Date: 2022-06-21 16:48:33 +0000 URL: https://git.openjdk.org/panama-foreign/commit/97200a78b176ccc8781acb67db2af2f62572d46a 8278053: serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java failing in loom repo with Xcomp Reviewed-by: sspitsyn, pchilanomate, coleenp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 198cec9e Author: Ron Pressler Committer: Serguei Spitsyn Date: 2022-06-21 16:58:55 +0000 URL: https://git.openjdk.org/panama-foreign/commit/198cec9e1b7e8f77a619335dbc569c8def21670c 8286103: VThreadMonitorTest fails "assert(!current->cont_fastpath() || (current->cont_fastpath_thread_state() && !interpreted_native_or_deoptimized_on_stack(current))) failed" Reviewed-by: sspitsyn, pchilanomate ! src/hotspot/share/runtime/continuationFreezeThaw.cpp Changeset: 834d92dd Author: Aleksey Shipilev Date: 2022-06-21 18:13:36 +0000 URL: https://git.openjdk.org/panama-foreign/commit/834d92dd72257ab5d8c6759028098ac0867c5752 8288754: GCC 12 fails to build zReferenceProcessor.cpp Reviewed-by: kbarrett, ayang, stefank, tschatzl ! src/hotspot/share/gc/z/zReferenceProcessor.cpp Changeset: d7b43af5 Author: Maurizio Cimadamore Date: 2022-06-21 20:59:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d7b43af5914d88e5410f33db8b56f4dabdfec25d 8288761: SegmentAllocator:allocate(long bytesSize) not throwing IAEx when bytesSize < 0 Reviewed-by: psandoz ! src/java.base/share/classes/java/lang/foreign/MemorySegment.java ! src/java.base/share/classes/jdk/internal/foreign/AbstractMemorySegmentImpl.java ! src/java.base/share/classes/jdk/internal/foreign/ArenaAllocator.java ! src/java.base/share/classes/jdk/internal/foreign/Utils.java ! test/jdk/java/foreign/TestSegmentAllocators.java Changeset: 70008da6 Author: Alexander Matveev Date: 2022-06-21 21:12:21 +0000 URL: https://git.openjdk.org/panama-foreign/commit/70008da6b47c371c4d15162ca38e1521cd09acf9 8287971: Throw exception for missing values in .jpackage.xml Reviewed-by: asemenyuk ! src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacBaseInstallerBundler.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/AppImageFile.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/StandardBundlerParam.java ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_de.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_ja.properties ! src/jdk.jpackage/share/classes/jdk/jpackage/internal/resources/MainResources_zh_CN.properties ! test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JPackageCommand.java ! test/jdk/tools/jpackage/junit/jdk/jpackage/internal/AppImageFileTest.java ! test/jdk/tools/jpackage/share/AppImagePackageTest.java ! test/jdk/tools/jpackage/share/jdk/jpackage/tests/PredefinedAppImageErrorTest.java Changeset: 2bf5c9a6 Author: Jesper Wilhelmsson Date: 2022-06-21 22:26:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2bf5c9a6877b51377a535c6021a9e38549c89029 Merge ! src/hotspot/share/runtime/sharedRuntime.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt ! src/hotspot/share/runtime/sharedRuntime.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: affbd72a Author: Jaikiran Pai Date: 2022-06-22 05:51:24 +0000 URL: https://git.openjdk.org/panama-foreign/commit/affbd72aa3dce80e2ad54ff775c6f7469f38b05b 8288744: Remove tools/jlink/plugins/CompressorPluginTest.java from problemlist Reviewed-by: alanb ! test/jdk/ProblemList.txt Changeset: d51f4f47 Author: Matthias Baesken Date: 2022-06-22 10:36:16 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d51f4f471f3941294a987dcb68ee264fe27f018a 8287011: Improve container information Reviewed-by: sgehwolf, stuefe ! src/hotspot/os/linux/cgroupSubsystem_linux.hpp ! src/hotspot/os/linux/cgroupV1Subsystem_linux.cpp ! src/hotspot/os/linux/cgroupV1Subsystem_linux.hpp ! src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp ! src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp ! src/hotspot/os/linux/osContainer_linux.cpp ! src/hotspot/os/linux/osContainer_linux.hpp ! src/hotspot/os/linux/os_linux.cpp ! test/hotspot/jtreg/containers/docker/TestMisc.java Changeset: 270cf67e Author: Coleen Phillimore Date: 2022-06-22 12:49:25 +0000 URL: https://git.openjdk.org/panama-foreign/commit/270cf67e5ff19b082f710d52831f436dd144d883 8288752: Split thread implementation files Reviewed-by: dholmes, rehn, iklam ! src/hotspot/cpu/aarch64/gc/g1/g1BarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shared/barrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shared/barrierSetNMethod_aarch64.cpp ! src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp ! src/hotspot/cpu/aarch64/jniFastGetField_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/stubRoutines_aarch64.cpp ! src/hotspot/cpu/arm/gc/g1/g1BarrierSetAssembler_arm.cpp ! src/hotspot/cpu/arm/gc/shared/barrierSetAssembler_arm.cpp ! src/hotspot/cpu/arm/nativeInst_arm_32.hpp ! src/hotspot/cpu/ppc/gc/shenandoah/shenandoahBarrierSetAssembler_ppc.cpp ! src/hotspot/cpu/ppc/stubGenerator_ppc.cpp ! src/hotspot/cpu/riscv/gc/g1/g1BarrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/gc/shared/barrierSetNMethod_riscv.cpp ! src/hotspot/cpu/riscv/gc/shenandoah/shenandoahBarrierSetAssembler_riscv.cpp ! src/hotspot/cpu/riscv/interp_masm_riscv.cpp ! src/hotspot/cpu/riscv/macroAssembler_riscv.cpp ! src/hotspot/cpu/riscv/stubGenerator_riscv.cpp ! src/hotspot/cpu/riscv/stubRoutines_riscv.cpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.inline.hpp ! src/hotspot/cpu/s390/stubGenerator_s390.cpp ! src/hotspot/cpu/s390/stubRoutines_s390.cpp ! src/hotspot/cpu/x86/gc/shared/barrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shared/barrierSetNMethod_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/rdtsc_x86.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_32.cpp ! src/hotspot/cpu/x86/stubGenerator_x86_64.cpp ! src/hotspot/cpu/x86/stubRoutines_x86.cpp ! src/hotspot/cpu/x86/stubRoutines_x86_32.cpp ! src/hotspot/cpu/x86/stubRoutines_x86_64.cpp ! src/hotspot/cpu/zero/interpreterFrame_zero.hpp ! src/hotspot/cpu/zero/stack_zero.cpp ! src/hotspot/cpu/zero/stack_zero.inline.hpp ! src/hotspot/cpu/zero/stubGenerator_zero.cpp ! src/hotspot/cpu/zero/stubRoutines_zero.cpp ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/aix/porting_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/posix/signals_posix.cpp ! src/hotspot/os/posix/threadCritical_posix.cpp ! src/hotspot/os/posix/vmError_posix.cpp ! src/hotspot/os/windows/os_windows.cpp ! src/hotspot/os/windows/os_windows.inline.hpp ! src/hotspot/os/windows/threadCritical_windows.cpp ! src/hotspot/os/windows/vmError_windows.cpp = src/hotspot/os_cpu/aix_ppc/javaThread_aix_ppc.cpp = src/hotspot/os_cpu/aix_ppc/javaThread_aix_ppc.hpp ! src/hotspot/os_cpu/aix_ppc/os_aix_ppc.cpp = src/hotspot/os_cpu/bsd_aarch64/javaThread_bsd_aarch64.cpp = src/hotspot/os_cpu/bsd_aarch64/javaThread_bsd_aarch64.hpp ! src/hotspot/os_cpu/bsd_aarch64/os_bsd_aarch64.cpp = src/hotspot/os_cpu/bsd_x86/javaThread_bsd_x86.cpp = src/hotspot/os_cpu/bsd_x86/javaThread_bsd_x86.hpp ! src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp = src/hotspot/os_cpu/bsd_zero/javaThread_bsd_zero.cpp = src/hotspot/os_cpu/bsd_zero/javaThread_bsd_zero.hpp ! src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp = src/hotspot/os_cpu/linux_aarch64/javaThread_linux_aarch64.cpp = src/hotspot/os_cpu/linux_aarch64/javaThread_linux_aarch64.hpp ! src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp = src/hotspot/os_cpu/linux_arm/javaThread_linux_arm.cpp = src/hotspot/os_cpu/linux_arm/javaThread_linux_arm.hpp ! src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp = src/hotspot/os_cpu/linux_ppc/javaThread_linux_ppc.cpp = src/hotspot/os_cpu/linux_ppc/javaThread_linux_ppc.hpp ! src/hotspot/os_cpu/linux_ppc/os_linux_ppc.cpp = src/hotspot/os_cpu/linux_riscv/javaThread_linux_riscv.cpp = src/hotspot/os_cpu/linux_riscv/javaThread_linux_riscv.hpp ! src/hotspot/os_cpu/linux_riscv/os_linux_riscv.cpp = src/hotspot/os_cpu/linux_s390/javaThread_linux_s390.cpp = src/hotspot/os_cpu/linux_s390/javaThread_linux_s390.hpp ! src/hotspot/os_cpu/linux_s390/os_linux_s390.cpp = src/hotspot/os_cpu/linux_x86/javaThread_linux_x86.cpp = src/hotspot/os_cpu/linux_x86/javaThread_linux_x86.hpp ! src/hotspot/os_cpu/linux_x86/os_linux_x86.cpp = src/hotspot/os_cpu/linux_zero/javaThread_linux_zero.cpp = src/hotspot/os_cpu/linux_zero/javaThread_linux_zero.hpp ! src/hotspot/os_cpu/linux_zero/os_linux_zero.cpp = src/hotspot/os_cpu/windows_aarch64/javaThread_windows_aarch64.cpp + src/hotspot/os_cpu/windows_aarch64/javaThread_windows_aarch64.hpp ! src/hotspot/os_cpu/windows_aarch64/os_windows_aarch64.cpp - src/hotspot/os_cpu/windows_aarch64/thread_windows_aarch64.hpp = src/hotspot/os_cpu/windows_x86/javaThread_windows_x86.cpp = src/hotspot/os_cpu/windows_x86/javaThread_windows_x86.hpp ! src/hotspot/os_cpu/windows_x86/os_windows_x86.cpp ! src/hotspot/share/asm/assembler.cpp ! src/hotspot/share/cds/archiveBuilder.cpp ! src/hotspot/share/cds/cdsProtectionDomain.hpp ! src/hotspot/share/cds/classListWriter.hpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciEnv.hpp ! src/hotspot/share/ci/ciReplay.cpp ! src/hotspot/share/classfile/defaultMethods.cpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/metadataOnStackMark.cpp ! src/hotspot/share/classfile/placeholders.cpp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/code/debugInfo.cpp ! src/hotspot/share/code/debugInfo.hpp ! src/hotspot/share/code/dependencies.cpp ! src/hotspot/share/code/dependencyContext.cpp ! src/hotspot/share/code/icBuffer.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/compileTask.cpp ! src/hotspot/share/compiler/compilerEvent.cpp ! src/hotspot/share/compiler/compilerThread.cpp ! src/hotspot/share/compiler/compilerThread.hpp ! src/hotspot/share/gc/epsilon/epsilonBarrierSet.cpp ! src/hotspot/share/gc/epsilon/epsilonThreadLocalData.hpp ! src/hotspot/share/gc/g1/g1Allocator.cpp ! src/hotspot/share/gc/g1/g1BarrierSet.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp ! src/hotspot/share/gc/g1/g1ConcurrentRefineThread.cpp ! src/hotspot/share/gc/g1/g1DirtyCardQueue.cpp ! src/hotspot/share/gc/g1/g1HotCardCache.hpp ! src/hotspot/share/gc/g1/g1MonitoringSupport.cpp ! src/hotspot/share/gc/g1/g1RemSetSummary.cpp ! src/hotspot/share/gc/g1/g1RootProcessor.cpp ! src/hotspot/share/gc/g1/g1ThreadLocalData.hpp ! src/hotspot/share/gc/g1/g1YoungCollector.cpp ! src/hotspot/share/gc/g1/heapRegionManager.cpp ! src/hotspot/share/gc/g1/heapRegionRemSet.cpp ! src/hotspot/share/gc/parallel/mutableNUMASpace.cpp ! src/hotspot/share/gc/parallel/mutableSpace.cpp ! src/hotspot/share/gc/parallel/psOldGen.hpp ! src/hotspot/share/gc/parallel/psParallelCompact.cpp ! src/hotspot/share/gc/parallel/psScavenge.cpp ! src/hotspot/share/gc/serial/defNewGeneration.cpp ! src/hotspot/share/gc/serial/genMarkSweep.cpp ! src/hotspot/share/gc/shared/barrierSet.cpp ! src/hotspot/share/gc/shared/barrierSetNMethod.cpp ! src/hotspot/share/gc/shared/cardTableBarrierSet.cpp ! src/hotspot/share/gc/shared/collectedHeap.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shared/concurrentGCBreakpoints.cpp ! src/hotspot/share/gc/shared/concurrentGCThread.hpp ! src/hotspot/share/gc/shared/copyFailedInfo.hpp ! src/hotspot/share/gc/shared/gcId.cpp ! src/hotspot/share/gc/shared/gcLocker.cpp ! src/hotspot/share/gc/shared/gcLocker.inline.hpp ! src/hotspot/share/gc/shared/gcVMOperations.cpp ! src/hotspot/share/gc/shared/genCollectedHeap.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.cpp ! src/hotspot/share/gc/shared/memAllocator.cpp ! src/hotspot/share/gc/shared/memAllocator.hpp ! src/hotspot/share/gc/shared/oopStorage.cpp ! src/hotspot/share/gc/shared/satbMarkQueue.cpp ! src/hotspot/share/gc/shared/space.hpp ! src/hotspot/share/gc/shared/stringdedup/stringDedup.cpp ! src/hotspot/share/gc/shared/stringdedup/stringDedupStorageUse.cpp ! src/hotspot/share/gc/shared/strongRootsScope.cpp ! src/hotspot/share/gc/shared/suspendibleThreadSet.cpp ! src/hotspot/share/gc/shared/taskTerminator.cpp ! src/hotspot/share/gc/shared/taskqueue.cpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.cpp ! src/hotspot/share/gc/shared/threadLocalAllocBuffer.inline.hpp ! src/hotspot/share/gc/shared/workerThread.cpp ! src/hotspot/share/gc/shenandoah/shenandoahClosures.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahEvacOOMHandler.cpp ! src/hotspot/share/gc/shenandoah/shenandoahEvacOOMHandler.hpp ! src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahFullGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahLock.cpp ! src/hotspot/share/gc/shenandoah/shenandoahLock.hpp ! src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp ! src/hotspot/share/gc/shenandoah/shenandoahParallelCleaning.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahSATBMarkQueueSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTaskqueue.hpp ! src/hotspot/share/gc/shenandoah/shenandoahThreadLocalData.hpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkGroup.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.cpp ! src/hotspot/share/gc/z/zBarrierSet.cpp ! src/hotspot/share/gc/z/zBarrierSetAssembler.cpp ! src/hotspot/share/gc/z/zCPU.cpp ! src/hotspot/share/gc/z/zDriver.cpp ! src/hotspot/share/gc/z/zFuture.inline.hpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zLock.inline.hpp ! src/hotspot/share/gc/z/zMark.cpp ! src/hotspot/share/gc/z/zMark.inline.hpp ! src/hotspot/share/gc/z/zNMethodTable.cpp ! src/hotspot/share/gc/z/zThread.cpp ! src/hotspot/share/gc/z/zThreadLocalAllocBuffer.cpp ! src/hotspot/share/gc/z/zThreadLocalData.hpp ! src/hotspot/share/gc/z/zVerify.cpp ! src/hotspot/share/interpreter/abstractInterpreter.hpp ! src/hotspot/share/interpreter/bootstrapInfo.cpp ! src/hotspot/share/interpreter/interpreterRuntime.hpp ! src/hotspot/share/interpreter/linkResolver.cpp ! src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp ! src/hotspot/share/jfr/instrumentation/jfrJvmtiAgent.cpp ! src/hotspot/share/jfr/instrumentation/jfrResolution.cpp ! src/hotspot/share/jfr/jni/jfrJavaSupport.cpp ! src/hotspot/share/jfr/jni/jfrJniMethod.cpp ! src/hotspot/share/jfr/jni/jfrJniMethodRegistration.cpp ! src/hotspot/share/jfr/jni/jfrUpcalls.cpp ! src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.cpp ! src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleDescription.cpp ! src/hotspot/share/jfr/leakprofiler/leakProfiler.cpp ! src/hotspot/share/jfr/leakprofiler/sampling/objectSampler.cpp ! src/hotspot/share/jfr/periodic/jfrFinalizerStatisticsEvent.cpp ! src/hotspot/share/jfr/periodic/jfrPeriodic.cpp ! src/hotspot/share/jfr/periodic/jfrThreadCPULoadEvent.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrCallTrace.cpp ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/hotspot/share/jfr/recorder/checkpoint/jfrMetadataEvent.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrThreadState.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrType.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/jfrTypeManager.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdLoadBarrier.cpp ! src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdLoadBarrier.inline.hpp ! src/hotspot/share/jfr/recorder/repository/jfrEmergencyDump.cpp ! src/hotspot/share/jfr/recorder/repository/jfrRepository.cpp ! src/hotspot/share/jfr/recorder/service/jfrEvent.hpp ! src/hotspot/share/jfr/recorder/service/jfrOptionSet.cpp ! src/hotspot/share/jfr/recorder/service/jfrPostBox.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderService.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderThread.cpp ! src/hotspot/share/jfr/recorder/service/jfrRecorderThreadLoop.cpp ! src/hotspot/share/jfr/recorder/storage/jfrBuffer.cpp ! src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.hpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.inline.hpp ! src/hotspot/share/jfr/recorder/stringpool/jfrStringPool.cpp ! src/hotspot/share/jfr/support/jfrAllocationTracer.cpp ! src/hotspot/share/jfr/support/jfrFlush.cpp ! src/hotspot/share/jfr/support/jfrJdkJfrEvent.cpp ! src/hotspot/share/jfr/support/jfrStackTraceMark.cpp ! src/hotspot/share/jfr/support/jfrThreadLocal.cpp ! src/hotspot/share/jfr/utilities/jfrEpochQueue.inline.hpp ! src/hotspot/share/jfr/utilities/jfrJavaLog.cpp ! src/hotspot/share/jfr/utilities/jfrSpinlockHelper.hpp ! src/hotspot/share/jfr/utilities/jfrThreadIterator.cpp ! src/hotspot/share/jfr/utilities/jfrThreadIterator.hpp ! src/hotspot/share/jfr/writers/jfrJavaEventWriter.cpp ! src/hotspot/share/jvmci/jvmciEnv.hpp ! src/hotspot/share/libadt/dict.hpp ! src/hotspot/share/logging/logDecorations.cpp ! src/hotspot/share/logging/logMessageBuffer.cpp ! src/hotspot/share/memory/resourceArea.cpp ! src/hotspot/share/memory/resourceArea.hpp ! src/hotspot/share/memory/universe.cpp ! src/hotspot/share/oops/accessBackend.cpp ! src/hotspot/share/oops/constantPool.cpp ! src/hotspot/share/oops/constantPool.hpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/fieldStreams.inline.hpp ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/markWord.cpp ! src/hotspot/share/oops/oop.cpp ! src/hotspot/share/oops/oopsHierarchy.cpp ! src/hotspot/share/precompiled/precompiled.hpp ! src/hotspot/share/prims/forte.cpp ! src/hotspot/share/prims/jni.cpp ! src/hotspot/share/prims/jniCheck.cpp ! src/hotspot/share/prims/jniCheck.hpp ! src/hotspot/share/prims/jvm.cpp ! src/hotspot/share/prims/jvmtiDeferredUpdates.hpp ! src/hotspot/share/prims/jvmtiEnter.xsl ! src/hotspot/share/prims/jvmtiEnv.cpp ! src/hotspot/share/prims/jvmtiEnvBase.cpp ! src/hotspot/share/prims/jvmtiEnvBase.hpp ! src/hotspot/share/prims/jvmtiEnvThreadState.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/jvmtiExport.cpp ! src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp ! src/hotspot/share/prims/jvmtiImpl.cpp ! src/hotspot/share/prims/jvmtiRawMonitor.cpp ! src/hotspot/share/prims/jvmtiTagMap.cpp ! src/hotspot/share/prims/jvmtiThreadState.hpp ! src/hotspot/share/prims/jvmtiThreadState.inline.hpp ! src/hotspot/share/prims/jvmtiTrace.cpp ! src/hotspot/share/prims/jvmtiUtil.hpp ! src/hotspot/share/prims/stackwalk.cpp ! src/hotspot/share/prims/unsafe.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuationEntry.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp ! src/hotspot/share/runtime/continuationWrapper.cpp ! src/hotspot/share/runtime/continuationWrapper.inline.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/escapeBarrier.cpp ! src/hotspot/share/runtime/frame.cpp ! src/hotspot/share/runtime/handles.cpp ! src/hotspot/share/runtime/handles.inline.hpp ! src/hotspot/share/runtime/handshake.cpp ! src/hotspot/share/runtime/interfaceSupport.cpp ! src/hotspot/share/runtime/interfaceSupport.inline.hpp ! src/hotspot/share/runtime/java.cpp ! src/hotspot/share/runtime/javaCalls.cpp ! src/hotspot/share/runtime/javaCalls.hpp + src/hotspot/share/runtime/javaThread.cpp + src/hotspot/share/runtime/javaThread.hpp + src/hotspot/share/runtime/javaThread.inline.hpp ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/monitorDeflationThread.hpp ! src/hotspot/share/runtime/mutex.cpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/nonJavaThread.cpp ! src/hotspot/share/runtime/notificationThread.hpp ! src/hotspot/share/runtime/objectMonitor.cpp ! src/hotspot/share/runtime/orderAccess.cpp ! src/hotspot/share/runtime/os.cpp ! src/hotspot/share/runtime/park.cpp ! src/hotspot/share/runtime/reflection.cpp ! src/hotspot/share/runtime/safepoint.cpp ! src/hotspot/share/runtime/safepoint.hpp ! src/hotspot/share/runtime/safepointMechanism.cpp ! src/hotspot/share/runtime/safepointMechanism.inline.hpp ! src/hotspot/share/runtime/safepointVerifiers.hpp ! src/hotspot/share/runtime/semaphore.inline.hpp ! src/hotspot/share/runtime/serviceThread.hpp ! src/hotspot/share/runtime/stackOverflow.cpp ! src/hotspot/share/runtime/stackWatermark.cpp ! src/hotspot/share/runtime/stackWatermark.inline.hpp ! src/hotspot/share/runtime/stackWatermarkSet.cpp ! src/hotspot/share/runtime/sweeper.cpp ! src/hotspot/share/runtime/synchronizer.cpp ! src/hotspot/share/runtime/task.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/thread.inline.hpp ! src/hotspot/share/runtime/threadSMR.cpp ! src/hotspot/share/runtime/threadSMR.hpp ! src/hotspot/share/runtime/threadSMR.inline.hpp + src/hotspot/share/runtime/threads.cpp + src/hotspot/share/runtime/threads.hpp ! src/hotspot/share/runtime/unhandledOops.cpp ! src/hotspot/share/runtime/vframe.cpp ! src/hotspot/share/runtime/vframe.hpp ! src/hotspot/share/runtime/vframe.inline.hpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/runtime/vmThread.cpp ! src/hotspot/share/runtime/vmThread.hpp ! src/hotspot/share/services/diagnosticArgument.cpp ! src/hotspot/share/services/diagnosticArgument.hpp ! src/hotspot/share/services/finalizerService.cpp ! src/hotspot/share/services/heapDumper.cpp ! src/hotspot/share/services/heapDumperCompression.cpp ! src/hotspot/share/services/management.cpp ! src/hotspot/share/services/memBaseline.cpp ! src/hotspot/share/services/memoryManager.cpp ! src/hotspot/share/services/memoryPool.cpp ! src/hotspot/share/services/memoryService.cpp ! src/hotspot/share/services/threadIdTable.cpp ! src/hotspot/share/services/threadService.cpp ! src/hotspot/share/services/threadService.hpp ! src/hotspot/share/utilities/concurrentHashTable.inline.hpp ! src/hotspot/share/utilities/debug.cpp ! src/hotspot/share/utilities/events.cpp ! src/hotspot/share/utilities/events.hpp ! src/hotspot/share/utilities/exceptions.cpp ! src/hotspot/share/utilities/globalCounter.cpp ! src/hotspot/share/utilities/globalCounter.inline.hpp ! src/hotspot/share/utilities/growableArray.cpp ! src/hotspot/share/utilities/vmError.cpp ! src/hotspot/share/utilities/waitBarrier.hpp ! test/hotspot/gtest/code/test_dependencyContext.cpp ! test/hotspot/gtest/runtime/test_os.cpp ! test/hotspot/gtest/runtime/test_threads.cpp ! test/hotspot/gtest/utilities/test_metaspaceClosure.cpp Changeset: 50c37f53 Author: Jaikiran Pai Date: 2022-06-22 14:45:52 +0000 URL: https://git.openjdk.org/panama-foreign/commit/50c37f53f2ebd2fbbfd9dc5dd055658c55e4c69a 8276798: HttpURLConnection sends invalid HTTP request Reviewed-by: dfuchs, michaelm ! src/java.base/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Changeset: d4de4757 Author: Naoto Sato Date: 2022-06-22 15:47:07 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d4de4757471d9f21c2a059f91504ecbc4781566e 8287868: Localized names update in COMPAT locale provider Reviewed-by: iris, joehw ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_de.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_es.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_fr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_it.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_ja.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_ko.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_pt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sk_SK.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sr_Latn_BA.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sr_Latn_RS.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_sv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_zh_CN.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/CurrencyNames_zh_TW.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ar.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_be.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ca.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_cs.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_da.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_de.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_el.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_el_CY.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_MT.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_PH.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_en_SG.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_es.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_es_US.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_et.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_fi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_fr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ga.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_hi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_id.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_it.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ja.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ko.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_lt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_lv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_mk.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ms.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_mt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_nl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_no.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_no_NO_NY.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt_BR.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_pt_PT.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_ru.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sk.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sl.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sq.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sr.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sr_Latn.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_sv.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_th.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_vi.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh_SG.properties ! src/jdk.localedata/share/classes/sun/util/resources/ext/LocaleNames_zh_TW.properties ! test/jdk/java/util/Locale/LocaleEnhanceTest.java ! test/jdk/java/util/Locale/LocaleTest.java ! test/jdk/sun/text/resources/LocaleData ! test/jdk/sun/text/resources/LocaleDataTest.java ! test/jdk/sun/util/resources/Locale/Bug4429024.java ! test/jdk/sun/util/resources/Locale/Bug4965260.java Changeset: 82c77ca8 Author: Xin Liu Date: 2022-06-22 15:57:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/82c77ca807d62c25b9605c6c8164e42af6c3ce6e 8288926: make runtime/logging/DeoptStats.java more reliable Reviewed-by: simonis, phh ! test/hotspot/jtreg/runtime/logging/DeoptStats.java Changeset: 58b6937b Author: Erik Gahlin Date: 2022-06-22 19:37:51 +0000 URL: https://git.openjdk.org/panama-foreign/commit/58b6937b092c8ba5a5ff64865b40b4f5c4149908 8288982: JFR: Log event streaming actions Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/Dispatcher.java ! test/jdk/jdk/jfr/api/consumer/recordingstream/TestOnEvent.java Changeset: 3b1ec3e6 Author: Jonathan Gibbons Date: 2022-06-22 20:48:31 +0000 URL: https://git.openjdk.org/panama-foreign/commit/3b1ec3e660b9905f59373022b287de77196b407c 8288994: Incorrect @since tags for @value update in JDK-8286101 Reviewed-by: darcy, prappo ! src/jdk.compiler/share/classes/com/sun/source/doctree/ValueTree.java ! src/jdk.compiler/share/classes/com/sun/source/util/DocTreeFactory.java Changeset: 9e2d9ac5 Author: Joe Wang Date: 2022-06-22 04:49:17 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9e2d9ac59a19caa52fc661542d4257a7473636d7 8288529: broken link in java.xml Reviewed-by: iris, lancea, naoto ! src/java.xml/share/classes/javax/xml/validation/package-info.java Changeset: 7cf71bc2 Author: Alan Bateman Date: 2022-06-22 07:48:14 +0000 URL: https://git.openjdk.org/panama-foreign/commit/7cf71bc2d3ae3d84552f06358e70204dc65552fc 8287982: Concurrent implicit attach from native threads crashes VM Reviewed-by: dholmes, rehn ! make/test/JtregNativeJdk.gmk ! src/java.base/share/classes/java/lang/Thread.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/AttachTest.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/ExplicitAttach.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/ImplicitAttach.java + test/jdk/java/lang/Thread/jni/AttachCurrentThread/libExplicitAttach.c + test/jdk/java/lang/Thread/jni/AttachCurrentThread/libImplicitAttach.c Changeset: 8fa46c8f Author: Alan Bateman Date: 2022-06-22 07:48:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/8fa46c8f72201637e377190d94247e8d96646425 8288840: StructureViolationException should not link to fork method Reviewed-by: psandoz, mchung ! src/jdk.incubator.concurrent/share/classes/jdk/incubator/concurrent/StructureViolationException.java Changeset: 6037ccdd Author: Markus Gr?nlund Date: 2022-06-22 13:29:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6037ccdd50acd5424a46120028738b811dff064a 8288846: misc tests fail "assert(ms < 1000) failed: Un-interruptable sleep, short time use only" Reviewed-by: egahlin ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/jdk/jdk/jfr/event/sampling/TestNative.java Changeset: 6458ebc8 Author: Daniel D. Daugherty Date: 2022-06-22 16:20:20 +0000 URL: https://git.openjdk.org/panama-foreign/commit/6458ebc8e4cb11d99f7447e01f890ba36ad41664 8288988: ProblemList serviceability/jvmti/vthread/ContStackDepthTest/ContStackDepthTest.java in -Xcomp mode Reviewed-by: alanb, azvegint ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: 5b583e47 Author: Jesper Wilhelmsson Date: 2022-06-22 23:21:49 +0000 URL: https://git.openjdk.org/panama-foreign/commit/5b583e4792b1d59891495a4a050fcdd4d38dfee1 Merge ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! test/hotspot/jtreg/ProblemList-Xcomp.txt Changeset: bf0623b1 Author: Evgeny Astigeevich Committer: Andrew Haley Date: 2022-06-23 09:30:59 +0000 URL: https://git.openjdk.org/panama-foreign/commit/bf0623b11fd95f09fe953822af71d965bdab8d0f 8286314: Trampoline not created for far runtime targets outside small CodeCache Reviewed-by: aph, phh ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp Changeset: a802b981 Author: Thiago Henrique H?pner Committer: Alan Bateman Date: 2022-06-23 09:41:06 +0000 URL: https://git.openjdk.org/panama-foreign/commit/a802b9816ac5c0cb0fd236cc7f25ed4fdb1349ef 8287760: --do-not-resolve-by-default gets overwritten if --warn-if-resolved flags is used Reviewed-by: lancea, alanb, cstein ! src/jdk.jartool/share/classes/sun/tools/jar/GNUStyleOptions.java ! test/jdk/tools/jar/modularJar/Basic.java Changeset: 26c03c18 Author: Thomas Stuefe Date: 2022-06-23 10:15:05 +0000 URL: https://git.openjdk.org/panama-foreign/commit/26c03c1860c6da450b5cd6a46576c78bea682f96 8288719: [arm32] SafeFetch32 thumb interleaving causes random crashes 8284997: arm32 build crashes since JDK-8283326 Reviewed-by: snazarki, xliu, lucy ! src/hotspot/os_cpu/linux_arm/safefetch_linux_arm.S ! src/hotspot/share/runtime/safefetch.hpp Changeset: d579916a Author: Julian Waters Committer: Magnus Ihse Bursie Date: 2022-06-23 14:17:58 +0000 URL: https://git.openjdk.org/panama-foreign/commit/d579916a6b93577519b095e5fbf07377963dcec6 8288740: Change incorrect documentation for sjavac flag Reviewed-by: ihse ! doc/building.html ! doc/building.md Changeset: b8db0c38 Author: Brian Burkhalter Date: 2022-06-23 15:36:19 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b8db0c383b6ebd741f6981c89a0cafdfd9751315 6980847: (fs) Files.copy needs to be "tuned" Reviewed-by: alanb ! src/java.base/unix/classes/sun/nio/fs/UnixCopyFile.java ! src/java.base/unix/native/libnio/fs/UnixCopyFile.c ! src/java.base/windows/classes/sun/nio/fs/WindowsConstants.java ! src/java.base/windows/classes/sun/nio/fs/WindowsFileCopy.java Changeset: 72f286a9 Author: Brian Burkhalter Date: 2022-06-23 15:39:32 +0000 URL: https://git.openjdk.org/panama-foreign/commit/72f286a9baecd914b77e3436b999ae432025e992 8287580: (se) CancelledKeyException during channel registration Reviewed-by: alanb ! src/java.base/share/classes/sun/nio/ch/SelectorImpl.java + test/jdk/java/nio/channels/Selector/CancelDuringRegister.java Changeset: ef17ee4d Author: Brian Burkhalter Date: 2022-06-23 15:40:23 +0000 URL: https://git.openjdk.org/panama-foreign/commit/ef17ee4dea38c3bb953927bfdaabf1fe1b7e54ea 8288515: (ch) Unnecessary use of Math.addExact() in java.nio.channels.FileLock.overlaps() Reviewed-by: alanb ! src/java.base/share/classes/java/nio/channels/FileLock.java Changeset: 2728770e Author: Naoto Sato Date: 2022-06-23 15:49:43 +0000 URL: https://git.openjdk.org/panama-foreign/commit/2728770e3d73bb11c4d6e54b5aff91588a1a780b 8288589: Files.readString ignores encoding errors for UTF-16 Reviewed-by: rriggs, iris, alanb ! src/java.base/share/classes/java/lang/String.java - test/jdk/java/lang/String/NewStringNoRepl.java + test/jdk/java/lang/String/NoReplTest.java ! test/jdk/java/nio/file/Files/ReadWriteString.java Changeset: b206d2d1 Author: Coleen Phillimore Date: 2022-06-23 16:21:26 +0000 URL: https://git.openjdk.org/panama-foreign/commit/b206d2d14937bf8cfebb629888a09311275ac0db 8289006: Cleanup from thread.hpp split Reviewed-by: dholmes, dcubed ! src/hotspot/cpu/zero/stack_zero.cpp ! src/hotspot/share/runtime/interfaceSupport.inline.hpp Changeset: 13cbb3a4 Author: Brian Burkhalter Date: 2022-06-23 17:48:45 +0000 URL: https://git.openjdk.org/panama-foreign/commit/13cbb3a4169fdbf882da70beaa1b88faca2bc9c8 8289073: (fs) UnsatisfiedLinkError for sun.nio.fs.UnixCopyFile.bufferedCopy0() Reviewed-by: alanb ! src/java.base/unix/native/libnio/fs/UnixCopyFile.c Changeset: 740169ce Author: Sergey Tsypanov Committer: Daniel Fuchs Date: 2022-06-23 17:52:37 +0000 URL: https://git.openjdk.org/panama-foreign/commit/740169ce1cacb60f8b294220fc389bb34ef75af3 8285521: Minor improvements in java.net.URI Reviewed-by: dfuchs ! src/java.base/share/classes/java/net/URI.java Changeset: c8cc94a3 Author: Daniel Jeli?ski Date: 2022-06-23 18:44:54 +0000 URL: https://git.openjdk.org/panama-foreign/commit/c8cc94a38423c0cef597986fb51938a26dc20b51 8288979: Improve CLDRConverter run time Reviewed-by: naoto, rriggs ! make/jdk/src/classes/build/tools/cldrconverter/ResourceBundleGenerator.java Changeset: 64782a75 Author: Ioi Lam Date: 2022-06-24 04:29:48 +0000 URL: https://git.openjdk.org/panama-foreign/commit/64782a7524038380c0e8b61cc74102463e997850 8288623: Move Continuation classes out of javaClasses.hpp Reviewed-by: stefank, coleenp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/classfile/javaClasses.inline.hpp + src/hotspot/share/classfile/javaClassesImpl.hpp ! src/hotspot/share/code/dependencies.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.inline.hpp ! src/hotspot/share/gc/shared/memAllocator.cpp ! src/hotspot/share/gc/z/zCollectedHeap.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.cpp ! src/hotspot/share/oops/instanceStackChunkKlass.inline.hpp ! src/hotspot/share/oops/stackChunkOop.inline.hpp ! src/hotspot/share/prims/jvmtiEnvBase.cpp ! src/hotspot/share/prims/jvmtiThreadState.cpp ! src/hotspot/share/prims/nativeEntryPoint.cpp ! src/hotspot/share/prims/stackwalk.cpp ! src/hotspot/share/runtime/continuation.cpp ! src/hotspot/share/runtime/continuationFreezeThaw.cpp + src/hotspot/share/runtime/continuationJavaClasses.cpp + src/hotspot/share/runtime/continuationJavaClasses.hpp + src/hotspot/share/runtime/continuationJavaClasses.inline.hpp ! src/hotspot/share/runtime/continuationWrapper.inline.hpp ! src/hotspot/share/runtime/javaThread.cpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/vframe.inline.hpp Changeset: 9dc9a64f Author: Johan Sj?l?n Committer: David Holmes Date: 2022-06-24 05:00:53 +0000 URL: https://git.openjdk.org/panama-foreign/commit/9dc9a64fa453d8afc90871e9663a0ccc46212f64 8287281: adjust guarantee in Handshake::execute for the case of target thread being current Reviewed-by: rehn, pchilanomate, dholmes, dcubed ! src/hotspot/share/prims/jvmtiEnvThreadState.cpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/runtime/handshake.cpp Changeset: 17aacde5 Author: Christian Hagedorn Date: 2022-06-24 07:28:44 +0000 URL: https://git.openjdk.org/panama-foreign/commit/17aacde50fb971bc686825772e29f6bfecadabda 8288669: compiler/vectorapi/VectorFPtoIntCastTest.java still fails with "IRViolationException: There were one or multiple IR rule failures." Reviewed-by: thartmann, dcubed ! test/hotspot/jtreg/compiler/vectorapi/VectorFPtoIntCastTest.java Changeset: f0274e4c Author: duke Date: 2022-06-24 11:01:08 +0000 URL: https://git.openjdk.org/panama-foreign/commit/f0274e4c868b0beaea54ce4f554cf1f2553476f1 Automatic merge of jdk:master into master From jvernee at openjdk.org Mon Jun 27 15:20:08 2022 From: jvernee at openjdk.org (Jorn Vernee) Date: Mon, 27 Jun 2022 15:20:08 GMT Subject: [foreign-memaccess+abi] RFR: Canonicalize header ids in foreign API javadocs Message-ID: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> [JDK-8277420](https://urldefense.com/v3/__https://github.com/openjdk/jdk/pull/8817__;!!ACWV5N9M2RV99hQ!L3upR4bp5-13v6u_qe5QxOXtSrxNGNKlbaBHWVwnjLODexrrk1mgzgCjOWAutIXchkMP-mSW-mooP0cdTHnaLw$ ) added a button to copy a link to a section of javadoc to the clipboard. This cleanup PR canonicalizes all header ids in the java.lang.foreign package to the preferred (non-legacy) style, and adds ids in places where they are missing as well. ------------- Commit messages: - Canonicalize header ids in javadoc Changes: https://git.openjdk.org/panama-foreign/pull/689/files Webrev: https://webrevs.openjdk.org/?repo=panama-foreign&pr=689&range=00 Stats: 22 lines in 7 files changed: 0 ins; 1 del; 21 mod Patch: https://git.openjdk.org/panama-foreign/pull/689.diff Fetch: git fetch https://git.openjdk.org/panama-foreign pull/689/head:pull/689 PR: https://git.openjdk.org/panama-foreign/pull/689 From mcimadamore at openjdk.org Mon Jun 27 15:30:07 2022 From: mcimadamore at openjdk.org (Maurizio Cimadamore) Date: Mon, 27 Jun 2022 15:30:07 GMT Subject: [foreign-memaccess+abi] RFR: Canonicalize header ids in foreign API javadocs In-Reply-To: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> References: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> Message-ID: On Mon, 27 Jun 2022 15:13:35 GMT, Jorn Vernee wrote: > [JDK-8277420](https://urldefense.com/v3/__https://github.com/openjdk/jdk/pull/8817__;!!ACWV5N9M2RV99hQ!MOXFhgE3_YJQMtKmduLx3hwVDCHFjgWnNj27pvs9mny41UzMbwbqo6R6LVe1H2tmQ2yNRqW9Nmx-L8y6ajONwgqOrmc$ ) added a button to copy a link to a section of javadoc to the clipboard. > > This cleanup PR canonicalizes all header ids in the java.lang.foreign package to the preferred (non-legacy) style, and adds ids in places where they are missing as well. I'd prefer this to be done in the 19 repo - it's a doc change and can be integrated with no fuss. ------------- PR: https://git.openjdk.org/panama-foreign/pull/689 From jvernee at openjdk.org Mon Jun 27 16:46:29 2022 From: jvernee at openjdk.org (Jorn Vernee) Date: Mon, 27 Jun 2022 16:46:29 GMT Subject: [foreign-memaccess+abi] RFR: 8289223: Canonicalize header ids in foreign API javadocs In-Reply-To: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> References: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> Message-ID: On Mon, 27 Jun 2022 15:13:35 GMT, Jorn Vernee wrote: > [JDK-8277420](https://urldefense.com/v3/__https://github.com/openjdk/jdk/pull/8817__;!!ACWV5N9M2RV99hQ!KgIci_GQY-8GRHktEfEFTF89hDoJ9EbC-sXpn1Dlc-9HEZR4L657wTmwe6OHQbO1xHDIf0g6_IhcaPL3db-SCQ$ ) added a button to copy a link to a section of javadoc to the clipboard. > > This cleanup PR canonicalizes all header ids in the java.lang.foreign package to the preferred (non-legacy) style, and adds ids in places where they are missing as well. Opened a new PR here: https://urldefense.com/v3/__https://github.com/openjdk/jdk19/pull/75__;!!ACWV5N9M2RV99hQ!KgIci_GQY-8GRHktEfEFTF89hDoJ9EbC-sXpn1Dlc-9HEZR4L657wTmwe6OHQbO1xHDIf0g6_IhcaPJAa0JjbA$ ------------- PR: https://git.openjdk.org/panama-foreign/pull/689 From jvernee at openjdk.org Mon Jun 27 16:46:29 2022 From: jvernee at openjdk.org (Jorn Vernee) Date: Mon, 27 Jun 2022 16:46:29 GMT Subject: [foreign-memaccess+abi] Withdrawn: 8289223: Canonicalize header ids in foreign API javadocs In-Reply-To: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> References: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> Message-ID: On Mon, 27 Jun 2022 15:13:35 GMT, Jorn Vernee wrote: > [JDK-8277420](https://urldefense.com/v3/__https://github.com/openjdk/jdk/pull/8817__;!!ACWV5N9M2RV99hQ!PPdg8611Ot6ZTdZ69nH9IdsHFTpnhKiFK9imBvldOgsikimpdNd9ocIScFjZ6R6tXHcqloCXA71jF6Ytzhve-g$ ) added a button to copy a link to a section of javadoc to the clipboard. > > This cleanup PR canonicalizes all header ids in the java.lang.foreign package to the preferred (non-legacy) style, and adds ids in places where they are missing as well. This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.org/panama-foreign/pull/689 From rahul.kandu at intel.com Mon Jun 27 16:49:10 2022 From: rahul.kandu at intel.com (Kandu, Rahul) Date: Mon, 27 Jun 2022 16:49:10 +0000 Subject: FW: [foreign-memaccess+abi] Withdrawn: 8289223: Canonicalize header ids in foreign API javadocs In-Reply-To: References: <8Qk4t2p_F_En_OWe-zbLvfZ6UmsfLkx8H8s0FVijwU0=.52831035-bb62-4641-a46d-dab6f4ac2fe0@github.com> Message-ID: -----Original Message----- From: panama-dev On Behalf Of Jorn Vernee Sent: Monday, June 27, 2022 9:46 AM To: panama-dev at openjdk.org Subject: [foreign-memaccess+abi] Withdrawn: 8289223: Canonicalize header ids in foreign API javadocs On Mon, 27 Jun 2022 15:13:35 GMT, Jorn Vernee wrote: > [JDK-8277420](https://urldefense.com/v3/__https://github.com/openjdk/jdk/pull/8817__;!!ACWV5N9M2RV99hQ!PPdg8611Ot6ZTdZ69nH9IdsHFTpnhKiFK9imBvldOgsikimpdNd9ocIScFjZ6R6tXHcqloCXA71jF6Ytzhve-g$ ) added a button to copy a link to a section of javadoc to the clipboard. > > This cleanup PR canonicalizes all header ids in the java.lang.foreign package to the preferred (non-legacy) style, and adds ids in places where they are missing as well. This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.org/panama-foreign/pull/689 From jvernee at openjdk.org Tue Jun 28 10:47:43 2022 From: jvernee at openjdk.org (Jorn Vernee) Date: Tue, 28 Jun 2022 10:47:43 GMT Subject: [foreign-memaccess+abi] RFR: 8289285: Use records for binding classes Message-ID: This PR switches the Binding classes to use records. This results in a clean simplification of the code due to the no longer having the need to implement equals/hashcode/toString as well. When we have type patterns for switch, we will also be able to remove the tag, and just switch on the type. I also noticed that the UnboxAddress binding had 2 fields that were not being used. In practice this binding always operates on Addressable instances (both in the interpreter and specializer). So, I've cleaned up these 2 fields as well, and related factory method. ------------- Commit messages: - Clean up UnboxAddress - Use records for Binding classes Changes: https://git.openjdk.org/panama-foreign/pull/690/files Webrev: https://webrevs.openjdk.org/?repo=panama-foreign&pr=690&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8289285 Stats: 415 lines in 9 files changed: 15 ins; 280 del; 120 mod Patch: https://git.openjdk.org/panama-foreign/pull/690.diff Fetch: git fetch https://git.openjdk.org/panama-foreign pull/690/head:pull/690 PR: https://git.openjdk.org/panama-foreign/pull/690 From jvernee at openjdk.org Tue Jun 28 10:47:44 2022 From: jvernee at openjdk.org (Jorn Vernee) Date: Tue, 28 Jun 2022 10:47:44 GMT Subject: [foreign-memaccess+abi] RFR: 8289285: Use records for binding classes In-Reply-To: References: Message-ID: On Tue, 28 Jun 2022 10:42:39 GMT, Jorn Vernee wrote: > This PR switches the Binding classes to use records. This results in a clean simplification of the code due to the no longer having the need to implement equals/hashcode/toString as well. When we have type patterns for switch, we will also be able to remove the tag, and just switch on the type. > > I also noticed that the UnboxAddress binding had 2 fields that were not being used. In practice this binding always operates on Addressable instances (both in the interpreter and specializer). So, I've cleaned up these 2 fields as well, and related factory method. src/java.base/share/classes/jdk/internal/foreign/abi/SharedUtils.java line 374: > 372: > 373: static void checkType(Class actualType, Class expectedType) { > 374: if (!expectedType.isAssignableFrom(actualType)) { This change is needed to accommodate for the fact that UnboxAddress now accepts an Addressable, but a previous binding still outputs either a MemoryAddress or MemorySegment. ------------- PR: https://git.openjdk.org/panama-foreign/pull/690 From maurizio.cimadamore at oracle.com Wed Jun 29 16:19:53 2022 From: maurizio.cimadamore at oracle.com (Maurizio Cimadamore) Date: Wed, 29 Jun 2022 17:19:53 +0100 Subject: Obsoleting JavaCritical In-Reply-To: References: <1c3e7789-f764-289e-dd0b-2f4f1b250acd@oracle.com> <04248465-fee4-20ba-c2a5-217d7867c6f4@oracle.com> <20220607103108.900830823@eggemoggin.niobe.net> Message-ID: <4857ff3a-eef5-d7ef-9cff-ff89441710a0@oracle.com> Hi Wojciech, picking up this thread again. After some internal discussion, we realize that we don't know enough about your use case. While re-enabling JNI critical would obviously provide a quick fix, we're afraid that (a) developers might end up depending on JNI critical when they don't need to (perhaps also unaware of the consequences of depending on it) and (b) that there might actually be _better_ (as in: much faster) solutions than using critical native calls to address at least some of your use cases (that seemed to be the case with the clock_gettime example you mentioned). Could you please provide a rough list of the native calls you make where you believe critical JNI is having a real impact in the performance of your application? Also, could you please tell us whether any of these calls need to interact with Java arrays? In other words, do you use critical JNI to remove the cost associated with thread transitions, or are you also taking advantage of accessing on-heap memory _directly_ from native code? Regards Maurizio On 13/06/2022 21:38, Wojciech Kudla wrote: > Hi Mark, > > Thanks for your input and apologies for the delayed response. > > > If the platform included, say, an intrinsified System.nanoRealTime() > method that returned clock_gettime(CLOCK_REALTIME), how much would > that help developers in your unnamed industry? > > Exposing realtime clock with nanosecond granularity in the JDK would > be a great step forward. I should have made it clear that I represent > fintech corner (investment banking to be exact) but the issues my > message touches upon span areas such as HPC, audio processing, gaming, > and defense industry so it's not like we have an isolated case. > > > In a similar vein, if people are finding it necessary to ?replace parts > of NIO with hand-crafted native code? then it would be interesting to > understand what their requirements are > > As for the other example I provided with making very short lived > syscalls such as recvmsg/recvmmsg the premise is getting access to > hardware timestamps on the ingress and egress ends as well as enabling > batch receive with a single syscall and otherwise exploiting features > unavailable from the JDK (like access to CMSG interface, > scatter/gather, etc). > There are also other examples of calls that we'd love to make often > and at lowest possible cost (ie. getrusage) but I'm not sure if > there's a strong case for some of these ideas, that's why it might be > worth looking into more generic approach for performance sensitive code. > Hope this does better job at explaining where we're coming from than > my previous messages. > > Thanks, > W > > On Tue, Jun 7, 2022 at 6:31 PM wrote: > > 2022/6/6 0:24:17 -0700, wkudla.kernel at gmail.com: > >> Yes for System.nanoTime(), but System.currentTimeMillis() reports > >> CLOCK_REALTIME. > > > > Unfortunately System.currentTimeMillis() offers only millisecond > > granularity which is the reason why our industry has to resort to > > clock_gettime. > > If the platform included, say, an intrinsified System.nanoRealTime() > method that returned clock_gettime(CLOCK_REALTIME), how much would > that help developers in your unnamed industry? > > In a similar vein, if people are finding it necessary to ?replace > parts > of NIO with hand-crafted native code? then it would be interesting to > understand what their requirements are.? Some simple enhancements to > the NIO API would be much less costly to design and implement than a > generalized user-level native-call intrinsification mechanism. > > - Mark > -------------- next part -------------- An HTML attachment was scrubbed... URL: