Re: RFR: 8265696: Move CDS sources to src/hotspot/shared/cds [v6]

2021-04-22 Thread Ioi Lam
On Thu, 22 Apr 2021 06:10:17 GMT, Thomas Stuefe  wrote:

>> Ioi Lam has updated the pull request with a new target base due to a merge 
>> or a rebase. The incremental webrev excludes the unrelated changes brought 
>> in by the merge/rebase. The pull request contains 11 additional commits 
>> since the last revision:
>> 
>>  - Merge branch 'master' into 8265696-move-cds-sources
>>  - fixed merge
>>  - Merge branch 'master' into 8265696-move-cds-sources
>>  - Merge branch 'master' into 8265696-move-cds-sources
>>  - Merge branch 'master' into 8265696-move-cds-sources
>>  - exclude all files under shared/cds if CDS is disabled; 
>> compactHashtable.cpp cannot be excluded since a bit of it is used even when 
>> CDS is disabled
>>  - fixed include guards -> #ifndef SHARE_CDS_x
>>  - fixed copyright
>>  - moved more files
>>  - fixed include lines
>>  - ... and 1 more: 
>> https://git.openjdk.java.net/jdk/compare/f8227451...8a9e7bdf
>
> Hi @iklam,
> 
> this is a very welcome change!
> 
> Nothing much to add to what David wrote (include guards need renaming). 
> 
> Apart from that, I was surprised that no gtests needed to be adapted, but 
> seems cds has no gtests?
> 
> I tested building without cds, works fine.
> 
> Thanks for doing this!
> 
> If you fix the include guards, this is fine by me.
> 
> ..Thomas

Thanks @tstuefe @erikj79 @dholmes-ora for the review.
The latest merged code passes Mach5 build tiers 1-5.
I also manually tested the minimal VM build to verify the exclusion of CDS 
object files.

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Integrated: 8265696: Move CDS sources to src/hotspot/shared/cds

2021-04-22 Thread Ioi Lam
On Wed, 21 Apr 2021 21:55:25 GMT, Ioi Lam  wrote:

> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

This pull request has now been integrated.

Changeset: 95f0fd6c
Author:Ioi Lam 
URL:   https://git.openjdk.java.net/jdk/commit/95f0fd6c
Stats: 588 lines in 81 files changed: 254 ins; 282 del; 52 mod

8265696: Move CDS sources to src/hotspot/shared/cds

Reviewed-by: erikj, dholmes, stuefe

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696: Move CDS sources to src/hotspot/shared/cds [v6]

2021-04-22 Thread Ioi Lam
> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Ioi Lam has updated the pull request with a new target base due to a merge or a 
rebase. The incremental webrev excludes the unrelated changes brought in by the 
merge/rebase. The pull request contains 11 additional commits since the last 
revision:

 - Merge branch 'master' into 8265696-move-cds-sources
 - fixed merge
 - Merge branch 'master' into 8265696-move-cds-sources
 - Merge branch 'master' into 8265696-move-cds-sources
 - Merge branch 'master' into 8265696-move-cds-sources
 - exclude all files under shared/cds if CDS is disabled; compactHashtable.cpp 
cannot be excluded since a bit of it is used even when CDS is disabled
 - fixed include guards -> #ifndef SHARE_CDS_x
 - fixed copyright
 - moved more files
 - fixed include lines
 - ... and 1 more: https://git.openjdk.java.net/jdk/compare/ba1998d8...8a9e7bdf

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3610/files
  - new: https://git.openjdk.java.net/jdk/pull/3610/files/5ca1c512..8a9e7bdf

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3610=05
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3610=04-05

  Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3610.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3610/head:pull/3610

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8260517: implement Sealed Classes as a standard feature in Java [v4]

