Re: RFR: 8327964: Simplify BigInteger.implMultiplyToLen intrinsic [v6]

2024-05-22 Thread Martin Doerr
On Wed, 22 May 2024 14:47:43 GMT, Yudi Zheng wrote: >> Moving array construction within BigInteger.implMultiplyToLen intrinsic >> candidate to its caller simplifies the intrinsic implementation in JIT >> compiler. > > Yudi Zheng has updated the pull request incrementally with one additional >

Re: RFR: 8332589: ubsan: unix/native/libjava/ProcessImpl_md.c:562:5: runtime error: null pointer passed as argument 2, which is declared to never be null [v3]

2024-05-24 Thread Martin Doerr
On Fri, 24 May 2024 07:24:13 GMT, Matthias Baesken wrote: >> When building with ubsan enabled (--enable-uban) on Linux x86_64 and doing >> jtreg tests afterwards I run into this error : >> >> /jdk/src/java.base/unix/native/libjava/ProcessImpl_md.c:562:5: runtime >> error: null pointer passed a

RFR: 8332228: TypePollution.java: Unrecognized VM option 'UseSecondarySuperCache'

2024-05-28 Thread Martin Doerr
Fix obvious typo in micro benchmark. - Commit messages: - 8332228: TypePollution.java: Unrecognized VM option 'UseSecondarySuperCache' Changes: https://git.openjdk.org/jdk/pull/19427/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19427&range=00 Issue: https://bugs.openjd

Re: RFR: 8332228: TypePollution.java: Unrecognized VM option 'UseSecondarySuperCache'

2024-05-28 Thread Martin Doerr
On Tue, 28 May 2024 14:01:44 GMT, Martin Doerr wrote: > Fix obvious typo in micro benchmark. Thanks for the review! - PR Comment: https://git.openjdk.org/jdk/pull/19427#issuecomment-2135446758

Re: RFR: 8332228: TypePollution.java: Unrecognized VM option 'UseSecondarySuperCache'

2024-05-28 Thread Martin Doerr
On Tue, 28 May 2024 14:01:44 GMT, Martin Doerr wrote: > Fix obvious typo in micro benchmark. Thanks! - PR Comment: https://git.openjdk.org/jdk/pull/19427#issuecomment-2136008570

Integrated: 8332228: TypePollution.java: Unrecognized VM option 'UseSecondarySuperCache'

2024-05-28 Thread Martin Doerr
On Tue, 28 May 2024 14:01:44 GMT, Martin Doerr wrote: > Fix obvious typo in micro benchmark. This pull request has now been integrated. Changeset: 9ac8d05a Author: Martin Doerr URL: https://git.openjdk.org/jdk/commit/9ac8d05a2567fbf65b944660739e5f8ad1fc2020 Stats: 8 lines i

Re: [jdk23] RFR: 8222884: ConcurrentClassDescLookup.java times out intermittently

2024-06-24 Thread Martin Doerr
On Mon, 24 Jun 2024 09:40:14 GMT, Christoph Langer wrote: > Hi all, > > This pull request contains a backport of > [JDK-8222884](https://bugs.openjdk.org/browse/JDK-8222884), commit > [bd046d9b](https://github.com/openjdk/jdk/commit/bd046d9b9e79e4eea89c72af358961ef6e98e660) > from the [openjd

Re: RFR: 8334872: BigEndian: java/lang/invoke/condy Tests failing since JDK-8294960 [v3]

2024-06-25 Thread Martin Doerr
On Tue, 25 Jun 2024 13:47:39 GMT, Adam Sotona wrote: >> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code >> generation and unfortunately it causes StackOverflow on BigEndian platforms. >> >> This patch converts all lambdas in ClassSpecializer into anonymous inner >>

Re: RFR: 8334872: BigEndian: java/lang/invoke/condy Tests failing since JDK-8294960 [v3]

2024-06-26 Thread Martin Doerr
On Tue, 25 Jun 2024 13:47:39 GMT, Adam Sotona wrote: >> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code >> generation and unfortunately it causes StackOverflow on BigEndian platforms. >> >> This patch converts all lambdas in ClassSpecializer into anonymous inner >>

Re: RFR: 8339166: java/lang/String/concat/HiddenClassUnloading.java fails on AIX and Linux ppc64le after JDK-8336856

2024-08-30 Thread Martin Doerr
On Thu, 29 Aug 2024 13:55:25 GMT, Matthias Baesken wrote: > We see HiddenClassUnloading.java failing on the ppc64 based platforms. On AIX > it seems to fail always; Linux ppc64le sometimes. > Failure output : > java.lang.RuntimeException: unloadedClassCount is zero > at HiddenClassUnloading.main

Re: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2]

