Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Roman Kennke
On Mon, 7 Oct 2024 22:40:37 GMT, Sandhya Viswanathan wrote: >> Yes, and that is intentional. >> >> Say, haystack_len is 7, then the first block computes the adjustment of the >> haystack, which is 8 - (7 % 8) = 1. We adjust the haystack pointer one byte >> down, so that when we copy (multiple

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v36]

2024-10-08 Thread Roman Kennke
> This is the main body of the JEP 450: Compact Object Headers (Experimental). > > It is also a follow-up to #20640, which now also includes (and supersedes) > #20603 and #20605, plus the Tiny Class-Pointers parts that have been > previously missing. > > Main changes: > - Introduction of the (

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v21]

2024-10-08 Thread Albert Mingkun Yang
On Mon, 7 Oct 2024 11:49:21 GMT, Stefan Karlsson wrote: >> When MinObjectAlignment=16, then that method does nothing anyway: >> >> >> if (MinObjAlignment > 1) { >> return; >> } >> >> >> >> I think what it really means to say is >> >> if (MinObjAlignment >= CollectedHeap::min_fill

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v21]

2024-10-08 Thread Stefan Karlsson
On Tue, 8 Oct 2024 07:40:24 GMT, Albert Mingkun Yang wrote: >> After re-reading this again I agree with what you're writing. If you make >> the change to use: >> >> if (MinObjAlignment >= CollectedHeap::min_fill_size()) { >> return; >> } >> >> >> do you even have to check for UCOH in this f

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Roberto Castañeda Lozano
On Tue, 8 Oct 2024 16:30:56 GMT, Roman Kennke wrote: >> Turns out I can also reproduce the issue on my linux-x64 machine (Intel Core >> i7-9850H), simply running: >> >> `make run-test TEST="java/lang/String/IndexOf.java" CONF=linux-x64-debug` >> >> In this case I get: >> >> >> # >> # A fatal

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v38]

2024-10-08 Thread Stefan Karlsson
On Tue, 8 Oct 2024 11:47:55 GMT, Roman Kennke wrote: >> This is the main body of the JEP 450: Compact Object Headers (Experimental). >> >> It is also a follow-up to #20640, which now also includes (and supersedes) >> #20603 and #20605, plus the Tiny Class-Pointers parts that have been >> previ

Re: RFR: 8341097: GHA: Demote Mac x86 jobs to build only

2024-10-08 Thread Magnus Ihse Bursie
On Mon, 30 Sep 2024 08:36:38 GMT, Aleksey Shipilev wrote: > See the discussion in the bug. I think we can stop testing Mac x86 in GHA, > leaving only the build jobs. > > Additional testing: > - [x] GHA passes I think this sounds reasonable. Just as we keep adding to GHA testing, we also need

Re: RFR: 8341424: GHA: Collect hs_errs from build time failures [v3]

2024-10-08 Thread Magnus Ihse Bursie
On Wed, 2 Oct 2024 19:03:09 GMT, Aleksey Shipilev wrote: >> GHA conveniently collects hs_errs from the test job runs. However, when we >> have a failure during the build, e.g. javac, CDS, jmod, jlink crashes the >> VM, we don't have these automatically collected. This is annoying when VM >> cr

Re: RFR: 8341424: GHA: Collect hs_errs from build time failures [v3]

2024-10-08 Thread Magnus Ihse Bursie
On Wed, 2 Oct 2024 19:03:09 GMT, Aleksey Shipilev wrote: >> GHA conveniently collects hs_errs from the test job runs. However, when we >> have a failure during the build, e.g. javac, CDS, jmod, jlink crashes the >> VM, we don't have these automatically collected. This is annoying when VM >> cr

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v11]

2024-10-08 Thread Hamlin Li
On Tue, 8 Oct 2024 14:46:02 GMT, Magnus Ihse Bursie wrote: >> Hamlin Li has updated the pull request incrementally with one additional >> commit since the last revision: >> >> make minor > > make/modules/jdk.incubator.vector/Lib.gmk line 53: > >> 51: DISABLED_WARNINGS_gcc := unused-fun

Re: RFR: 8341424: GHA: Collect hs_errs from build time failures [v3]

2024-10-08 Thread Aleksey Shipilev
On Tue, 8 Oct 2024 13:08:30 GMT, Magnus Ihse Bursie wrote: >> Aleksey Shipilev has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Gaaah > > .github/scripts/gen-build-failure-report.sh line 69: > >> 67: ) >> $GITHUB_STEP_SUMMARY >> 68:

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v12]

2024-10-08 Thread Magnus Ihse Bursie
On Tue, 8 Oct 2024 14:56:56 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v12]