2021-04-22 Thread Vicente Romero
> Please review this PR that intents to make sealed classes a final feature in 
> Java. This PR contains compiler and VM changes. In line with similar PRs, 
> which has made preview features final, this one is mostly removing preview 
> related comments from APIs plus options in test cases. Please also review the 
> related [CSR](https://bugs.openjdk.java.net/browse/JDK-8265090)
> 
> Thanks
> 
> note: this PR is related to 
> [PR-3528](https://github.com/openjdk/jdk/pull/3528) and must be integrated 
> after it.

Vicente Romero has updated the pull request with a new target base due to a 
merge or a rebase. The incremental webrev excludes the unrelated changes 
brought in by the merge/rebase. The pull request contains eight additional 
commits since the last revision:

 - Merge branch 'master' into JDK-8260517
 - updating comment after review feedback
 - removing javax.lang.model changes
 - Merge branch 'master' into JDK-8260517
 - Merge branch 'master' into JDK-8260517
 - fixing failing regression tests
 - JVM related changes
 - 8260517: Compiler implementation for Sealed Classes

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3526/files
  - new: https://git.openjdk.java.net/jdk/pull/3526/files/8ebe56fd..43e9cb5f

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3526=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3526=02-03

  Stats: 40790 lines in 1391 files changed: 8730 ins; 27464 del; 4596 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3526.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3526/head:pull/3526

PR: https://git.openjdk.java.net/jdk/pull/3526


Re: RFR: 8265696: Move CDS sources to src/hotspot/shared/cds [v5]

2021-04-22 Thread David Holmes
On Fri, 23 Apr 2021 01:23:56 GMT, Ioi Lam  wrote:

>> The number of CDS source files have grown significantly. To improve 
>> modularity, the following files should be moved a new directory, 
>> src/hotspot/share/cds.
>> 
>> - src/hotspot/share/classfile/classListParser.cpp
>> - src/hotspot/share/classfile/classListParser.hpp
>> - src/hotspot/share/classfile/classListWriter.hpp
>> - src/hotspot/share/classfile/compactHashtable.cpp
>> - src/hotspot/share/classfile/compactHashtable.hpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
>> - src/hotspot/share/memory/archiveBuilder.cpp
>> - src/hotspot/share/memory/archiveBuilder.hpp
>> - src/hotspot/share/memory/archiveUtils.cpp
>> - src/hotspot/share/memory/archiveUtils.hpp
>> - src/hotspot/share/memory/archiveUtils.inline.hpp
>> - src/hotspot/share/memory/cppVtables.cpp
>> - src/hotspot/share/memory/cppVtables.hpp
>> - src/hotspot/share/memory/dumpAllocStats.cpp
>> - src/hotspot/share/memory/dumpAllocStats.hpp
>> - src/hotspot/share/memory/dynamicArchive.cpp
>> - src/hotspot/share/memory/dynamicArchive.hpp
>> - src/hotspot/share/memory/filemap.cpp
>> - src/hotspot/share/memory/filemap.hpp
>> - src/hotspot/share/memory/heapShared.cpp
>> - src/hotspot/share/memory/heapShared.hpp
>> - src/hotspot/share/memory/heapShared.inline.hpp
>> - src/hotspot/share/memory/metaspaceShared.cpp
>> - src/hotspot/share/memory/metaspaceShared.hpp
>> - src/hotspot/share/prims/cdsoffsets.cpp
>> - src/hotspot/share/prims/cdsoffsets.hpp
>> 
>> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
>> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.
>
> Ioi Lam has updated the pull request with a new target base due to a merge or 
> a rebase. The incremental webrev excludes the unrelated changes brought in by 
> the merge/rebase. The pull request contains 10 additional commits since the 
> last revision:
> 
>  - fixed merge
>  - Merge branch 'master' into 8265696-move-cds-sources
>  - Merge branch 'master' into 8265696-move-cds-sources
>  - Merge branch 'master' into 8265696-move-cds-sources
>  - exclude all files under shared/cds if CDS is disabled; 
> compactHashtable.cpp cannot be excluded since a bit of it is used even when 
> CDS is disabled
>  - fixed include guards -> #ifndef SHARE_CDS_x
>  - fixed copyright
>  - moved more files
>  - fixed include lines
>  - 8265696: Move CDS sources from shared/memory to shared/cds

Marked as reviewed by dholmes (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696: Move CDS sources to src/hotspot/shared/cds [v5]

2021-04-22 Thread Ioi Lam
> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Ioi Lam has updated the pull request with a new target base due to a merge or a 
rebase. The incremental webrev excludes the unrelated changes brought in by the 
merge/rebase. The pull request contains 10 additional commits since the last 
revision:

 - fixed merge
 - Merge branch 'master' into 8265696-move-cds-sources
 - Merge branch 'master' into 8265696-move-cds-sources
 - Merge branch 'master' into 8265696-move-cds-sources
 - exclude all files under shared/cds if CDS is disabled; compactHashtable.cpp 
cannot be excluded since a bit of it is used even when CDS is disabled
 - fixed include guards -> #ifndef SHARE_CDS_x
 - fixed copyright
 - moved more files
 - fixed include lines
 - 8265696: Move CDS sources from shared/memory to shared/cds

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3610/files
  - new: https://git.openjdk.java.net/jdk/pull/3610/files/43c75a72..5ca1c512

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3610=04
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3610=03-04

  Stats: 47 lines in 6 files changed: 17 ins; 12 del; 18 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3610.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3610/head:pull/3610

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696: Move CDS sources to src/hotspot/shared/cds [v4]

2021-04-22 Thread Ioi Lam
> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Ioi Lam has updated the pull request with a new target base due to a merge or a 
rebase. The incremental webrev excludes the unrelated changes brought in by the 
merge/rebase. The pull request contains eight additional commits since the last 
revision:

 - Merge branch 'master' into 8265696-move-cds-sources
 - Merge branch 'master' into 8265696-move-cds-sources
 - exclude all files under shared/cds if CDS is disabled; compactHashtable.cpp 
cannot be excluded since a bit of it is used even when CDS is disabled
 - fixed include guards -> #ifndef SHARE_CDS_x
 - fixed copyright
 - moved more files
 - fixed include lines
 - 8265696: Move CDS sources from shared/memory to shared/cds

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3610/files
  - new: https://git.openjdk.java.net/jdk/pull/3610/files/729c6519..43c75a72

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3610=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3610=02-03

  Stats: 5509 lines in 251 files changed: 2774 ins; 1594 del; 1141 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3610.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3610/head:pull/3610

PR: https://git.openjdk.java.net/jdk/pull/3610


RFR: 8265783: Create a separate library for x86 Intel SVML assembly intrinsics

2021-04-22 Thread Sandhya Viswanathan
Intel Short Vector Math Library (SVML) based intrinsics in native x86 assembly 
provide optimized implementation for Vector API transcendental and 
trigonometric methods.
These methods are built into a separate library instead of being part of 
libjvm.so or jvm.dll.

The following changes are made:
   The source for these methods is placed in the jdk.incubator.vector module 
under src/jdk.incubator.vector/linux/native/libsvml and 
src/jdk.incubator.vector/windows/native/libsvml.
   The assembly source files are named as “*.S” and include files are named as 
“*.S.inc”.
   The corresponding build script is placed at 
make/modules/jdk.incubator.vector/Lib.gmk.
   Changes are made to build system to support dependency tracking for assembly 
files with includes.
   The built native libraries (libsvml.so/svml.dll) are placed in bin directory 
of JDK on Windows and lib directory of JDK on Linux.
   The C2 JIT uses the dll_load and dll_lookup to get the addresses of 
optimized methods from this library.

Build system changes and module library build scripts are contributed by Magnus 
(magnus.ihse.bur...@oracle.com).

This work is part of second round of incubation of the Vector API.
JEP: https://bugs.openjdk.java.net/browse/JDK-8261663

Please review.

Performance:
Micro benchmark Base Optimized Unit Gain(Optimized/Base)
Double128Vector.ACOS 45.91 87.34 ops/ms 1.90
Double128Vector.ASIN 45.06 92.36 ops/ms 2.05
Double128Vector.ATAN 19.92 118.36 ops/ms 5.94
Double128Vector.ATAN2 15.24 88.17 ops/ms 5.79
Double128Vector.CBRT 45.77 208.36 ops/ms 4.55
Double128Vector.COS 49.94 245.89 ops/ms 4.92
Double128Vector.COSH 26.91 126.00 ops/ms 4.68
Double128Vector.EXP 71.64 379.65 ops/ms 5.30
Double128Vector.EXPM1 35.95 150.37 ops/ms 4.18
Double128Vector.HYPOT 50.67 174.10 ops/ms 3.44
Double128Vector.LOG 61.95 279.84 ops/ms 4.52
Double128Vector.LOG10 59.34 239.05 ops/ms 4.03
Double128Vector.LOG1P 18.56 200.32 ops/ms 10.79
Double128Vector.SIN 49.36 240.79 ops/ms 4.88
Double128Vector.SINH 26.59 103.75 ops/ms 3.90
Double128Vector.TAN 41.05 152.39 ops/ms 3.71
Double128Vector.TANH 45.29 169.53 ops/ms 3.74
Double256Vector.ACOS 54.21 106.39 ops/ms 1.96
Double256Vector.ASIN 53.60 107.99 ops/ms 2.01
Double256Vector.ATAN 21.53 189.11 ops/ms 8.78
Double256Vector.ATAN2 16.67 140.76 ops/ms 8.44
Double256Vector.CBRT 56.45 397.13 ops/ms 7.04
Double256Vector.COS 58.26 389.77 ops/ms 6.69
Double256Vector.COSH 29.44 151.11 ops/ms 5.13
Double256Vector.EXP 86.67 564.68 ops/ms 6.52
Double256Vector.EXPM1 41.96 201.28 ops/ms 4.80
Double256Vector.HYPOT 66.18 305.74 ops/ms 4.62
Double256Vector.LOG 71.52 394.90 ops/ms 5.52
Double256Vector.LOG10 65.43 362.32 ops/ms 5.54
Double256Vector.LOG1P 19.99 300.88 ops/ms 15.05
Double256Vector.SIN 57.06 380.98 ops/ms 6.68
Double256Vector.SINH 29.40 117.37 ops/ms 3.99
Double256Vector.TAN 44.90 279.90 ops/ms 6.23
Double256Vector.TANH 54.08 274.71 ops/ms 5.08
Double512Vector.ACOS 55.65 687.54 ops/ms 12.35
Double512Vector.ASIN 57.31 777.72 ops/ms 13.57
Double512Vector.ATAN 21.42 729.21 ops/ms 34.04
Double512Vector.ATAN2 16.37 414.33 ops/ms 25.32
Double512Vector.CBRT 56.78 834.38 ops/ms 14.69
Double512Vector.COS 59.88 837.04 ops/ms 13.98
Double512Vector.COSH 30.34 172.76 ops/ms 5.70
Double512Vector.EXP 99.66 1608.12 ops/ms 16.14
Double512Vector.EXPM1 43.39 318.61 ops/ms 7.34
Double512Vector.HYPOT 73.87 1502.72 ops/ms 20.34
Double512Vector.LOG 74.84 996.00 ops/ms 13.31
Double512Vector.LOG10 71.12 1046.52 ops/ms 14.72
Double512Vector.LOG1P 19.75 776.87 ops/ms 39.34
Double512Vector.POW 37.42 384.13 ops/ms 10.26
Double512Vector.SIN 59.74 728.45 ops/ms 12.19
Double512Vector.SINH 29.47 143.38 ops/ms 4.87
Double512Vector.TAN 46.20 587.21 ops/ms 12.71
Double512Vector.TANH 57.36 495.42 ops/ms 8.64
Double64Vector.ACOS 24.04 73.67 ops/ms 3.06
Double64Vector.ASIN 23.78 75.11 ops/ms 3.16
Double64Vector.ATAN 14.14 62.81 ops/ms 4.44
Double64Vector.ATAN2 10.38 44.43 ops/ms 4.28
Double64Vector.CBRT 16.47 107.50 ops/ms 6.53
Double64Vector.COS 23.42 152.01 ops/ms 6.49
Double64Vector.COSH 17.34 113.34 ops/ms 6.54
Double64Vector.EXP 27.08 203.53 ops/ms 7.52
Double64Vector.EXPM1 18.77 96.73 ops/ms 5.15
Double64Vector.HYPOT 18.54 103.62 ops/ms 5.59
Double64Vector.LOG 26.75 142.63 ops/ms 5.33
Double64Vector.LOG10 25.85 139.71 ops/ms 5.40
Double64Vector.LOG1P 13.26 97.94 ops/ms 7.38
Double64Vector.SIN 23.28 146.91 ops/ms 6.31
Double64Vector.SINH 17.62 88.59 ops/ms 5.03
Double64Vector.TAN 21.00 86.43 ops/ms 4.12
Double64Vector.TANH 23.75 111.35 ops/ms 4.69
Float128Vector.ACOS 57.52 110.65 ops/ms 1.92
Float128Vector.ASIN 57.15 117.95 ops/ms 2.06
Float128Vector.ATAN 22.52 318.74 ops/ms 14.15
Float128Vector.ATAN2 17.06 246.07 ops/ms 14.42
Float128Vector.CBRT 29.72 443.74 ops/ms 14.93
Float128Vector.COS 42.82 803.02 ops/ms 18.75
Float128Vector.COSH 31.44 118.34 ops/ms 3.76
Float128Vector.EXP 72.43 855.33 ops/ms 11.81
Float128Vector.EXPM1 37.82 127.85 ops/ms 3.38
Float128Vector.HYPOT 53.20 591.68 ops/ms 11.12
Float128Vector.LOG 52.95 877.94 ops/ms 

Integrated: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Mikael Vidstedt
On Thu, 22 Apr 2021 18:15:58 GMT, Mikael Vidstedt  wrote:

> The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 
> from early December, so does not include all the JDK 16 GA functionality. 
> This leads to build issues after JDK-8263621 which uses a method not included 
> in the custom version. Let's bump the bootjdk used for macosx-aarch64 to 
> jdk-17+19 instead.

This pull request has now been integrated.

Changeset: 0e005989
Author:Mikael Vidstedt 
URL:   https://git.openjdk.java.net/jdk/commit/0e005989
Stats: 28 lines in 1 file changed: 5 ins; 12 del; 11 mod

8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

Reviewed-by: iignatyev, tbell, iris, erikj

-

PR: https://git.openjdk.java.net/jdk/pull/3636


Re: RFR: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Erik Joelsson
On Thu, 22 Apr 2021 18:15:58 GMT, Mikael Vidstedt  wrote:

> The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 
> from early December, so does not include all the JDK 16 GA functionality. 
> This leads to build issues after JDK-8263621 which uses a method not included 
> in the custom version. Let's bump the bootjdk used for macosx-aarch64 to 
> jdk-17+19 instead.

Marked as reviewed by erikj (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3636


Re: RFR: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Iris Clark
On Thu, 22 Apr 2021 18:15:58 GMT, Mikael Vidstedt  wrote:

> The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 
> from early December, so does not include all the JDK 16 GA functionality. 
> This leads to build issues after JDK-8263621 which uses a method not included 
> in the custom version. Let's bump the bootjdk used for macosx-aarch64 to 
> jdk-17+19 instead.

Marked as reviewed by iris (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3636


Re: RFR: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Tim Bell
On Thu, 22 Apr 2021 18:15:58 GMT, Mikael Vidstedt  wrote:

> The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 
> from early December, so does not include all the JDK 16 GA functionality. 
> This leads to build issues after JDK-8263621 which uses a method not included 
> in the custom version. Let's bump the bootjdk used for macosx-aarch64 to 
> jdk-17+19 instead.

Marked as reviewed by tbell (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3636


RFR: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Mikael Vidstedt
The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 from 
early December, so does not include all the JDK 16 GA functionality. This leads 
to build issues after JDK-8263621 which uses a method not included in the 
custom version. Let's bump the bootjdk used for macosx-aarch64 to jdk-17+19 
instead.

-

Commit messages:
 - 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

Changes: https://git.openjdk.java.net/jdk/pull/3636/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=3636=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8265782
  Stats: 28 lines in 1 file changed: 5 ins; 12 del; 11 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3636.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3636/head:pull/3636

PR: https://git.openjdk.java.net/jdk/pull/3636


Re: RFR: 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle

2021-04-22 Thread Igor Ignatyev
On Thu, 22 Apr 2021 18:15:58 GMT, Mikael Vidstedt  wrote:

> The bootjdk used for macosx-aarch64 at Oracle is a custom build of JDK 16 
> from early December, so does not include all the JDK 16 GA functionality. 
> This leads to build issues after JDK-8263621 which uses a method not included 
> in the custom version. Let's bump the bootjdk used for macosx-aarch64 to 
> jdk-17+19 instead.

Marked as reviewed by iignatyev (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3636


Re: RFR: 8265531: doc/building.md should mention homebrew install freetype

2021-04-22 Thread Erik Joelsson
On Tue, 20 Apr 2021 14:58:02 GMT, George Adams 
 wrote:

> Updates the docs/building.html guide to include steps to install FreeType on 
> macOS using homebrew.

Marked as reviewed by erikj (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3590


Re: RFR: 8265702: ZGC on macOS/aarch64 [v2]

2021-04-22 Thread Gerard Ziemski
On Thu, 22 Apr 2021 06:43:45 GMT, Per Liden  wrote:

>> This patch enables ZGC on macOS/aarch64. It does three things:
>> 1) Enables building of ZGC on this platform.
>> 2) Adds `os::processor_id()`, which for now always returns 0.
>> 3) Fixes a WX issue in `OptoRuntime::handle_exception_C()`, where the 
>> stackwater mark might unnecessarily process a frame when the thread is in 
>> WXExec mode. In this case, the we're not touching any oops, so we don't need 
>> to process any frames.
>> 
>> Testing: Passes the same tests as macOS/x86_64 (with the exception of 
>> pre-existing issues unrelated to ZGC).
>
> Per Liden has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Add comment to #else

Marked as reviewed by gziemski (Committer).

-

PR: https://git.openjdk.java.net/jdk/pull/3609


RFR: 8265531: doc/building.md should mention homebrew install freetype

2021-04-22 Thread George Adams
Updates the docs/building.html guide to include steps to install FreeType on 
macOS using homebrew.

-

Commit messages:
 - add macOS freetype install steps to docs/building.html

Changes: https://git.openjdk.java.net/jdk/pull/3590/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=3590=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8265531
  Stats: 2 lines in 2 files changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3590.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3590/head:pull/3590

PR: https://git.openjdk.java.net/jdk/pull/3590


Re: RFR: 8265696 move cds sources [v3]

2021-04-22 Thread Erik Joelsson
On Thu, 22 Apr 2021 06:19:29 GMT, Ioi Lam  wrote:

>> I don't suppose we can just exclude the new directory rather than listing 
>> individual files?
>
> Fixed. Now all files under share/cds are excluded. I needed to move 
> compactHashtable.cpp back to its old location since a little of it is used 
> even when CDS is not used.

That's indeed a better idea.

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v3]

2021-04-22 Thread Erik Joelsson
On Thu, 22 Apr 2021 06:27:45 GMT, Ioi Lam  wrote:

>> The number of CDS source files have grown significantly. To improve 
>> modularity, the following files should be moved a new directory, 
>> src/hotspot/share/cds.
>> 
>> - src/hotspot/share/classfile/classListParser.cpp
>> - src/hotspot/share/classfile/classListParser.hpp
>> - src/hotspot/share/classfile/classListWriter.hpp
>> - src/hotspot/share/classfile/compactHashtable.cpp
>> - src/hotspot/share/classfile/compactHashtable.hpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
>> - src/hotspot/share/memory/archiveBuilder.cpp
>> - src/hotspot/share/memory/archiveBuilder.hpp
>> - src/hotspot/share/memory/archiveUtils.cpp
>> - src/hotspot/share/memory/archiveUtils.hpp
>> - src/hotspot/share/memory/archiveUtils.inline.hpp
>> - src/hotspot/share/memory/cppVtables.cpp
>> - src/hotspot/share/memory/cppVtables.hpp
>> - src/hotspot/share/memory/dumpAllocStats.cpp
>> - src/hotspot/share/memory/dumpAllocStats.hpp
>> - src/hotspot/share/memory/dynamicArchive.cpp
>> - src/hotspot/share/memory/dynamicArchive.hpp
>> - src/hotspot/share/memory/filemap.cpp
>> - src/hotspot/share/memory/filemap.hpp
>> - src/hotspot/share/memory/heapShared.cpp
>> - src/hotspot/share/memory/heapShared.hpp
>> - src/hotspot/share/memory/heapShared.inline.hpp
>> - src/hotspot/share/memory/metaspaceShared.cpp
>> - src/hotspot/share/memory/metaspaceShared.hpp
>> - src/hotspot/share/prims/cdsoffsets.cpp
>> - src/hotspot/share/prims/cdsoffsets.hpp
>> 
>> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
>> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.
>
> Ioi Lam has updated the pull request with a new target base due to a merge or 
> a rebase. The incremental webrev excludes the unrelated changes brought in by 
> the merge/rebase. The pull request contains seven additional commits since 
> the last revision:
> 
>  - Merge branch 'master' into 8265696-move-cds-sources
>  - exclude all files under shared/cds if CDS is disabled; 
> compactHashtable.cpp cannot be excluded since a bit of it is used even when 
> CDS is disabled
>  - fixed include guards -> #ifndef SHARE_CDS_x
>  - fixed copyright
>  - moved more files
>  - fixed include lines
>  - 8265696: Move CDS sources from shared/memory to shared/cds

Marked as reviewed by erikj (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265702: ZGC on macOS/aarch64 [v2]

2021-04-22 Thread Per Liden
> This patch enables ZGC on macOS/aarch64. It does three things:
> 1) Enables building of ZGC on this platform.
> 2) Adds `os::processor_id()`, which for now always returns 0.
> 3) Fixes a WX issue in `OptoRuntime::handle_exception_C()`, where the 
> stackwater mark might unnecessarily process a frame when the thread is in 
> WXExec mode. In this case, the we're not touching any oops, so we don't need 
> to process any frames.
> 
> Testing: Passes the same tests as macOS/x86_64 (with the exception of 
> pre-existing issues unrelated to ZGC).

Per Liden has updated the pull request incrementally with one additional commit 
since the last revision:

  Add comment to #else

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3609/files
  - new: https://git.openjdk.java.net/jdk/pull/3609/files/c8913936..dd8c42ff

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3609=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3609=00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3609.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3609/head:pull/3609

PR: https://git.openjdk.java.net/jdk/pull/3609


Re: RFR: 8265702: ZGC on macOS/aarch64 [v2]

2021-04-22 Thread Per Liden
On Thu, 22 Apr 2021 04:26:11 GMT, David Holmes  wrote:

>> Per Liden has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   Add comment to #else
>
> src/hotspot/os/bsd/os_bsd.cpp line 2149:
> 
>> 2147: 
>> 2148:   return (uint)processor_id;
>> 2149: #else
> 
> Please add a comment indicating what platform this else is referring to.

Will fix!

-

PR: https://git.openjdk.java.net/jdk/pull/3609


Re: RFR: 8265696 move cds sources [v3]

2021-04-22 Thread David Holmes
On Thu, 22 Apr 2021 06:27:45 GMT, Ioi Lam  wrote:

>> The number of CDS source files have grown significantly. To improve 
>> modularity, the following files should be moved a new directory, 
>> src/hotspot/share/cds.
>> 
>> - src/hotspot/share/classfile/classListParser.cpp
>> - src/hotspot/share/classfile/classListParser.hpp
>> - src/hotspot/share/classfile/classListWriter.hpp
>> - src/hotspot/share/classfile/compactHashtable.cpp
>> - src/hotspot/share/classfile/compactHashtable.hpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
>> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
>> - src/hotspot/share/memory/archiveBuilder.cpp
>> - src/hotspot/share/memory/archiveBuilder.hpp
>> - src/hotspot/share/memory/archiveUtils.cpp
>> - src/hotspot/share/memory/archiveUtils.hpp
>> - src/hotspot/share/memory/archiveUtils.inline.hpp
>> - src/hotspot/share/memory/cppVtables.cpp
>> - src/hotspot/share/memory/cppVtables.hpp
>> - src/hotspot/share/memory/dumpAllocStats.cpp
>> - src/hotspot/share/memory/dumpAllocStats.hpp
>> - src/hotspot/share/memory/dynamicArchive.cpp
>> - src/hotspot/share/memory/dynamicArchive.hpp
>> - src/hotspot/share/memory/filemap.cpp
>> - src/hotspot/share/memory/filemap.hpp
>> - src/hotspot/share/memory/heapShared.cpp
>> - src/hotspot/share/memory/heapShared.hpp
>> - src/hotspot/share/memory/heapShared.inline.hpp
>> - src/hotspot/share/memory/metaspaceShared.cpp
>> - src/hotspot/share/memory/metaspaceShared.hpp
>> - src/hotspot/share/prims/cdsoffsets.cpp
>> - src/hotspot/share/prims/cdsoffsets.hpp
>> 
>> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
>> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.
>
> Ioi Lam has updated the pull request with a new target base due to a merge or 
> a rebase. The incremental webrev excludes the unrelated changes brought in by 
> the merge/rebase. The pull request contains seven additional commits since 
> the last revision:
> 
>  - Merge branch 'master' into 8265696-move-cds-sources
>  - exclude all files under shared/cds if CDS is disabled; 
> compactHashtable.cpp cannot be excluded since a bit of it is used even when 
> CDS is disabled
>  - fixed include guards -> #ifndef SHARE_CDS_x
>  - fixed copyright
>  - moved more files
>  - fixed include lines
>  - 8265696: Move CDS sources from shared/memory to shared/cds

Updates look good.

Thanks,
David

-

Marked as reviewed by dholmes (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v3]

2021-04-22 Thread David Holmes
On Thu, 22 Apr 2021 06:19:19 GMT, Ioi Lam  wrote:

>> src/hotspot/share/cds/dynamicArchive.hpp line 38:
>> 
>>> 36: #include "utilities/resourceHash.hpp"
>>> 37: 
>>> 38: #if INCLUDE_CDS
>> 
>> I have to wonder who is including this file and why, if CDS is not enabled.
>
> E.g., jvm.cpp includes dynamicArchive.hpp, but only uses its declarations 
> inside INCLUDE_CDS blocks. It would be too verbose to do this in jvm.cpp
> 
> 
> #if INCLUDE_CDS
> #include "cds/dynamicArchive.hpp"
> #endif

We routinely do that for other INCLUDE_X features.

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v3]

2021-04-22 Thread Ioi Lam
> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Ioi Lam has updated the pull request with a new target base due to a merge or a 
rebase. The incremental webrev excludes the unrelated changes brought in by the 
merge/rebase. The pull request contains seven additional commits since the last 
revision:

 - Merge branch 'master' into 8265696-move-cds-sources
 - exclude all files under shared/cds if CDS is disabled; compactHashtable.cpp 
cannot be excluded since a bit of it is used even when CDS is disabled
 - fixed include guards -> #ifndef SHARE_CDS_x
 - fixed copyright
 - moved more files
 - fixed include lines
 - 8265696: Move CDS sources from shared/memory to shared/cds

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3610/files
  - new: https://git.openjdk.java.net/jdk/pull/3610/files/a1a2699f..729c6519

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3610=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3610=01-02

  Stats: 338 lines in 63 files changed: 131 ins; 143 del; 64 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3610.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3610/head:pull/3610

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v2]