2024-09-02 Thread Martin Doerr
On Mon, 2 Sep 2024 13:25:51 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or >> functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c

Re: RFR: 8339364: AIX build fails: various unused variable and function warnings [v3]

2024-09-03 Thread Martin Doerr
On Tue, 3 Sep 2024 07:26:53 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or >> functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c

Re: RFR: 8337753: Target class of upcall stub may be unloaded

2024-09-03 Thread Martin Doerr
On Tue, 6 Aug 2024 17:26:55 GMT, Jorn Vernee wrote: > As discussed in the JBS issue: > > FFM upcall stubs embed a `Method*` of the target method in the stub. This > `Method*` is read from the `LambdaForm::vmentry` field associated with the > target method handle at the time when the upcall stu

Re: RFR: 8337753: Target class of upcall stub may be unloaded

2024-09-03 Thread Martin Doerr
On Fri, 9 Aug 2024 12:44:45 GMT, Jorn Vernee wrote: > I think that's a good compromise. (Although I wish the C++ code was just as > fast, as it's much nicer) Agreed. > I'm not sure what other decorator would apply. I think `ON_STRONG_OOP_REF` and `IS_NOT_NULL` could also be used. But, I guess

Re: RFR: 8337753: Target class of upcall stub may be unloaded

2024-09-03 Thread Martin Doerr
On Tue, 6 Aug 2024 17:26:55 GMT, Jorn Vernee wrote: > As discussed in the JBS issue: > > FFM upcall stubs embed a `Method*` of the target method in the stub. This > `Method*` is read from the `LambdaForm::vmentry` field associated with the > target method handle at the time when the upcall stu

Re: RFR: JDK-8295325: tools/jlink/plugins/SaveJlinkArgfilesPluginTest.java fails on Linux ppc64le

2022-10-14 Thread Martin Doerr
On Fri, 14 Oct 2022 11:16:50 GMT, Matthias Baesken wrote: > The test tools/jlink/plugins/SaveJlinkArgfilesPluginTest.java fails on Linux > ppc64le because it assumes that vm.jvmci is > available on all platforms but this is currently not the case on Linux > ppc64le. > Error is : > > Error: Mod

Re: RFR: JDK-8299388: java/util/regex/NegativeArraySize.java fails on Alpine and sometimes Windows

2022-12-29 Thread Martin Doerr
On Wed, 28 Dec 2022 12:19:16 GMT, Matthias Baesken wrote: > The test java/util/regex/NegativeArraySize.java seems to have high memory > requirements, and these requirements lead to some errors. > On Alpine Linux we run regularly into this error when executing the test: > result: Failed. Unexpect

Re: RFR: 8302158: PPC: test/jdk/jdk/internal/vm/Continuation/Fuzz.java: AssertionError: res: false shouldPin: false

2023-02-15 Thread Martin Doerr
On Tue, 14 Feb 2023 14:10:08 GMT, Richard Reingruber wrote: > This fixes the linked issue by trimming the caller of a frame to be > deoptimized back to its `unextended_sp` iff it is compiled. The creation of > the section `dead after deoptimization` shown in the attachment > [yield_after_deopt

Re: RFR: 8302158: PPC: test/jdk/jdk/internal/vm/Continuation/Fuzz.java: AssertionError: res: false shouldPin: false [v2]

2023-02-15 Thread Martin Doerr
On Wed, 15 Feb 2023 20:30:00 GMT, Richard Reingruber wrote: >> This fixes the linked issue by trimming the caller of a frame to be >> deoptimized back to its `unextended_sp` iff it is compiled. The creation of >> the section `dead after deoptimization` shown in the attachment >> [yield_after_d

RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview)

2023-02-21 Thread Martin Doerr
Description will get added soon. - Commit messages: - Initial Panama implementation. Changes: https://git.openjdk.org/jdk/pull/12708/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12708&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8303040 Stats: 1973 lines in 58

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v2]

2023-02-22 Thread Martin Doerr
ning TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if this makes sense or if there's > a better fix (possibly as separate RFE). Martin Doerr

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v2]