2024-10-08 Thread Ludovic Henry
On Tue, 8 Oct 2024 14:56:56 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Hamlin Li
On Tue, 8 Oct 2024 13:40:53 GMT, Hamlin Li wrote: >> So is the `LIBS` line as well. And the CFLAGS line should be just: >> >>CFLAGS := -march=rv64gcv, \ > > No worries, it's not late. Take care! Do you suggest something like below? EXTRA_SRC := libsleef/generated, \ DISAB

Re: unused and set but not used variable warnings when building with toolchain clang on Linux

2024-10-08 Thread Magnus Ihse Bursie
On 2024-10-07 16:45, Baesken, Matthias wrote: Hi, I came across  some warnings as errors today when trying to build  on Linux with toolchain  clang (clang 15 on USE Linux)  : jdk/src/jdk.jpackage/share/native/common/Log.cpp:46:28: error: unused variable 'defaultLogLevel' [-Werror,-Wunused

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Hamlin Li
On Tue, 8 Oct 2024 13:25:17 GMT, Magnus Ihse Bursie wrote: >> make/modules/jdk.incubator.vector/Lib.gmk line 50: >> >>> 48: DISABLED_WARNINGS_clang := unused-function sign-compare >>> tautological-compare ignored-qualifiers, \ >>> 49: CFLAGS := $(CFLAGS_JDKLIB) -march=rv64gcv, \ >>>

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v39]

2024-10-08 Thread Roman Kennke
> This is the main body of the JEP 450: Compact Object Headers (Experimental). > > It is also a follow-up to #20640, which now also includes (and supersedes) > #20603 and #20605, plus the Tiny Class-Pointers parts that have been > previously missing. > > Main changes: > - Introduction of the (

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Roman Kennke
On Tue, 8 Oct 2024 15:58:33 GMT, Roberto Castañeda Lozano wrote: >> @rkennke @sviswa7 These changes trigger the following assertion failure: >> >> >> # >> # A fatal error has been detected by the Java Runtime Environment: >> # >> # Internal Error (codeBuffer.cpp:1004), pid=96032, tid=29699 >>

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v11]

2024-10-08 Thread Magnus Ihse Bursie
On Tue, 8 Oct 2024 14:07:45 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8337143: (fc, fs) Move filesystem-related native objects from libnio to libjava [v8]

2024-10-08 Thread Magnus Ihse Bursie
On Fri, 13 Sep 2024 20:41:27 GMT, Brian Burkhalter wrote: >> This proposed change would move the native objects required for NIO file >> interaction from the libnio native library to the libjava native library on >> Linux, macOS, and Windows. > > Brian Burkhalter has updated the pull request in

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v12]

2024-10-08 Thread Hamlin Li
> Hi, > Can you help to review this patch? > Thanks! > > This patch is based on https://github.com/openjdk/jdk/pull/20781 which added > the sleef source (in particular the generated sleef inline headers). We use > sleef api to vectorize the math operations in vector api. > > On machine with vec

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v9]

2024-10-08 Thread Hamlin Li
On Mon, 7 Oct 2024 09:16:42 GMT, Ludovic Henry wrote: >> Hamlin Li has updated the pull request incrementally with one additional >> commit since the last revision: >> >> bits > 512 > > Marked as reviewed by luhenry (Committer). @luhenry I merged this pr with the master to resolve conflict a

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v11]

2024-10-08 Thread Hamlin Li
> Hi, > Can you help to review this patch? > Thanks! > > This patch is based on https://github.com/openjdk/jdk/pull/20781 which added > the sleef source (in particular the generated sleef inline headers). We use > sleef api to vectorize the math operations in vector api. > > On machine with vec

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Hamlin Li
On Mon, 7 Oct 2024 09:50:16 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Roberto Castañeda Lozano
On Tue, 8 Oct 2024 07:16:13 GMT, Roman Kennke wrote: >> @rkennke Thanks for the explanation. I attach here a fix which is an >> extension of existing way of copying while taking care of the smaller object >> header. Also there are two instances of this in the intrinsic so I have >> factored th

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Roberto Castañeda Lozano
On Tue, 8 Oct 2024 15:44:45 GMT, Roberto Castañeda Lozano wrote: >> Thank you, @sviswa7! Yes this fix looks correct. I've intergrated it into >> this PR and re-enabled the indexOf intrinsic for compact headers. > > @rkennke @sviswa7 These changes trigger the following assertion failure: > > >

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v8]

2024-10-08 Thread Roman Kennke
On Mon, 9 Sep 2024 11:53:13 GMT, Thomas Schatzl wrote: >> Roman Kennke has updated the pull request incrementally with two additional >> commits since the last revision: >> >> - Try to avoid lea in loadNklass (aarch64) >> - Fix release build error > > src/hotspot/share/oops/klass.hpp line 169

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v8]