2021-04-22 Thread Ioi Lam
On Thu, 22 Apr 2021 04:16:57 GMT, David Holmes  wrote:

>> Ioi Lam has updated the pull request incrementally with two additional 
>> commits since the last revision:
>> 
>>  - exclude all files under shared/cds if CDS is disabled; 
>> compactHashtable.cpp cannot be excluded since a bit of it is used even when 
>> CDS is disabled
>>  - fixed include guards -> #ifndef SHARE_CDS_x
>
> src/hotspot/share/cds/archiveUtils.inline.hpp line 25:
> 
>> 23:  */
>> 24: 
>> 25: #ifndef SHARE_MEMORY_ARCHIVEUTILS_INLINE_HPP
> 
> The header file include guards all need updating for the new path.

Fixed.

> src/hotspot/share/cds/dynamicArchive.hpp line 38:
> 
>> 36: #include "utilities/resourceHash.hpp"
>> 37: 
>> 38: #if INCLUDE_CDS
> 
> I have to wonder who is including this file and why, if CDS is not enabled.

E.g., jvm.cpp includes dynamicArchive.hpp, but only uses its declarations 
inside INCLUDE_CDS blocks. It would be too verbose to do this in jvm.cpp


#if INCLUDE_CDS
#include "cds/dynamicArchive.hpp"
#endif

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v2]