2023-02-22 Thread Martin Doerr
On Wed, 22 Feb 2023 18:31:45 GMT, Maurizio Cimadamore wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Clean fix for NativeMemorySegmentImpl issue with byteSize 0. > > src/java.base/s

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v2]

2023-02-22 Thread Martin Doerr
On Wed, 22 Feb 2023 18:23:54 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Clean fix for NativeMemorySegmentImpl issue with byteSize 0. > > src/java.base/shar

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v2]

2023-02-22 Thread Martin Doerr
On Thu, 23 Feb 2023 04:37:49 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview)

2023-02-22 Thread Martin Doerr
On Wed, 22 Feb 2023 17:03:16 GMT, Jorn Vernee wrote: > I will do a more thorough review soon. Thanks a lot! > > The ABI has some tricky corner cases related to HFA (Homogeneous Float > > Aggregate). The same argument may need to get passed in both, a FP reg and > > a GP reg or stack slot (see

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-22 Thread Martin Doerr
ning TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if this makes sense or if there's > a better fix (possibly as separate RFE). Martin Doerr h

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-22 Thread Martin Doerr
On Thu, 23 Feb 2023 06:18:49 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-22 Thread Martin Doerr
On Thu, 23 Feb 2023 06:18:49 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-23 Thread Martin Doerr
On Thu, 23 Feb 2023 06:18:49 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-24 Thread Martin Doerr
On Fri, 24 Feb 2023 07:39:15 GMT, Robbin Ehn wrote: > > ~I don't think we've done that much testing with UseSystemMemoryBarrier > > since it was added~. I'm a bit nervous about turning it on by default since > > it's currently also used for JNI. Let's see what Robbin thinks. > > For reliabilit

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-25 Thread Martin Doerr
On Fri, 24 Feb 2023 10:42:06 GMT, Robbin Ehn wrote: > > > > ~I don't think we've done that much testing with UseSystemMemoryBarrier > > > > since it was added~. I'm a bit nervous about turning it on by default > > > > since it's currently also used for JNI. Let's see what Robbin thinks. > > >

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-27 Thread Martin Doerr
On Mon, 27 Feb 2023 08:49:18 GMT, Erik Österlund wrote: > I don’t think we want this to be on by default on platforms where StoreLoad > fences don't cause substantial global overheads. The benefit on such > platforms is rather low, and needing the last couple of nanoseconds of > transition spe

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v4]

2023-02-28 Thread Martin Doerr
ning TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if this makes sense or if there's > a better fix (possibly as separate RFE). Martin Do

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v5]

2023-02-28 Thread Martin Doerr
ning TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if this makes sense or if there's > a better fix (possibly as separate RFE). Martin Doerr has upda

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-28 Thread Martin Doerr
On Tue, 28 Feb 2023 16:54:50 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Remove size restriction for structs. Add TODO for Big Endian. > > src/hotspot/cpu/ppc/d

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v5]

2023-02-28 Thread Martin Doerr
On Wed, 22 Feb 2023 20:25:07 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Minor cleanup. > > src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/CallArra

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-28 Thread Martin Doerr
On Tue, 28 Feb 2023 19:45:28 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Remove size restriction for structs. Add TODO for Big Endian. > > src/hotspot/cpu/ppc/d

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-28 Thread Martin Doerr
On Tue, 28 Feb 2023 20:00:15 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Remove size restriction for structs. Add TODO for Big Endian. > > src/hotspot/cpu/ppc

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-02-28 Thread Martin Doerr
On Fri, 24 Feb 2023 07:17:30 GMT, Jorn Vernee wrote: >> Some more remarks about other issues: >> - Uploaded my simple reproducer to >> [JDK-8303017](https://bugs.openjdk.org/browse/JDK-8303017) >> - Using oversized load / stores is problematic. Don't forget that OpenJDK >> still supports Big En

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-01 Thread Martin Doerr
On Tue, 28 Feb 2023 20:51:50 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Remove size restriction for structs. Add TODO for Big Endian. > > src/java.base/share/cl

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v6]

2023-03-01 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v7]

2023-03-02 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v8]

2023-03-02 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v9]

2023-03-03 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-03 Thread Martin Doerr
On Wed, 1 Mar 2023 06:26:20 GMT, Martin Doerr wrote: >> src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/CallArranger.java >> line 293: >> >>> 291: } else { >>> 292: overlappingReg = new >>> V

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v10]

2023-03-07 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v11]

2023-03-08 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v12]

2023-03-09 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v13]

