Withdrawn: 8333282: Better warning if newly build JDK fails to run

2024-09-19 Thread duke
On Thu, 30 May 2024 15:02:38 GMT, Magnus Ihse Bursie wrote: > If the newly built JDK fails to run ("DOA"), we will get a strange error > message about jdk.compiler-gendata errors from make. The reason is not at all > obvious. > > Instead, we should make a simple check that we can actually use

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

2024-09-19 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-09-19 Thread Thomas Stuefe
On Thu, 19 Sep 2024 05:44:42 GMT, Stefan Karlsson wrote: >> Roman Kennke has updated the pull request incrementally with one additional >> commit since the last revision: >> >> JVMCI support > > src/hotspot/share/oops/compressedKlass.cpp line 231: > >> 229: // The reason is that we want

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

2024-09-19 Thread Roberto Castañeda Lozano
On Thu, 19 Sep 2024 11:42:04 GMT, Roman Kennke wrote: > > > I agree that this is the simplest and least intrusive way of getting > > > klass loading working in C2 for this experimental version of the feature. > > > However, the approach seems brittle and error-prone, and it may be hard > > > t

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

2024-09-19 Thread Stefan Karlsson
On Thu, 19 Sep 2024 12:35:30 GMT, Coleen Phillimore wrote: >> Note that if we go with my KLUT proposal for post-Lilliput (the GC oop >> iteration improvements), this will not matter anymore and can be simplified >> to a fixed shift of 10. > > Yes, please, not having this code would be really ni

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

2024-09-19 Thread Hamlin Li
On Wed, 18 Sep 2024 13:23:44 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 >> prev

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

2024-09-19 Thread Roberto Castañeda Lozano
On Mon, 16 Sep 2024 08:04:43 GMT, Roberto Castañeda Lozano wrote: > I agree that this is the simplest and least intrusive way of getting klass > loading working in C2 for this experimental version of the feature. However, > the approach seems brittle and error-prone, and it may be hard to main

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

2024-09-19 Thread Hamlin Li
On Thu, 19 Sep 2024 12:52:59 GMT, Erik Joelsson 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 vecto

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

2024-09-19 Thread Yudi Zheng
On Thu, 19 Sep 2024 05:03:42 GMT, Stefan Karlsson wrote: >> Yes, I saw that patch. I'm not sure I like the idea of cpu dependent code >> also doing the encoding. There were some C2 changes related to it that I >> didn't understand if that scheme required them. I don't see the down side >> t

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

2024-09-19 Thread Thomas Stuefe
On Wed, 18 Sep 2024 23:49:34 GMT, Coleen Phillimore wrote: >> Roman Kennke has updated the pull request incrementally with one additional >> commit since the last revision: >> >> JVMCI support > > src/hotspot/share/oops/compressedKlass.cpp line 242: > >> 240: } else { >> 241: >> 242:

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

2024-09-19 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-09-19 Thread Roman Kennke
On Thu, 19 Sep 2024 10:29:11 GMT, Hamlin Li wrote: >> Roman Kennke has updated the pull request incrementally with one additional >> commit since the last revision: >> >> JVMCI support > > src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp line 2529: > >> 2527: } >> 2528: __ decode_

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

2024-09-19 Thread Roman Kennke
On Thu, 19 Sep 2024 11:00:20 GMT, Roberto Castañeda Lozano wrote: > > I agree that this is the simplest and least intrusive way of getting klass > > loading working in C2 for this experimental version of the feature. > > However, the approach seems brittle and error-prone, and it may be hard t

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

2024-09-19 Thread Thomas Stuefe
On Thu, 19 Sep 2024 11:43:12 GMT, Thomas Stuefe wrote: >> src/hotspot/share/oops/compressedKlass.cpp line 231: >> >>> 229: // The reason is that we want to avoid, if possible, shifts larger >>> than >>> 230: // a cacheline size. >>> 231: _base = addr; >> >> Why is this important? >

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