2021-04-22 Thread Ioi Lam
On Thu, 22 Apr 2021 04:14:38 GMT, David Holmes  wrote:

>> Thank you!
>
> I don't suppose we can just exclude the new directory rather than listing 
> individual files?

Fixed. Now all files under share/cds are excluded. I needed to move 
compactHashtable.cpp back to its old location since a little of it is used even 
when CDS is not used.

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v2]

2021-04-22 Thread Ioi Lam
On Thu, 22 Apr 2021 06:10:17 GMT, Thomas Stuefe  wrote:

> Hi @iklam,
> 
> this is a very welcome change!
> 
> Nothing much to add to what David wrote (include guards need renaming).
> 
> Apart from that, I was surprised that no gtests needed to be adapted, but 
> seems cds has no gtests?
> 
> I tested building without cds, works fine.
> 
> Thanks for doing this!
> 
> If you fix the include guards, this is fine by me.
> 
> ..Thomas

Hi Thomas, thanks for the review. You're right that we don't have any gtests 
 that should be fixed at some point.

-

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources [v2]

2021-04-22 Thread Ioi Lam
> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Ioi Lam has updated the pull request incrementally with two additional commits 
since the last revision:

 - exclude all files under shared/cds if CDS is disabled; compactHashtable.cpp 