2023-03-09 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-09 Thread Martin Doerr
On Wed, 1 Mar 2023 06:27:19 GMT, Martin Doerr wrote: >> src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/CallArranger.java >> line 68: >> >>> 66: public abstract class CallArranger { >>> 67: // Linux PPC64 Little Endian uses ABI v2. >

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v14]

2023-03-09 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-09 Thread Martin Doerr
On Mon, 6 Mar 2023 16:38:37 GMT, Jorn Vernee wrote: >> @JornVernee: Thanks a lot for your detailed review! I have quite a few TODOs >> which include: >> - Include my tests for the HFA corner cases. >> - Try to improve handling of the overlapping registers as you suggested. >> - Check nesting of

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-13 Thread Martin Doerr
On Sat, 11 Mar 2023 02:20:31 GMT, Jorn Vernee wrote: >> @JornVernee: Thanks! I've merged in your changes. TestArrayStructs is not >> yet completely working. I will need to investigate. I think I've done most >> other things you had requested. You may want to take a look at my recent >> commits

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v3]

2023-03-13 Thread Martin Doerr
On Mon, 13 Mar 2023 16:37:18 GMT, Jorn Vernee wrote: > > I'm currently wondering about the TestArrayStructs failures. Passing arrays > > with up to 7 elements seems to work fine. When I pass 8 elements, the last > > element of capturedArgs gets observed as 0. When I pass more than 8 > > elemen

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v15]

2023-03-14 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v14]

2023-03-14 Thread Martin Doerr
On Mon, 13 Mar 2023 14:31:19 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Introduce ABIv2CallArranger for linux ppc64le. > > test/jdk/java/foreign/

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
On Tue, 14 Mar 2023 22:30:22 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
On Tue, 14 Mar 2023 22:30:22 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v17]

2023-03-15 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-16 Thread Martin Doerr
On Tue, 14 Mar 2023 22:52:44 GMT, Martin Doerr wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix storing 32 bit integers into Java frames. Enable TestArrayStructs. > > Btw. the new

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v18]

2023-03-16 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v19]

2023-03-16 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v20]

2023-03-16 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v21]

2023-03-16 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v20]

2023-03-16 Thread Martin Doerr
On Thu, 16 Mar 2023 14:17:12 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v9]

2023-04-11 Thread Martin Doerr
On Sat, 8 Apr 2023 18:00:53 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X8

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v9]

2023-04-11 Thread Martin Doerr
On Tue, 11 Apr 2023 10:26:02 GMT, ExE Boss wrote: >> test/jdk/jdk/internal/util/ArchTest.java line 128: >> >>> 126: case RISCV64 -> true; >>> 127: case S390 -> false; >>> 128: case PPC64 -> true; >> >> This is not always true. The PPC64 architecture supports

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v10]

2023-04-11 Thread Martin Doerr
On Tue, 11 Apr 2023 17:58:54 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v10]

2023-04-11 Thread Martin Doerr
On Tue, 11 Apr 2023 17:58:54 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v11]

2023-04-11 Thread Martin Doerr
On Tue, 11 Apr 2023 18:35:56 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v12]

2023-04-12 Thread Martin Doerr
On Tue, 11 Apr 2023 21:09:43 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v13]

2023-04-12 Thread Martin Doerr
On Wed, 12 Apr 2023 17:31:49 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-04-18 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if

Re: RFR: 8306008: Several Vector API tests fail for client VM after JDK-8304450

2023-04-18 Thread Martin Doerr
On Tue, 18 Apr 2023 12:21:11 GMT, Quan Anh Mai wrote: > Hi, > > Please review this patch which fixes the errors on machines where > TypeMaxVector has a length of 64 bits. I take an extra cautious approach and > fall back to putting elements one by one if the length is an unexpected value. > >

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v15]

2023-04-19 Thread Martin Doerr
On Mon, 17 Apr 2023 20:59:06 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v17]