2024-09-19 Thread Thomas Stuefe
On Wed, 18 Sep 2024 23:53:28 GMT, Coleen Phillimore wrote: >> Roman Kennke has updated the pull request incrementally with one additional >> commit since the last revision: >> >> JVMCI support > > src/hotspot/share/oops/compressedKlass.hpp line 175: > >> 173: // 5b) if CDS=off: Calls ini

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

2024-09-19 Thread Thomas Stuefe
On Tue, 17 Sep 2024 10:36:58 GMT, Johan Sjölen wrote: >> Roman Kennke has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 57 commits: >> >> - fix CompressedClassPointersEncodingScheme yet again for linux aarch64 >> - Fixes post-8340

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

2024-09-19 Thread Hamlin Li
On Thu, 19 Sep 2024 12:08:46 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 >> prev

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

2024-09-19 Thread Erik Joelsson
On Thu, 19 Sep 2024 13:47:50 GMT, Hamlin Li wrote: >> make/modules/jdk.incubator.vector/Lib.gmk line 48: >> >>> 46: DISABLED_WARNINGS_gcc := unused-function sign-compare >>> tautological-compare ignored-qualifiers, \ >>> 47: DISABLED_WARNINGS_clang := unused-function sign-compare >

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

2024-09-19 Thread Hamlin Li
On Thu, 19 Sep 2024 16:02:36 GMT, Erik Joelsson wrote: >> Thanks, do you mean something like below? I'll fix it. >> >> CFLAGS := $(CFLAGS_JDKLIB) $(C_O_FLAG_HI) -march=rv64gcv, \ > > Sorry, I had to remind myself of how this works. We actually set this as a > separate parameter on the Setup mac

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

2024-09-19 Thread Roberto Castañeda Lozano
On Wed, 18 Sep 2024 12:08:46 GMT, Roman Kennke wrote: >> src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp line 2576: >> >>> 2574: } else { >>> 2575: lea(dst, Address(obj, index, Address::lsl(scale))); >>> 2576: ldr(dst, Address(dst, offset)); >> >> Do you have a reproducer (or, b

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

2024-09-19 Thread Stefan Karlsson
On Thu, 19 Sep 2024 11:54:50 GMT, Roman Kennke wrote: >> We already have a cpu dependent code for both C1 and the interpreter. Adding >> cpu dependent code to C2 doesn't make it significantly worse. My latest >> patch also refactors the code so that C1, interpreter, and C2 all calls into >> sh

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

2024-09-19 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 vector intrinsic supp

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

2024-09-19 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) [v9]

2024-09-19 Thread Roman Kennke
On Thu, 19 Sep 2024 05:03:42 GMT, Stefan Karlsson wrote: >> Yes, I saw that patch. I'm not sure I like the idea of cpu dependent code >> also doing the encoding. There were some C2 changes related to it that I >> didn't understand if that scheme required them. I don't see the down side >> t

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

2024-09-19 Thread Coleen Phillimore
On Thu, 19 Sep 2024 11:47:21 GMT, Thomas Stuefe wrote: >> It lessens the cache effects of Klass hyperaligning. > > Note that if we go with my KLUT proposal for post-Lilliput (the GC oop > iteration improvements), this will not matter anymore and can be simplified > to a fixed shift of 10. Yes,

Re: RFR: 8340418: GHA: MacOS AArch64 bundles can be removed prematurely

2024-09-19 Thread Erik Joelsson
On Thu, 19 Sep 2024 05:51:00 GMT, Aleksey Shipilev wrote: > `remove-bundles` step does not depend on `test-macos-aarch64`, which means it > can run before macos-aarch64 tests start to run, which would fail those > steps. This is not frequent, but will happen if macos-aarch64 runners are > lagg

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

2024-09-19 Thread Erik Joelsson
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) [v21]

2024-09-19 Thread Thomas Stuefe
On Thu, 19 Sep 2024 13:08:43 GMT, Stefan Karlsson wrote: >> Yes, please, not having this code would be really nice. This is difficult >> code. > > Do you seen any effects of this in anything other than special-crafted micro > benchmarks? I wonder if it would be good enough to hard-code this to