cannot be excluded since a bit of it is used even when CDS is disabled
 - fixed include guards -> #ifndef SHARE_CDS_x

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3610/files
  - new: https://git.openjdk.java.net/jdk/pull/3610/files/ba45831f..a1a2699f

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=3610=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=3610=00-01

  Stats: 66 lines in 19 files changed: 6 ins; 16 del; 44 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3610.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3610/head:pull/3610

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265696 move cds sources

2021-04-22 Thread Thomas Stuefe
On Wed, 21 Apr 2021 21:55:25 GMT, Ioi Lam  wrote:

> The number of CDS source files have grown significantly. To improve 
> modularity, the following files should be moved a new directory, 
> src/hotspot/share/cds.
> 
> - src/hotspot/share/classfile/classListParser.cpp
> - src/hotspot/share/classfile/classListParser.hpp
> - src/hotspot/share/classfile/classListWriter.hpp
> - src/hotspot/share/classfile/compactHashtable.cpp
> - src/hotspot/share/classfile/compactHashtable.hpp
> - src/hotspot/share/classfile/lambdaFormInvokers.cpp
> - src/hotspot/share/classfile/lambdaFormInvokers.hpp
> - src/hotspot/share/memory/archiveBuilder.cpp
> - src/hotspot/share/memory/archiveBuilder.hpp
> - src/hotspot/share/memory/archiveUtils.cpp
> - src/hotspot/share/memory/archiveUtils.hpp
> - src/hotspot/share/memory/archiveUtils.inline.hpp
> - src/hotspot/share/memory/cppVtables.cpp
> - src/hotspot/share/memory/cppVtables.hpp
> - src/hotspot/share/memory/dumpAllocStats.cpp
> - src/hotspot/share/memory/dumpAllocStats.hpp
> - src/hotspot/share/memory/dynamicArchive.cpp
> - src/hotspot/share/memory/dynamicArchive.hpp
> - src/hotspot/share/memory/filemap.cpp
> - src/hotspot/share/memory/filemap.hpp
> - src/hotspot/share/memory/heapShared.cpp
> - src/hotspot/share/memory/heapShared.hpp
> - src/hotspot/share/memory/heapShared.inline.hpp
> - src/hotspot/share/memory/metaspaceShared.cpp
> - src/hotspot/share/memory/metaspaceShared.hpp
> - src/hotspot/share/prims/cdsoffsets.cpp
> - src/hotspot/share/prims/cdsoffsets.hpp
> 
> Testing with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and 
> builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

Hi @iklam,

this is a very welcome change!

Nothing much to add to what David wrote (include guards need renaming). 

Apart from that, I was surprised that no gtests needed to be adapted, but seems 
cds has no gtests?

I tested building without cds, works fine.

Thanks for doing this!

If you fix the include guards, this is fine by me.

..Thomas

-

Marked as reviewed by stuefe (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3610


Re: RFR: 8265702: ZGC on macOS/aarch64

2021-04-22 Thread Stefan Karlsson
On Wed, 21 Apr 2021 21:10:02 GMT, Per Liden  wrote:

> This patch enables ZGC on macOS/aarch64. It does three things:
> 1) Enables building of ZGC on this platform.
> 2) Adds `os::processor_id()`, which for now always returns 0.
> 3) Fixes a WX issue in `OptoRuntime::handle_exception_C()`, where the 
> stackwater mark might unnecessarily process a frame when the thread is in 
> WXExec mode. In this case, the we're not touching any oops, so we don't need 
> to process any frames.
> 
> Testing: Passes the same tests as macOS/x86_64 (with the exception of 
> pre-existing issues unrelated to ZGC).

Marked as reviewed by stefank (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/3609