2024-10-08 Thread Roman Kennke
On Tue, 10 Sep 2024 09:28:41 GMT, Roman Kennke wrote: >> With compact headers, this value should only be used in C2, and not really >> as an actual offset. An earlier version of the change had the value in >> src/hotspot/share/opto/type.hpp instead, and only an assert(!UCOH) in >> oopDesc::kla

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v21]

2024-10-08 Thread Albert Mingkun Yang
On Tue, 8 Oct 2024 08:12:31 GMT, Stefan Karlsson wrote: >> I took UCOH into account when this code was written -- the current version >> of PR would fail the following assert. >> >> >> // Note: If min-fill-size decreases to 1, this whole method becomes >> redundant. >> assert(CollectedHe

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v37]

2024-10-08 Thread Roman Kennke
> This is the main body of the JEP 450: Compact Object Headers (Experimental). > > It is also a follow-up to #20640, which now also includes (and supersedes) > #20603 and #20605, plus the Tiny Class-Pointers parts that have been > previously missing. > > Main changes: > - Introduction of the (

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v21]

2024-10-08 Thread Roman Kennke
On Tue, 8 Oct 2024 10:20:45 GMT, Albert Mingkun Yang wrote: >> I was thinking that we should remove the entire: >> >> // Note: If min-fill-size decreases to 1, this whole method becomes >> redundant. >> assert(CollectedHeap::min_fill_size() >= 2, "inv"); >> >> block, since it is now incorr

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v2]

2024-10-08 Thread Hamlin Li
On Mon, 23 Sep 2024 13:12:16 GMT, Erik Joelsson wrote: >> Hamlin Li has updated the pull request incrementally with one additional >> commit since the last revision: >> >> modify cflags style > > Build changes look ok. @erikj79 @RealFYang Hi, can you help to reapprove the pr? I guess it's be

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Magnus Ihse Bursie
On Tue, 8 Oct 2024 13:23:21 GMT, Magnus Ihse Bursie wrote: >> Hamlin Li has updated the pull request with a new target base due to a merge >> or a rebase. The pull request now contains 11 commits: >> >> - merge master >> - bits > 512 >> - fix test macro >> - check frm after sleef call >> -

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Magnus Ihse Bursie
On Mon, 7 Oct 2024 09:50:16 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Magnus Ihse Bursie
On Mon, 7 Oct 2024 09:50:16 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8340574: Drop stackMapTable.cpp to -O1 for MacOS on XCode 16 to work around JDK-8340341

2024-10-08 Thread Magnus Ihse Bursie
On Sun, 22 Sep 2024 22:26:48 GMT, David Holmes wrote: > Personally I think it is foolish to trust this compiler and rather than > dropping the optimisation level for the one file we've been lucky enough to > know has been compiled incorrectly, we should issue a fatal error if this > compiler i

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v26]

2024-10-08 Thread Sandhya Viswanathan
On Tue, 8 Oct 2024 16:30:56 GMT, Roman Kennke wrote: >> Turns out I can also reproduce the issue on my linux-x64 machine (Intel Core >> i7-9850H), simply running: >> >> `make run-test TEST="java/lang/String/IndexOf.java" CONF=linux-x64-debug` >> >> In this case I get: >> >> >> # >> # A fatal

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v10]

2024-10-08 Thread Ludovic Henry
On Mon, 7 Oct 2024 09:50:16 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v38]

2024-10-08 Thread Roman Kennke
> This is the main body of the JEP 450: Compact Object Headers (Experimental). > > It is also a follow-up to #20640, which now also includes (and supersedes) > #20603 and #20605, plus the Tiny Class-Pointers parts that have been > previously missing. > > Main changes: > - Introduction of the (

Re: RFR: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF [v12]

2024-10-08 Thread Hamlin Li
On Tue, 8 Oct 2024 14:56:56 GMT, Hamlin Li wrote: >> Hi, >> Can you help to review this patch? >> Thanks! >> >> This patch is based on https://github.com/openjdk/jdk/pull/20781 which added >> the sleef source (in particular the generated sleef inline headers). We use >> sleef api to vectorize

Integrated: 8320500: [vectorapi] RISC-V: Optimize vector math operations with SLEEF

2024-10-08 Thread Hamlin Li
On Thu, 19 Sep 2024 08:32:38 GMT, Hamlin Li wrote: > Hi, > Can you help to review this patch? > Thanks! > > This patch is based on https://github.com/openjdk/jdk/pull/20781 which added > the sleef source (in particular the generated sleef inline headers). We use > sleef api to vectorize the ma

Re: RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v35]

2024-10-08 Thread Roman Kennke
> This is the main body of the JEP 450: Compact Object Headers (Experimental). > > It is also a follow-up to #20640, which now also includes (and supersedes) > #20603 and #20605, plus the Tiny Class-Pointers parts that have been > previously missing. > > Main changes: > - Introduction of the (