2023-04-24 Thread Martin Doerr
On Fri, 21 Apr 2023 20:26:12 GMT, Roger Riggs wrote: >> Define an internal jdk.internal.util.Architecture enumeration and static >> methods to replace uses of the system property `os.arch`. >> The enumeration values are defined to match those used in the build. >> The initial values are: `X64, X

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v23]

2023-04-27 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v24]

2023-04-27 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v24]

2023-04-27 Thread Martin Doerr
On Thu, 27 Apr 2023 12:54:55 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v25]

2023-05-02 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v26]

2023-05-02 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please check if

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v25]

2023-05-02 Thread Martin Doerr
On Tue, 2 May 2023 14:01:57 GMT, Jorn Vernee wrote: > On another note, how are you coming along with finding another reviewer? I > (still) think it would be good to get someone that is familiar with PPC > (particularly the ABI) as a second reviewer. Second Review is in progress. I have merged

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v26]

2023-05-02 Thread Martin Doerr
On Tue, 2 May 2023 14:24:39 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v27]

2023-05-05 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v28]

2023-05-06 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v29]

2023-05-10 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v21]

2023-05-10 Thread Martin Doerr
On Mon, 27 Mar 2023 16:54:31 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Move ABIv2CallArranger out of linux subdirectory. ABIv1/2 does match the >>

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-05-10 Thread Martin Doerr
On Wed, 26 Apr 2023 14:32:59 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 24 commits: >> >> - Adaptation for JDK-8305668 >> - Merge remote

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-05-10 Thread Martin Doerr
On Wed, 26 Apr 2023 14:41:51 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 24 commits: >> >> - Adaptation for JDK-8305668 >> - Merge remote

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v24]

2023-05-10 Thread Martin Doerr
On Thu, 27 Apr 2023 16:19:46 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Revert unintended formatting changes. Fix comment. > > src/hotspot/cpu/ppc

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v24]

2023-05-10 Thread Martin Doerr
On Fri, 28 Apr 2023 13:18:27 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Revert unintended formatting changes. Fix comment. > > src/hotspot/cpu/ppc

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v28]

2023-05-10 Thread Martin Doerr
On Tue, 9 May 2023 15:48:52 GMT, Richard Reingruber wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> libTestHFA: Add explicit type conversion to avoid build warning. > > src/hotspot/

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-05-10 Thread Martin Doerr
On Wed, 10 May 2023 13:22:48 GMT, Richard Reingruber wrote: >>> It does the same but with a more complicated API. >> >> AFAIK It depends on the GC that's being used. `access_load_at` will make >> sure the right GC barriers are inserted (mostly for concurrent GCs). > > As I see it, the access AP

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-05-10 Thread Martin Doerr
On Wed, 10 May 2023 13:33:02 GMT, Richard Reingruber wrote: >> GC barriers are used when loading or storing an oop. No GC we currently have >> (not even the generational ones) use barriers for loading a plain address >> from an oop. The PPC64 implementation of the BarrierSetAssembler currently

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v30]

2023-05-10 Thread Martin Doerr
t; 2. It happens that a `NativeMemorySegmentImpl` is used as a raw pointer (with > byteSize() == 0) while running TestUpcallScope. Hence, existing size checks > don't work (see MemorySegment.java). As a workaround, I'm just skipping the > check in this particular case. Please c

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v22]

2023-05-10 Thread Martin Doerr
On Wed, 10 May 2023 14:26:54 GMT, Jorn Vernee wrote: >> FWIW, since Shenandoah changed their load barriers we have been cleaning >> away the usages of the Access API for loads and stores to primitive values. >> There's no such support in the C++ Runtime code. > > Ok, since this is loading a `lo

RFR: 8308246: PPC64le build broken after JDK-8304913

2023-05-17 Thread Martin Doerr
PPC64le needs to get recognized as PPC64. Otherwise, jlink doesn't recognize the platform and throws a PluginException: ModuleTarget is malformed: No enum constant jdk.internal.util.Architecture.PPC64LE. - Commit messages: - 8308246: PPC64le build broken after JDK-8304913 Changes:

Re: RFR: 8308246: PPC64le build broken after JDK-8304913

2023-05-17 Thread Martin Doerr
On Wed, 17 May 2023 09:00:01 GMT, Alan Bateman wrote: >> PPC64le needs to get recognized as PPC64. Otherwise, jlink doesn't recognize >> the platform and throws a PluginException: ModuleTarget is malformed: No >> enum constant jdk.internal.util.Architecture.PPC64LE. > > src/jdk.jlink/share/clas

Re: RFR: 8308246: PPC64le build broken after JDK-8304913

2023-05-17 Thread Martin Doerr
On Wed, 17 May 2023 08:48:53 GMT, Aleksey Shipilev wrote: >> PPC64le needs to get recognized as PPC64. Otherwise, jlink doesn't recognize >> the platform and throws a PluginException: ModuleTarget is malformed: No >> enum constant jdk.internal.util.Architecture.PPC64LE. > > src/jdk.jlink/share/

  1   2   3   4   >