From rkennke at openjdk.org  Tue Jan  3 17:11:55 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 3 Jan 2023 17:11:55 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix Windows
 build
Message-ID: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>

These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.

Ok?

Thanks,
Roman

-------------

Commit messages:
 - Include objectMonitor.inline.hpp in thread.cpp
 - More fixes
 - Revert wrong attempt
 - Second attempt
 - Fix Windows build

Changes: https://git.openjdk.org/lilliput-jdk17u/pull/1/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=1&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8299478
  Stats: 4 lines in 4 files changed: 0 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/lilliput-jdk17u/pull/1.diff
  Fetch: git fetch https://git.openjdk.org/lilliput-jdk17u pull/1/head:pull/1

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From shade at openjdk.org  Tue Jan  3 17:20:26 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 3 Jan 2023 17:20:26 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix
 Windows build
In-Reply-To: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
Message-ID: <JVUqu8maCgDtxFoAKBfJDh0d2Z5FtyvuwfLz4N4U7qI=.6819864d-fa7a-482a-948a-3a02073660c1@github.com>

On Mon, 2 Jan 2023 19:21:24 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.
> 
> Ok?
> 
> Thanks,
> Roman

Can you explain a bit why this should be `int`, and not `size_t`, like the rest of upstream `object_size()` methods?

src/hotspot/share/oops/objArrayOop.hpp line 80:

> 78:     size_t osz = align_object_size(size_words);
> 79:     assert(osz < max_jint, "no overflow");
> 80:     return static_cast<int>(osz);

`checked_cast`?

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From shade at redhat.com  Tue Jan  3 17:38:29 2023
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 3 Jan 2023 18:38:29 +0100
Subject: JDK17 backport repo of Lilliput
In-Reply-To: <59fc9186-e49f-1439-c1ee-c647387a2f2d@amazon.de>
References: <59fc9186-e49f-1439-c1ee-c647387a2f2d@amazon.de>
Message-ID: <91ffa897-11ef-908c-b787-5b17e7d5290c@redhat.com>

On 12/14/22 16:49, Kennke, Roman wrote:
> I've created and seeded a repository for tracking a backport of Lilliput
> to JDK17:
> 
> https://github.com/openjdk/lilliput-jdk17u
> 
> It is forked from openjdk/jdk17u and the intention is to follow this
> upstream repo at least for the JDK17u GA releases.
> 
> The intention of it is to make testing easier for users who are on JDK17
> but cannot easily run JDK20+.

The nightly builds for that repo are here:
   https://builds.shipilev.net/openjdk-jdk17-lilliput/

This should simplify testing even more.

-- 
Thanks,
-Aleksey


From rkennke at openjdk.org  Tue Jan  3 17:53:49 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 3 Jan 2023 17:53:49 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix
 Windows build [v2]
In-Reply-To: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
Message-ID: <pvZ-wSdUb3J0s-VYOe6ejXTQWkDMmXn9aQna6kuuZm0=.6e0ebf01-8518-4e05-a7fc-1a4eee10ccad@github.com>

> These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.
> 
> Ok?
> 
> Thanks,
> Roman

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Use checked_cast instead of static_cast

-------------

Changes:
  - all: https://git.openjdk.org/lilliput-jdk17u/pull/1/files
  - new: https://git.openjdk.org/lilliput-jdk17u/pull/1/files/67c7cd75..3bd83408

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=1&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=1&range=00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/lilliput-jdk17u/pull/1.diff
  Fetch: git fetch https://git.openjdk.org/lilliput-jdk17u pull/1/head:pull/1

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From shade at openjdk.org  Tue Jan  3 17:53:50 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 3 Jan 2023 17:53:50 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix
 Windows build [v2]
In-Reply-To: <pvZ-wSdUb3J0s-VYOe6ejXTQWkDMmXn9aQna6kuuZm0=.6e0ebf01-8518-4e05-a7fc-1a4eee10ccad@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
 <pvZ-wSdUb3J0s-VYOe6ejXTQWkDMmXn9aQna6kuuZm0=.6e0ebf01-8518-4e05-a7fc-1a4eee10ccad@github.com>
Message-ID: <Ghcv5CsgvsveKUY58R4INYFpOsV4L02OrnZ0T--BvPg=.e94ef314-694f-4b1b-85e8-b255aee94a30@github.com>

On Tue, 3 Jan 2023 17:49:07 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.
>> 
>> Ok?
>> 
>> Thanks,
>> Roman
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Use checked_cast instead of static_cast

All right, let's see what it breaks.

-------------

Marked as reviewed by shade (Reviewer).

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From rkennke at openjdk.org  Tue Jan  3 17:53:52 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 3 Jan 2023 17:53:52 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix
 Windows build [v2]
In-Reply-To: <JVUqu8maCgDtxFoAKBfJDh0d2Z5FtyvuwfLz4N4U7qI=.6819864d-fa7a-482a-948a-3a02073660c1@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
 <JVUqu8maCgDtxFoAKBfJDh0d2Z5FtyvuwfLz4N4U7qI=.6819864d-fa7a-482a-948a-3a02073660c1@github.com>
Message-ID: <qDivsnJbHCWRgzamsz95Ie77baj1z6eAYuycf3pCjaY=.5a486216-1521-4ce5-9623-108f8695dab8@github.com>

On Tue, 3 Jan 2023 17:17:24 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Can you explain a bit why this should be `int`, and not `size_t`, like the rest of upstream `object_size()` methods?

It should be size_t, and it is size_t in tip, but it is int in jdk17, and I did not want to go down the rabbit hole of changing this and all the dependencies, and thereby risk to introduce funny bugs. The code is made specifically to not overflow int, and it even checks that. I believe we should be good.

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From rkennke at openjdk.org  Tue Jan  3 18:01:27 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 3 Jan 2023 18:01:27 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299478: [Lilliput/JDK17] Fix
 Windows build [v2]
In-Reply-To: <pvZ-wSdUb3J0s-VYOe6ejXTQWkDMmXn9aQna6kuuZm0=.6e0ebf01-8518-4e05-a7fc-1a4eee10ccad@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
 <pvZ-wSdUb3J0s-VYOe6ejXTQWkDMmXn9aQna6kuuZm0=.6e0ebf01-8518-4e05-a7fc-1a4eee10ccad@github.com>
Message-ID: <bWUCSozF-zkaUlTGCbsDDFzmYiUWQOBJjcLe3S8qXAE=.bff564c3-dfbe-4047-8e37-01803727f555@github.com>

On Tue, 3 Jan 2023 17:53:49 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.
>> 
>> Ok?
>> 
>> Thanks,
>> Roman
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Use checked_cast instead of static_cast

Thanks!

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From rkennke at openjdk.org  Tue Jan  3 18:01:28 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 3 Jan 2023 18:01:28 GMT
Subject: [lilliput-jdk17u:lilliput] Integrated: 8299478: [Lilliput/JDK17] Fix
 Windows build
In-Reply-To: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
References: <-Es4fWxtQq40vS15d5ANOCaJz5Q-uNLRfxdPOegBvuA=.29b9f9fd-f19e-45e2-a70a-4de1b6ed5440@github.com>
Message-ID: <cAwD_nnA6bt1ZXIRJ4LjA0M82-UhXJ_7eIyPf1LOBNg=.6232d056-e98a-41a8-824d-8f705009ed04@github.com>

On Mon, 2 Jan 2023 19:21:24 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> These changes should fix the Windows (and MacOS) build of Lilliput/JDK17. I'm going blindly, here, only guided by GHA.
> 
> Ok?
> 
> Thanks,
> Roman

This pull request has now been integrated.

Changeset: a19d9a40
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput-jdk17u/commit/a19d9a4096e29b8479ea6421f0517965a7e19c9c
Stats:     4 lines in 4 files changed: 0 ins; 0 del; 4 mod

8299478: [Lilliput/JDK17] Fix Windows build

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/1

From rkennke at openjdk.org  Wed Jan  4 13:56:15 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 4 Jan 2023 13:56:15 GMT
Subject: [master] RFR: 8299594: [Lilliput] Revert
 "Replace stack-locking with fast-locking"
Message-ID: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>

I'd like to revert the original fast-locking change and later replace it with the reworked fast-locking (https://github.com/openjdk/jdk/pull/10590). This new version can be turned on/off by a runtime flag, and is also more efficient, because it doesn't need to check the lock stack size on every monitorenter.

The revert is clean.
Testing:
 - [x] local build

-------------

Commit messages:
 - 8299594: [Lilliput] Revert "Replace stack-locking with fast-locking"

Changes: https://git.openjdk.org/lilliput/pull/60/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=60&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8299594
  Stats: 4160 lines in 140 files changed: 2802 ins; 696 del; 662 mod
  Patch: https://git.openjdk.org/lilliput/pull/60.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/60/head:pull/60

PR: https://git.openjdk.org/lilliput/pull/60

From shade at openjdk.org  Wed Jan  4 16:06:21 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Wed, 4 Jan 2023 16:06:21 GMT
Subject: [master] RFR: 8299594: [Lilliput] Revert
 "Replace stack-locking with fast-locking"
In-Reply-To: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>
References: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>
Message-ID: <Xw461UvsCKapYod7_1UYcMI7bJkUOyAi4xcLG0cjQIU=.436faf0e-3c84-4865-8135-f7c6f8efe3d8@github.com>

On Wed, 4 Jan 2023 13:49:21 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to revert the original fast-locking change and later replace it with the reworked fast-locking (https://github.com/openjdk/jdk/pull/10590). This new version can be turned on/off by a runtime flag, and is also more efficient, because it doesn't need to check the lock stack size on every monitorenter.
> 
> The revert is clean.
> Testing:
>  - [x] local build

Looks fine. I wonder if that is one of the issues I am seeing on x86_32.

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/60

From rkennke at openjdk.org  Wed Jan  4 18:00:30 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 4 Jan 2023 18:00:30 GMT
Subject: [master] RFR: 8299594: [Lilliput] Revert
 "Replace stack-locking with fast-locking"
In-Reply-To: <Xw461UvsCKapYod7_1UYcMI7bJkUOyAi4xcLG0cjQIU=.436faf0e-3c84-4865-8135-f7c6f8efe3d8@github.com>
References: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>
 <Xw461UvsCKapYod7_1UYcMI7bJkUOyAi4xcLG0cjQIU=.436faf0e-3c84-4865-8135-f7c6f8efe3d8@github.com>
Message-ID: <o-6S_qmqzs5JjMZQePzXVZLdXnmE3vYwvLn7roiPN4Q=.ea559dee-f4ae-407b-8edb-2cf90fd59314@github.com>

On Wed, 4 Jan 2023 16:03:35 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Looks fine. I wonder if that is one of the issues I am seeing on x86_32.

If you mean the thing in Lilliput/jdk17, then no. In 17, I already pushed the new stack-locking impl. I'm only now bringing Lilliput-tip to the same state.

Thanks!

-------------

PR: https://git.openjdk.org/lilliput/pull/60

From rkennke at openjdk.org  Wed Jan  4 18:00:32 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 4 Jan 2023 18:00:32 GMT
Subject: [master] Integrated: 8299594: [Lilliput] Revert
 "Replace stack-locking with fast-locking"
In-Reply-To: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>
References: <tirNGzF7ePOqR383tGkHlTiY1nlq9rx2pSxCvsMzhX4=.b5070def-839f-44b1-a049-3e973ad43e79@github.com>
Message-ID: <QNdyCRY-xwj2YwVFb0pJifB45WeOz83Syv2qIVoh2aQ=.063233b6-2d76-479f-900f-96db31af94fa@github.com>

On Wed, 4 Jan 2023 13:49:21 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to revert the original fast-locking change and later replace it with the reworked fast-locking (https://github.com/openjdk/jdk/pull/10590). This new version can be turned on/off by a runtime flag, and is also more efficient, because it doesn't need to check the lock stack size on every monitorenter.
> 
> The revert is clean.
> Testing:
>  - [x] local build

This pull request has now been integrated.

Changeset: 16e2a110
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/16e2a110308ce62e009a95a9b9a0e38fc7f9492a
Stats:     4160 lines in 140 files changed: 2802 ins; 696 del; 662 mod

8299594: [Lilliput] Revert "Replace stack-locking with fast-locking"

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/60

From shade at redhat.com  Thu Jan  5 10:15:04 2023
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 5 Jan 2023 11:15:04 +0100
Subject: JDK17 backport repo of Lilliput
In-Reply-To: <91ffa897-11ef-908c-b787-5b17e7d5290c@redhat.com>
References: <59fc9186-e49f-1439-c1ee-c647387a2f2d@amazon.de>
 <91ffa897-11ef-908c-b787-5b17e7d5290c@redhat.com>
Message-ID: <46cca648-5d25-9c25-ddc4-352ea7061d91@redhat.com>

On 1/3/23 18:38, Aleksey Shipilev wrote:
> On 12/14/22 16:49, Kennke, Roman wrote:
>> I've created and seeded a repository for tracking a backport of Lilliput
>> to JDK17:
>>
>> https://github.com/openjdk/lilliput-jdk17u
>>
>> It is forked from openjdk/jdk17u and the intention is to follow this
>> upstream repo at least for the JDK17u GA releases.
>>
>> The intention of it is to make testing easier for users who are on JDK17
>> but cannot easily run JDK20+.
> 
> The nightly builds for that repo are here:
>     https://builds.shipilev.net/openjdk-jdk17-lilliput/

The automatically generated webrev is here:
   https://builds.shipilev.net/patch-openjdk-lilliput-jdk17/

-- 
Thanks,
-Aleksey


From rkennke at openjdk.org  Tue Jan 10 12:44:25 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 10 Jan 2023 12:44:25 GMT
Subject: [master] RFR: Merge jdk:jdk-21+4
Message-ID: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>

Let's merge latest jdk21 tag.

-------------

Commit messages:
 - Merge tag 'jdk-21+4' into merge-jdk21+4
 - 8299439: java/text/Format/NumberFormat/CurrencyFormat.java fails for hr_HR
 - 8299563: Fix typos
 - 8219810: javac throws NullPointerException
 - 8200610: Compiling fails with java.nio.file.ReadOnlyFileSystemException
 - Merge
 - 8299476: PPC64 Zero build fails after JDK-8286302
 - 8293824: gc/whitebox/TestConcMarkCycleWB.java failed "RuntimeException: assertTrue: expected true, was false"
 - 8299483: ProblemList java/text/Format/NumberFormat/CurrencyFormat.java
 - 8298324: Unable to run shell test with make
 - ... and 1276 more: https://git.openjdk.org/lilliput/compare/16e2a110...515ffce7

The webrevs contain the adjustments done while merging with regards to each parent branch:
 - master: https://webrevs.openjdk.org/?repo=lilliput&pr=61&range=00.0
 - jdk:jdk-21+4: https://webrevs.openjdk.org/?repo=lilliput&pr=61&range=00.1

Changes: https://git.openjdk.org/lilliput/pull/61/files
  Stats: 415414 lines in 5864 files changed: 211059 ins; 138427 del; 65928 mod
  Patch: https://git.openjdk.org/lilliput/pull/61.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/61/head:pull/61

PR: https://git.openjdk.org/lilliput/pull/61

From shade at openjdk.org  Tue Jan 10 13:11:37 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 10 Jan 2023 13:11:37 GMT
Subject: [master] RFR: Merge jdk:jdk-21+4
In-Reply-To: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
References: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
Message-ID: <VqNTUS98yiKI60haTOA8sACfG3hHUqVUIMyaPOFJgMQ=.419a2343-658a-477f-acab-743b50f3a9a3@github.com>

On Mon, 9 Jan 2023 19:44:13 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Let's merge latest jdk21 tag.

Marked as reviewed by shade (Committer).

-------------

PR: https://git.openjdk.org/lilliput/pull/61

From rkennke at openjdk.org  Tue Jan 10 19:08:20 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 10 Jan 2023 19:08:20 GMT
Subject: [master] RFR: Merge jdk:jdk-21+4 [v2]
In-Reply-To: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
References: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
Message-ID: <jiRq6-2ginyjMRHcLwm55wJlK-fDWrhPl252xicNZe8=.3ba7838c-6234-4b16-a632-5e71634a117b@github.com>

> Let's merge latest jdk21 tag.

Roman Kennke has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 69 commits:

 - Merge tag 'jdk-21+4' into merge-jdk21+4
   
   Added tag jdk-21+4 for changeset 3b374c01
 - 8299594: [Lilliput] Revert "Replace stack-locking with fast-locking"
   
   Reviewed-by: shade
 - Replace stack-locking with fast-locking
   
   Reviewed-by: shade, stuefe
 - Merge jdk
   
   Reviewed-by: stuefe
 - Merge jdk
   
   Reviewed-by: stuefe
 - Implement Shenandoah support
   
   Reviewed-by: zgu
 - Merge tag 'jdk-19+20' into merge-jdk-19+20
   
   Added tag jdk-19+20 for changeset 16a8ebbf
 - Relax array elements alignment
   
   Reviewed-by: stuefe
 - Merge remote-tracking branch 'jdk-upstream/master'
 - Merge remote-tracking branch 'jdk-upstream/master'
 - ... and 59 more: https://git.openjdk.org/lilliput/compare/3b374c01...515ffce7

-------------

Changes: https://git.openjdk.org/lilliput/pull/61/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=61&range=01
  Stats: 6154 lines in 208 files changed: 4829 ins; 774 del; 551 mod
  Patch: https://git.openjdk.org/lilliput/pull/61.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/61/head:pull/61

PR: https://git.openjdk.org/lilliput/pull/61

From rkennke at openjdk.org  Tue Jan 10 19:08:23 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 10 Jan 2023 19:08:23 GMT
Subject: [master] Integrated: Merge jdk:jdk-21+4
In-Reply-To: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
References: <4DhnlufcJrDK6ArHkHr9bIXS4kUhU6tXUosyXzXwAgE=.7445b0a1-0f5d-438d-bcc7-d8ac5308847a@github.com>
Message-ID: <tlapMV35avxbjZJscHBzRtP8UgxHQHpkKvXsEEPXcn4=.faa663df-8d65-4b4d-839e-12a1fbebecdf@github.com>

On Mon, 9 Jan 2023 19:44:13 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Let's merge latest jdk21 tag.

This pull request has now been integrated.

Changeset: cbacaf02
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/cbacaf023d7d0940a38a6f5ba10b88b0e81cee72
Stats:     415414 lines in 5864 files changed: 211059 ins; 138427 del; 65928 mod

Merge jdk:jdk-21+4

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/61

From evan.saulpaugh at gmail.com  Wed Jan 11 23:26:01 2023
From: evan.saulpaugh at gmail.com (Evan Saulpaugh)
Date: Wed, 11 Jan 2023 17:26:01 -0600
Subject: bad Repository link on wiki
Message-ID: <CACsH+Ykn_U3GJNrhf7y1dXyF_7bOprO_Sp=bo454TQSWDOX1wA@mail.gmail.com>

I noticed that the link to the github page at the bottom of the wiki
page for Project Lilliput is misspelled and so does not work.

"Repository" links to https://github.com/openjdk/liliput instead of
https://github.com/openjdk/lilliput

See https://wiki.openjdk.org/display/lilliput

-Evan Saulpaugh

From rkennke at openjdk.org  Fri Jan 13 08:03:44 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 13 Jan 2023 08:03:44 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299552: [Lilliput/JDK17] Fix 32bit
 builds
Message-ID: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>

32bit builds in Lilliput/JDK17 are broken:

* For target hotspot_variant-server_libjvm_objs_space.o:

-------------

Commit messages:
 - Revert unnecessary change
 - Use passed-in thread register in fast_lock/x86_32 instead of fetching the thread again
 - Move owning_thread_from_monitor() back into Threads, and add check for thread being an active JavaThread
 - Add fast_unlock impl in C2 path of x86_32
 - Allow NULL monitor owners
 - Fix race when fetching owning thread outside of STW pause
 - SA fixes for 32 bits
 - More fixes
 - Exclude C2 parts when C2 is not built
 - Exclude C2LoadNKlassStub from 32bit builds
 - ... and 4 more: https://git.openjdk.org/lilliput-jdk17u/compare/a19d9a40...a0eab51d

Changes: https://git.openjdk.org/lilliput-jdk17u/pull/2/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=2&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8299552
  Stats: 84 lines in 13 files changed: 48 ins; 14 del; 22 mod
  Patch: https://git.openjdk.org/lilliput-jdk17u/pull/2.diff
  Fetch: git fetch https://git.openjdk.org/lilliput-jdk17u pull/2/head:pull/2

PR: https://git.openjdk.org/lilliput-jdk17u/pull/2

From shade at openjdk.org  Fri Jan 13 08:03:45 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Fri, 13 Jan 2023 08:03:45 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299552: [Lilliput/JDK17] Fix
 32bit builds
In-Reply-To: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
References: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
Message-ID: <_jHRdwUiu3luAQYlYOt8NoGpOJ3XjLNCxrzlT1IEpNI=.5d1fec5a-0bfa-4704-be56-ac07bd62e476@github.com>

On Tue, 3 Jan 2023 18:27:22 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> 32bit builds in Lilliput/JDK17 are broken:
> 
> * For target hotspot_variant-server_libjvm_objs_space.o:

There must be a bug in fast-locking somewhere, because x86_32 `make bootcycle-images` asserts hard in `SharedRuntime::monitor_enter_helper`. I suggest we fix those separately. These are the additions I had to make x86_32 builds pass:


diff --git a/src/hotspot/share/gc/g1/heapRegion.inline.hpp b/src/hotspot/share/gc/g1/heapRegion.inline.hpp
index a4b38432ebb..8c40e0337db 100644
--- a/src/hotspot/share/gc/g1/heapRegion.inline.hpp
+++ b/src/hotspot/share/gc/g1/heapRegion.inline.hpp
@@ -184,9 +184,11 @@ inline size_t HeapRegion::block_size(const HeapWord *addr) const {
 
   if (block_is_obj(addr)) {
     oop obj = cast_to_oop(addr);
+#ifdef _LP64
     if (obj->is_forwarded() && CompressedKlassPointers::is_null(obj->mark().narrow_klass())) {
       obj = obj->forwardee();
     }
+#endif
     return obj->size();
   }
 
diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp
index af4d02b3825..4e249e65ae9 100644
--- a/src/hotspot/share/runtime/arguments.cpp
+++ b/src/hotspot/share/runtime/arguments.cpp
@@ -3154,7 +3154,10 @@ jint Arguments::finalize_vm_init_args(bool patch_mod_javabase) {
 #endif // CAN_SHOW_REGISTERS_ON_ASSERT
 
   // Lilliput requires fast-locking.
+  // FIXME: x86_32 has problems with fast locking, disable it temporarily.
+#ifdef _LP64
   FLAG_SET_DEFAULT(UseFastLocking, true);
+#endif
   FLAG_SET_DEFAULT(UseBiasedLocking, false);
 #ifdef _LP64
   FLAG_SET_DEFAULT(UseCompressedClassPointers, true);

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/2

From shade at openjdk.org  Fri Jan 13 17:46:14 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Fri, 13 Jan 2023 17:46:14 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299552: [Lilliput/JDK17] Fix
 32bit builds
In-Reply-To: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
References: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
Message-ID: <fJwqQynWETrzY9s2D1BvBR7FbjoMVUX4osChC4QTrAo=.b087feb9-0d84-4ed5-b819-13a6caef0649@github.com>

On Tue, 3 Jan 2023 18:27:22 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> 32bit builds in Lilliput/JDK17 are broken:
> 
> * For target hotspot_variant-server_libjvm_objs_space.o:

Looks okay, but I have not reviewed the locking code additions carefully. I assume they match what `_LP64` paths are doing.

-------------

Marked as reviewed by shade (Reviewer).

PR: https://git.openjdk.org/lilliput-jdk17u/pull/2

From rkennke at openjdk.org  Fri Jan 13 19:04:55 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 13 Jan 2023 19:04:55 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8299552: [Lilliput/JDK17] Fix
 32bit builds
In-Reply-To: <fJwqQynWETrzY9s2D1BvBR7FbjoMVUX4osChC4QTrAo=.b087feb9-0d84-4ed5-b819-13a6caef0649@github.com>
References: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
 <fJwqQynWETrzY9s2D1BvBR7FbjoMVUX4osChC4QTrAo=.b087feb9-0d84-4ed5-b819-13a6caef0649@github.com>
Message-ID: <Nr-_mS3JKFThEj_Svdvwvg0h5jFd3eOx7kpqVvAdjn4=.9b9838a6-9741-45ef-bb4a-2600f9e59baf@github.com>

On Fri, 13 Jan 2023 17:43:23 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Looks okay, but I have not reviewed the locking code additions carefully. I assume they match what `_LP64` paths are doing.

Yes. It brings x86_32 closer to what x86_64 is doing.

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/2

From rkennke at openjdk.org  Fri Jan 13 19:04:57 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 13 Jan 2023 19:04:57 GMT
Subject: [lilliput-jdk17u:lilliput] Integrated: 8299552: [Lilliput/JDK17] Fix
 32bit builds
In-Reply-To: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
References: <hR9FDNhcxhsCKaAYT0HdmCcfwXlc6z5qkPXjvzgYVgM=.27e85d5f-4178-4acd-b538-4a5ba920b774@github.com>
Message-ID: <deCY7iizEYg5GbrCYWWz_FWHf7vmXPwgSEz0rLfXbwU=.dad70e03-ddd5-4fec-a604-8bb2f025e4f3@github.com>

On Tue, 3 Jan 2023 18:27:22 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> 32bit builds in Lilliput/JDK17 are broken:
> 
> * For target hotspot_variant-server_libjvm_objs_space.o:

This pull request has now been integrated.

Changeset: 8a18385a
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput-jdk17u/commit/8a18385a70b820fc3965ba8500f8ead308313aff
Stats:     84 lines in 13 files changed: 48 ins; 14 del; 22 mod

8299552: [Lilliput/JDK17] Fix 32bit builds

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/2

From rkennke at openjdk.org  Fri Jan 13 20:26:04 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 13 Jan 2023 20:26:04 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8300138: [Lilliput/JDK17] Optimize
 anonymous owner fix-up path
Message-ID: <0YWDdcVhAJdhT1W9oSNnf1_IBlbDaNyMNP6DjA0LoX0=.1d47804e-6425-4833-a97e-8f2ef1d64a5b@github.com>

I'd like to push this optimization to Lilliput/JDK17. I already included it in the [upstream fast-locking change](https://github.com/openjdk/jdk/pull/10907), soon to be merged into Lilliput tip. It simplifies the fast-unlocking code and makes it more efficient. See JBS entry for more details.

Testing:
 - [x] tier1
 - [x] tier2

-------------

Commit messages:
 - Use testb instead of testptr for anon-test
 - Missing testptr with Address arg
 - 8300138: [Lilliput/JDK17] Optimize anonymous owner fix-up path

Changes: https://git.openjdk.org/lilliput-jdk17u/pull/3/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=3&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300138
  Stats: 21 lines in 3 files changed: 7 ins; 9 del; 5 mod
  Patch: https://git.openjdk.org/lilliput-jdk17u/pull/3.diff
  Fetch: git fetch https://git.openjdk.org/lilliput-jdk17u pull/3/head:pull/3

PR: https://git.openjdk.org/lilliput-jdk17u/pull/3

From shade at openjdk.org  Mon Jan 16 11:53:47 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Mon, 16 Jan 2023 11:53:47 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8300138: [Lilliput/JDK17] Optimize
 anonymous owner fix-up path
In-Reply-To: <0YWDdcVhAJdhT1W9oSNnf1_IBlbDaNyMNP6DjA0LoX0=.1d47804e-6425-4833-a97e-8f2ef1d64a5b@github.com>
References: <0YWDdcVhAJdhT1W9oSNnf1_IBlbDaNyMNP6DjA0LoX0=.1d47804e-6425-4833-a97e-8f2ef1d64a5b@github.com>
Message-ID: <sLTwZ79PUJxlPLYUGn79D70oHH6zigDzXV0-j8mZqLE=.1fd0158c-b4b9-4b34-8f16-5a4209aab6ad@github.com>

On Fri, 13 Jan 2023 19:28:23 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to push this optimization to Lilliput/JDK17. I already included it in the [upstream fast-locking change](https://github.com/openjdk/jdk/pull/10907), soon to be merged into Lilliput tip. It simplifies the fast-unlocking code and makes it more efficient. See JBS entry for more details.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Marked as reviewed by shade (Reviewer).

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/3

From rkennke at openjdk.org  Mon Jan 16 12:01:52 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 16 Jan 2023 12:01:52 GMT
Subject: [lilliput-jdk17u:lilliput] Integrated: 8300138: [Lilliput/JDK17]
 Optimize anonymous owner fix-up path
In-Reply-To: <0YWDdcVhAJdhT1W9oSNnf1_IBlbDaNyMNP6DjA0LoX0=.1d47804e-6425-4833-a97e-8f2ef1d64a5b@github.com>
References: <0YWDdcVhAJdhT1W9oSNnf1_IBlbDaNyMNP6DjA0LoX0=.1d47804e-6425-4833-a97e-8f2ef1d64a5b@github.com>
Message-ID: <5NVKl4eHwmPAe1_ArvctgfqPDKb83Cmb9Ayn3B9YOas=.f0e17be7-5720-4adc-b2cb-ef4ac935c99d@github.com>

On Fri, 13 Jan 2023 19:28:23 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to push this optimization to Lilliput/JDK17. I already included it in the [upstream fast-locking change](https://github.com/openjdk/jdk/pull/10907), soon to be merged into Lilliput tip. It simplifies the fast-unlocking code and makes it more efficient. See JBS entry for more details.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

This pull request has now been integrated.

Changeset: 2d0f8d96
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput-jdk17u/commit/2d0f8d96792ad643f241e6c61529b28529671ce3
Stats:     21 lines in 3 files changed: 7 ins; 9 del; 5 mod

8300138: [Lilliput/JDK17] Optimize anonymous owner fix-up path

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/3

From rkennke at openjdk.org  Wed Jan 18 08:22:07 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 18 Jan 2023 08:22:07 GMT
Subject: [master] RFR: 8300440: [Lilliput] Implement alternative fast-locking
 scheme
Message-ID: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>

This cherry-picks https://github.com/openjdk/jdk/pull/10907 before it lands in mainline JDK. It will:
- Greatly simply access to the header in the face of racy stack-locking
- Enable some optimizations in various places, most importantly accessing Klass* and i-hash
- Enable full SA support
- Enable full ZGC support
- Enable adding a runtime flag to turn on/off Lilliput

However, this PR implements none of the above. It is a straight port of the upstream change, and fast-locking is *not yet* enabled with Lilliput. This is going to happen in a follow-up PR.

Testing and performance impact, see upstream PR.

Ok to push to Lilliput?

-------------

Commit messages:
 - 8300440: [Lilliput] Implement alternative fast-locking scheme

Changes: https://git.openjdk.org/lilliput/pull/62/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=62&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300440
  Stats: 1925 lines in 74 files changed: 1213 ins; 97 del; 615 mod
  Patch: https://git.openjdk.org/lilliput/pull/62.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/62/head:pull/62

PR: https://git.openjdk.org/lilliput/pull/62

From shade at openjdk.org  Wed Jan 18 10:17:56 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Wed, 18 Jan 2023 10:17:56 GMT
Subject: [master] RFR: 8300440: [Lilliput] Implement alternative
 fast-locking scheme
In-Reply-To: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
References: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
Message-ID: <h6afq93UUSVhkE_lEFp7SS9w5Y1vrOYglssm9N-gvLI=.667330a1-66b0-467a-9224-53f6d08c5a53@github.com>

On Wed, 18 Jan 2023 08:14:51 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> This cherry-picks https://github.com/openjdk/jdk/pull/10907 before it lands in mainline JDK. It will:
> - Greatly simply access to the header in the face of racy stack-locking
> - Enable some optimizations in various places, most importantly accessing Klass* and i-hash
> - Enable full SA support
> - Enable full ZGC support
> - Enable adding a runtime flag to turn on/off Lilliput
> 
> However, this PR implements none of the above. It is a straight port of the upstream change, and fast-locking is *not yet* enabled with Lilliput. This is going to happen in a follow-up PR.
> 
> Testing and performance impact, see upstream PR.
> 
> Ok to push to Lilliput?

OK for Lilliput.

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/62

From rkennke at openjdk.org  Wed Jan 18 13:05:27 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 18 Jan 2023 13:05:27 GMT
Subject: [master] RFR: 8300440: [Lilliput] Implement alternative
 fast-locking scheme
In-Reply-To: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
References: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
Message-ID: <JaUdIQnEkJt9t92W3N27I2MA6KrmEmySgLrcigojhVc=.637435e0-f8f7-4cef-bdb8-871f27ae194b@github.com>

On Wed, 18 Jan 2023 08:14:51 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> This cherry-picks https://github.com/openjdk/jdk/pull/10907 before it lands in mainline JDK. It will:
> - Greatly simply access to the header in the face of racy stack-locking
> - Enable some optimizations in various places, most importantly accessing Klass* and i-hash
> - Enable full SA support
> - Enable full ZGC support
> - Enable adding a runtime flag to turn on/off Lilliput
> 
> However, this PR implements none of the above. It is a straight port of the upstream change, and fast-locking is *not yet* enabled with Lilliput. This is going to happen in a follow-up PR.
> 
> Testing and performance impact, see upstream PR.
> 
> Ok to push to Lilliput?

Thanks, Aleksey!

-------------

PR: https://git.openjdk.org/lilliput/pull/62

From rkennke at openjdk.org  Wed Jan 18 13:12:45 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 18 Jan 2023 13:12:45 GMT
Subject: [master] Integrated: 8300440: [Lilliput] Implement alternative
 fast-locking scheme
In-Reply-To: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
References: <dH-uqmMoECY1uCt2WcFxTlVUnqfdIRx7getxPct_OhI=.a8dc0610-51fd-49d6-8ba1-9ec934678d54@github.com>
Message-ID: <3zLWga6fsQ4WQ43sJswjSOAi3swsOGbAg9xUZ5YkEOI=.b18556fe-98d2-47b0-aa4a-249cdf064271@github.com>

On Wed, 18 Jan 2023 08:14:51 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> This cherry-picks https://github.com/openjdk/jdk/pull/10907 before it lands in mainline JDK. It will:
> - Greatly simply access to the header in the face of racy stack-locking
> - Enable some optimizations in various places, most importantly accessing Klass* and i-hash
> - Enable full SA support
> - Enable full ZGC support
> - Enable adding a runtime flag to turn on/off Lilliput
> 
> However, this PR implements none of the above. It is a straight port of the upstream change, and fast-locking is *not yet* enabled with Lilliput. This is going to happen in a follow-up PR.
> 
> Testing and performance impact, see upstream PR.
> 
> Ok to push to Lilliput?

This pull request has now been integrated.

Changeset: 989cf15c
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/989cf15c170545ed376e007eafdb31a0c163045b
Stats:     1925 lines in 74 files changed: 1213 ins; 97 del; 615 mod

8300440: [Lilliput] Implement alternative fast-locking scheme

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/62

From rkennke at openjdk.org  Wed Jan 18 17:17:59 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 18 Jan 2023 17:17:59 GMT
Subject: [master] RFR: 8300573: [Lilliput] Properly set ZF on anon-check path; 
 avoid some conditional branches
Message-ID: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>

In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.

The change also removes some conditional branches.

All of the changes have already been integrated into the upstream proposed PR: https://github.com/openjdk/jdk/pull/10907/

Testing:
 - [x] tier1
 - [x] tier2

-------------

Commit messages:
 - 8300573: [Lilliput] Properly set ZF on anon-check path; avoid some conditional branches

Changes: https://git.openjdk.org/lilliput/pull/63/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=63&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300573
  Stats: 19 lines in 1 file changed: 12 ins; 2 del; 5 mod
  Patch: https://git.openjdk.org/lilliput/pull/63.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/63/head:pull/63

PR: https://git.openjdk.org/lilliput/pull/63

From rkennke at openjdk.org  Wed Jan 18 17:28:02 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Wed, 18 Jan 2023 17:28:02 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8300566: [Lilliput/JDK17] Properly set
 ZF on anon-check path
Message-ID: <Hxy1fRse1ScHJk4zOwo_1u1NwUB1aK-zxVDwCYX_D88=.239987f6-9d0b-4234-90c0-f10c6071d21d@github.com>

In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.

-------------

Commit messages:
 - 8300566: [Lilliput/JDK17] Properly set ZF on anon-check path

Changes: https://git.openjdk.org/lilliput-jdk17u/pull/4/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput-jdk17u&pr=4&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300566
  Stats: 5 lines in 1 file changed: 4 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/lilliput-jdk17u/pull/4.diff
  Fetch: git fetch https://git.openjdk.org/lilliput-jdk17u pull/4/head:pull/4

PR: https://git.openjdk.org/lilliput-jdk17u/pull/4

From shade at openjdk.org  Thu Jan 19 11:00:52 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Thu, 19 Jan 2023 11:00:52 GMT
Subject: [lilliput-jdk17u:lilliput] RFR: 8300566: [Lilliput/JDK17] Properly
 set ZF on anon-check path
In-Reply-To: <Hxy1fRse1ScHJk4zOwo_1u1NwUB1aK-zxVDwCYX_D88=.239987f6-9d0b-4234-90c0-f10c6071d21d@github.com>
References: <Hxy1fRse1ScHJk4zOwo_1u1NwUB1aK-zxVDwCYX_D88=.239987f6-9d0b-4234-90c0-f10c6071d21d@github.com>
Message-ID: <fsqWnXkDmFCqHYgJ8EXfiKrBrNaQevRGo-AfyLUVy4g=.2129542b-5f8b-46ca-b282-d91a73a52173@github.com>

On Wed, 18 Jan 2023 16:07:01 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.

Marked as reviewed by shade (Reviewer).

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/4

From rkennke at openjdk.org  Fri Jan 20 09:27:09 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 09:27:09 GMT
Subject: [master] RFR: 8300733: [Lilliput] Enable fast-locking for Lilliput
Message-ID: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>

Fast-locking provides many advantages for Lilliput. Most importantly, it greatly simplifies the access of the mark word: we no longer need to handle the case of stack-locking which has been racy and complicated.

This change enables fast-locking, but doesn't yet touch any of the improvements that it provides (simpler loading of Klass*, etc).

Testing:
 - [x] tier1
 - [x] tier2

-------------

Commit messages:
 - [Lilliput] Enable fast-locking for Lilliput

Changes: https://git.openjdk.org/lilliput/pull/64/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=64&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300733
  Stats: 7 lines in 4 files changed: 3 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/lilliput/pull/64.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/64/head:pull/64

PR: https://git.openjdk.org/lilliput/pull/64

From rkennke at openjdk.org  Fri Jan 20 10:33:08 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 10:33:08 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
Message-ID: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>

I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.

-------------

Commit messages:
 - Adjust jcheck config to require JBS issue
 - 8300735: [Lilliput] Adjust GHA for Lilliput

Changes: https://git.openjdk.org/lilliput/pull/65/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=65&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300735
  Stats: 1786 lines in 3 files changed: 3 ins; 1782 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/65.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/65/head:pull/65

PR: https://git.openjdk.org/lilliput/pull/65

From shade at openjdk.org  Fri Jan 20 10:33:08 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Fri, 20 Jan 2023 10:33:08 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
In-Reply-To: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
Message-ID: <rmTvq8T_N0QFbE6iIWY0hn49n-ty8UInpKXJ6qSoznI=.049eef9c-8fad-4aab-8e43-b1fc2786f500@github.com>

On Fri, 20 Jan 2023 09:33:04 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
> I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.

I think it would be enough to just trim the defaults here:


 default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows aarch64, Windows x64, macOS x64"

-------------

PR: https://git.openjdk.org/lilliput/pull/65

From rkennke at openjdk.org  Fri Jan 20 10:58:40 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 10:58:40 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
 [v2]
In-Reply-To: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
Message-ID: <TKT5aH17p2vKwPRrfEHQX6YhrGM_mT4gJpil9gM1MKs=.a4cfbc7d-9354-4a89-b261-224b083b7200@github.com>

> I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
> I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.

Roman Kennke has updated the pull request incrementally with two additional commits since the last revision:

 - Attempt to minimize GHA changes
 - Revert "8300735: [Lilliput] Adjust GHA for Lilliput"
   
   This reverts commit 1e11978b821f1581147856330f2b26715e7046c2.

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/65/files
  - new: https://git.openjdk.org/lilliput/pull/65/files/e2ee6f43..884c5fc5

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=65&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=65&range=00-01

  Stats: 16 lines in 1 file changed: 16 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/lilliput/pull/65.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/65/head:pull/65

PR: https://git.openjdk.org/lilliput/pull/65

From rkennke at openjdk.org  Fri Jan 20 10:58:42 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 10:58:42 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
In-Reply-To: <rmTvq8T_N0QFbE6iIWY0hn49n-ty8UInpKXJ6qSoznI=.049eef9c-8fad-4aab-8e43-b1fc2786f500@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
 <rmTvq8T_N0QFbE6iIWY0hn49n-ty8UInpKXJ6qSoznI=.049eef9c-8fad-4aab-8e43-b1fc2786f500@github.com>
Message-ID: <5xHWFkcgHxh6zD2I_ThBXMroXBT1hJyQVcM1dQp9Tfc=.e200cd2e-b5a0-4157-b614-1c4be15bfda6@github.com>

On Fri, 20 Jan 2023 10:12:08 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> I think it would be enough to just trim the defaults here:
> 
> ```
>  default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows aarch64, Windows x64, macOS x64"
> ```

That line only exists in the removed submit.yml. I am trying to trim the 3 unsupported arches in build-cross-compile.yml without removing the actual configurations. Let's see if that works. Also, let me know if you think there is a better way. I would like to keep the linux-aarch64 x-compile target.

-------------

PR: https://git.openjdk.org/lilliput/pull/65

From rkennke at openjdk.org  Fri Jan 20 12:28:16 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 12:28:16 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
 [v3]
In-Reply-To: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
Message-ID: <4FOq4ZC3SDdt3eUIqTQ0v3qNyqzwn97aEuPJmU9yj-Y=.b6be22d5-e885-42c5-a09d-bbc3ef2a9abf@github.com>

> I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
> I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Remove unsupported x-compile includes

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/65/files
  - new: https://git.openjdk.org/lilliput/pull/65/files/884c5fc5..21391524

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=65&range=02
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=65&range=01-02

  Stats: 16 lines in 1 file changed: 0 ins; 16 del; 0 mod
  Patch: https://git.openjdk.org/lilliput/pull/65.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/65/head:pull/65

PR: https://git.openjdk.org/lilliput/pull/65

From shade at openjdk.org  Fri Jan 20 16:04:44 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Fri, 20 Jan 2023 16:04:44 GMT
Subject: [master] RFR: 8300573: [Lilliput] Properly set ZF on anon-check
 path; avoid some conditional branches
In-Reply-To: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
References: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
Message-ID: <H-mv3xvRKXxvb9lGEQEXix4r1K4mVcGt2WgIVovApA4=.9854be1b-23b9-41e0-9b6b-6eb336158847@github.com>

On Wed, 18 Jan 2023 17:11:02 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.
> 
> The change also removes some conditional branches.
> 
> All of the changes have already been integrated into the upstream proposed PR: https://github.com/openjdk/jdk/pull/10907/
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Uff. `cont` and `count` look cunningly similar. Anyway!

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/63

From shade at openjdk.org  Fri Jan 20 18:02:58 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Fri, 20 Jan 2023 18:02:58 GMT
Subject: [master] RFR: 8300735: [Lilliput] Adjust GHA and jcheck config
 [v3]
In-Reply-To: <4FOq4ZC3SDdt3eUIqTQ0v3qNyqzwn97aEuPJmU9yj-Y=.b6be22d5-e885-42c5-a09d-bbc3ef2a9abf@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
 <4FOq4ZC3SDdt3eUIqTQ0v3qNyqzwn97aEuPJmU9yj-Y=.b6be22d5-e885-42c5-a09d-bbc3ef2a9abf@github.com>
Message-ID: <qj0cbqthETQJzcoMaHz6yu0F2-rgsXIalpUgKCpRRDY=.a87f7a22-786e-4766-b16b-447f48d7413c@github.com>

On Fri, 20 Jan 2023 12:28:16 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
>> I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove unsupported x-compile includes

Marked as reviewed by shade (Committer).

-------------

PR: https://git.openjdk.org/lilliput/pull/65

From rkennke at openjdk.org  Fri Jan 20 19:39:27 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 19:39:27 GMT
Subject: [master] Integrated: 8300735: [Lilliput] Adjust GHA and jcheck config
In-Reply-To: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
References: <mfdyjuafMLmzehTuj80a3dgAw18hY9Z9vX75NWx8cEM=.4dae03d5-00a9-40c1-aec0-bcded98eb76a@github.com>
Message-ID: <3YQBI1uDnOxDIMF7FqiP9r2Ev4sCxAGGqOf9UI3Jbbo=.b433e503-1517-4076-b5ed-0fab754ea8cf@github.com>

On Fri, 20 Jan 2023 09:33:04 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> I'd like to exclude not-yet-supported platforms that are failing in GHA (ppc64le, risc64, s390x). Also, we should remove a stale submit.yml.
> I would also like to adjust jcheck to require a JBS issue for each PR, as I have recently begun to do. This improves traceability and discoverability of Lilliput work in JBS.

This pull request has now been integrated.

Changeset: c1f3eb2b
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/c1f3eb2b56e68ab3950360c6415fc7833cb353ff
Stats:     1786 lines in 3 files changed: 3 ins; 1782 del; 1 mod

8300735: [Lilliput] Adjust GHA and jcheck config

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/65

From rkennke at openjdk.org  Fri Jan 20 19:41:00 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 19:41:00 GMT
Subject: [master] RFR: 8300733: [Lilliput] Enable fast-locking for Lilliput
 [v2]
In-Reply-To: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
References: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
Message-ID: <UpmYDntS_FWu58bHRceRgdVUlGlCkt8nqPe8gW_j3m4=.770e5a78-4a9c-4efd-947c-0178dfc823b8@github.com>

> Fast-locking provides many advantages for Lilliput. Most importantly, it greatly simplifies the access of the mark word: we no longer need to handle the case of stack-locking which has been racy and complicated.
> 
> This change enables fast-locking, but doesn't yet touch any of the improvements that it provides (simpler loading of Klass*, etc).
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Roman Kennke 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 two additional commits since the last revision:

 - Merge branch 'master' into JDK-8300733
 - [Lilliput] Enable fast-locking for Lilliput

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/64/files
  - new: https://git.openjdk.org/lilliput/pull/64/files/edffb491..4ced8f55

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=64&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=64&range=00-01

  Stats: 1786 lines in 3 files changed: 3 ins; 1782 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/64.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/64/head:pull/64

PR: https://git.openjdk.org/lilliput/pull/64

From rkennke at openjdk.org  Fri Jan 20 19:41:04 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 20 Jan 2023 19:41:04 GMT
Subject: [master] RFR: 8300573: [Lilliput] Properly set ZF on anon-check
 path; avoid some conditional branches [v2]
In-Reply-To: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
References: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
Message-ID: <YHaeLUja0ONFnxCWEeAgucvnmRykww_mR8-It7oiXlQ=.3306f66d-a47b-430b-8a9c-15ee1abaf270@github.com>

> In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.
> 
> The change also removes some conditional branches.
> 
> All of the changes have already been integrated into the upstream proposed PR: https://github.com/openjdk/jdk/pull/10907/
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Roman Kennke 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 two additional commits since the last revision:

 - Merge branch 'master' into JDK-8300573
 - 8300573: [Lilliput] Properly set ZF on anon-check path; avoid some conditional branches

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/63/files
  - new: https://git.openjdk.org/lilliput/pull/63/files/c6726ed0..399b85f3

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=63&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=63&range=00-01

  Stats: 1786 lines in 3 files changed: 3 ins; 1782 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/63.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/63/head:pull/63

PR: https://git.openjdk.org/lilliput/pull/63

From rkennke at openjdk.org  Mon Jan 23 08:02:23 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 23 Jan 2023 08:02:23 GMT
Subject: git: openjdk/lilliput-jdk17u: lilliput: 8300566: [Lilliput/JDK17]
 Properly set ZF on anon-check path
Message-ID: <6ff9ca9d-2485-4e5d-a9a5-c90c26469308@openjdk.org>

Changeset: 685351d2
Author:    Roman Kennke <rkennke at openjdk.org>
Date:      2023-01-23 07:57:45 +0000
URL:       https://git.openjdk.org/lilliput-jdk17u/commit/685351d2897a53f93ed4b9fd765113386410a96e

8300566: [Lilliput/JDK17] Properly set ZF on anon-check path

Reviewed-by: shade

! src/hotspot/cpu/aarch64/aarch64.ad


From rkennke at openjdk.org  Mon Jan 23 08:05:36 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 23 Jan 2023 08:05:36 GMT
Subject: [master] Integrated: 8300573: [Lilliput] Properly set ZF on anon-check
 path; avoid some conditional branches
In-Reply-To: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
References: <tKCv0ogPCMYVyC6ciJU8r1YC5CKpjb_rpq96Sx0TtN0=.bb38dc0a-5157-43f7-9902-095d87b77354@github.com>
Message-ID: <I3qV4esXBLMQO05ZBODNRYXd-mQSYcuF5mol40Jmp_4=.3ec613ca-84f4-41ef-91fd-eda0ff51c445@github.com>

On Wed, 18 Jan 2023 17:11:02 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.
> 
> The change also removes some conditional branches.
> 
> All of the changes have already been integrated into the upstream proposed PR: https://github.com/openjdk/jdk/pull/10907/
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

This pull request has now been integrated.

Changeset: 89bd889d
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/89bd889d0a1a115aba605726f70b07c8f222b0e0
Stats:     19 lines in 1 file changed: 12 ins; 2 del; 5 mod

8300573: [Lilliput] Properly set ZF on anon-check path; avoid some conditional branches

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/63

From rkennke at openjdk.org  Mon Jan 23 08:06:35 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 23 Jan 2023 08:06:35 GMT
Subject: [lilliput-jdk17u:lilliput] Integrated: 8300566: [Lilliput/JDK17]
 Properly set ZF on anon-check path
In-Reply-To: <Hxy1fRse1ScHJk4zOwo_1u1NwUB1aK-zxVDwCYX_D88=.239987f6-9d0b-4234-90c0-f10c6071d21d@github.com>
References: <Hxy1fRse1ScHJk4zOwo_1u1NwUB1aK-zxVDwCYX_D88=.239987f6-9d0b-4234-90c0-f10c6071d21d@github.com>
Message-ID: <W14Ef2JeoJXwhHqYDuPUsk8LrX-D0a0-OFYAoX5wiF0=.9087edea-fdcc-423d-8291-3df892719f4d@github.com>

On Wed, 18 Jan 2023 16:07:01 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In AArch64's fast_unlock(), we need to check if the monitor owner is ANONYMOUS (only with Lilliput/fast-locking), and if so, call the runtime to fix this before exiting the monitor. I tried to be smart and used tbnz there, but it turns out that tbnz does *not* set the zero flag, but we do need the ZF set correctly on exit of fast_unlock, so that C2 generated code would actually call the slow path. Therefore we need to use the longer tst/br instructions instead.

This pull request has now been integrated.

Changeset: 685351d2
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput-jdk17u/commit/685351d2897a53f93ed4b9fd765113386410a96e
Stats:     5 lines in 1 file changed: 4 ins; 0 del; 1 mod

8300566: [Lilliput/JDK17] Properly set ZF on anon-check path

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput-jdk17u/pull/4

From rkennke at openjdk.org  Mon Jan 23 10:42:02 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 23 Jan 2023 10:42:02 GMT
Subject: [master] RFR: 8300733: [Lilliput] Enable fast-locking for Lilliput
 [v3]
In-Reply-To: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
References: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
Message-ID: <6eLxxyS45b5wz7f5uGZ6pCqPrwGMx2cITY8l6GgzzEA=.c2f821f7-c6b5-4749-b8d0-f3b033c7d3c7@github.com>

> Fast-locking provides many advantages for Lilliput. Most importantly, it greatly simplifies the access of the mark word: we no longer need to handle the case of stack-locking which has been racy and complicated.
> 
> This change enables fast-locking, but doesn't yet touch any of the improvements that it provides (simpler loading of Klass*, etc).
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Fix/revert Shenandoah forwarding protocol to not use INFLATING 2-step

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/64/files
  - new: https://git.openjdk.org/lilliput/pull/64/files/4ced8f55..45e13179

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=64&range=02
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=64&range=01-02

  Stats: 20 lines in 1 file changed: 0 ins; 13 del; 7 mod
  Patch: https://git.openjdk.org/lilliput/pull/64.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/64/head:pull/64

PR: https://git.openjdk.org/lilliput/pull/64

From shade at openjdk.org  Mon Jan 23 17:03:50 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Mon, 23 Jan 2023 17:03:50 GMT
Subject: [master] RFR: 8300733: [Lilliput] Enable fast-locking for Lilliput
 [v3]
In-Reply-To: <6eLxxyS45b5wz7f5uGZ6pCqPrwGMx2cITY8l6GgzzEA=.c2f821f7-c6b5-4749-b8d0-f3b033c7d3c7@github.com>
References: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
 <6eLxxyS45b5wz7f5uGZ6pCqPrwGMx2cITY8l6GgzzEA=.c2f821f7-c6b5-4749-b8d0-f3b033c7d3c7@github.com>
Message-ID: <kGg8jJGVixfxBqkg1_6guQqhz_6g8osC5Bl_Jp3ltoM=.c1a0b4de-95c1-4bf8-b503-3f659b7d831c@github.com>

On Mon, 23 Jan 2023 10:42:02 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> Fast-locking provides many advantages for Lilliput. Most importantly, it greatly simplifies the access of the mark word: we no longer need to handle the case of stack-locking which has been racy and complicated.
>> 
>> This change enables fast-locking, but doesn't yet touch any of the improvements that it provides (simpler loading of Klass*, etc).
>> 
>> Testing:
>>  - [x] tier1
>>  - [x] tier2
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix/revert Shenandoah forwarding protocol to not use INFLATING 2-step

Marked as reviewed by shade (Committer).

-------------

PR: https://git.openjdk.org/lilliput/pull/64

From rkennke at openjdk.org  Mon Jan 23 19:08:11 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Mon, 23 Jan 2023 19:08:11 GMT
Subject: [master] Integrated: 8300733: [Lilliput] Enable fast-locking for
 Lilliput
In-Reply-To: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
References: <sfg_8FSt-559lQcuMLjh7OheRgesUDsTwJv4pgMembU=.abd3f9c1-8fb6-4493-bccb-9ee3195fdc02@github.com>
Message-ID: <lNdgGfsqxLacm7L-RxsbzvMpoyOK1pdcSEXbZ3AaTZE=.e1ea3e39-492e-4e2a-99b5-da6905158009@github.com>

On Fri, 20 Jan 2023 09:19:06 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Fast-locking provides many advantages for Lilliput. Most importantly, it greatly simplifies the access of the mark word: we no longer need to handle the case of stack-locking which has been racy and complicated.
> 
> This change enables fast-locking, but doesn't yet touch any of the improvements that it provides (simpler loading of Klass*, etc).
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

This pull request has now been integrated.

Changeset: bf6823a4
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/bf6823a470dabfb691d3837244d82c16a857e5ae
Stats:     27 lines in 5 files changed: 3 ins; 13 del; 11 mod

8300733: [Lilliput] Enable fast-locking for Lilliput

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/64

From rkennke at openjdk.org  Tue Jan 24 16:03:30 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 16:03:30 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the SA
Message-ID: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>

With fast-locking, it is now possible to provide a safe implementation of load-Klass* (following the same principle as in the runtime: load mark, check for monitor, possibly load real mark from monitor, decode Klass* from mark). This change also fixes array layout calculation and un-blocks a number of SA tests that did not work before.

-------------

Commit messages:
 - X8300888: [Lilliput] Remaining missing parts in the SA

Changes: https://git.openjdk.org/lilliput/pull/67/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=67&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300888
  Stats: 129 lines in 7 files changed: 39 ins; 77 del; 13 mod
  Patch: https://git.openjdk.org/lilliput/pull/67.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/67/head:pull/67

PR: https://git.openjdk.org/lilliput/pull/67

From rkennke at openjdk.org  Tue Jan 24 16:03:35 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 16:03:35 GMT
Subject: [master] RFR: 8300527: [Lilliput] Simplify and optimize loading of
 Klass*
Message-ID: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>

With the new fast-locking, we can greatly simplify the loading of the Klass* from an object. We no longer have to call into the runtime to ensure that the header is changed under our feet (by installing the INFLATION marker). Instead, we can do a simple check for the object being monitor-locked, and safely load the displaced header, if that is the case.

-------------

Commit messages:
 - Add missing includes
 - Fix merge error
 - Merge branch 'master' into JDK-8300527
 - 8300527: [Lilliput] Simplify and optimize loading of Klass*
 - Fix/revert Shenandoah forwarding protocol to not use INFLATING 2-step
 - Merge branch 'master' into JDK-8300733
 - [Lilliput] Enable fast-locking for Lilliput

Changes: https://git.openjdk.org/lilliput/pull/66/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=66&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8300527
  Stats: 390 lines in 28 files changed: 76 ins; 279 del; 35 mod
  Patch: https://git.openjdk.org/lilliput/pull/66.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/66/head:pull/66

PR: https://git.openjdk.org/lilliput/pull/66

From duke at openjdk.org  Tue Jan 24 16:05:06 2023
From: duke at openjdk.org (duke)
Date: Tue, 24 Jan 2023 16:05:06 GMT
Subject: git: openjdk/lilliput: created branch pr/66 based on the branch pr/67
 containing 7 unique commits
Message-ID: <4dc8c560-f322-4a29-952e-93405234d75f@openjdk.org>

The following commits are unique to the pr/66 branch:
========================================================
edffb491: [Lilliput] Enable fast-locking for Lilliput
4ced8f55: Merge branch 'master' into JDK-8300733
45e13179: Fix/revert Shenandoah forwarding protocol to not use INFLATING 2-step
01627ba3: 8300527: [Lilliput] Simplify and optimize loading of Klass*
d8c3961a: Merge branch 'master' into JDK-8300527
828f3513: Fix merge error
83c65c16: Add missing includes

From duke at openjdk.org  Tue Jan 24 16:05:08 2023
From: duke at openjdk.org (duke)
Date: Tue, 24 Jan 2023 16:05:08 GMT
Subject: git: openjdk/lilliput: created branch pr/67 based on the branch pr/66
 containing 1 unique commit
Message-ID: <9d00a1f0-deb1-45d1-937d-31ae0ddb623e@openjdk.org>

The following commits are unique to the pr/67 branch:
========================================================
235bf525: X8300888: [Lilliput] Remaining missing parts in the SA

From shade at openjdk.org  Tue Jan 24 17:02:53 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 24 Jan 2023 17:02:53 GMT
Subject: [master] RFR: 8300527: [Lilliput] Simplify and optimize loading of
 Klass*
In-Reply-To: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
References: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
Message-ID: <2XrTnoHilsSKyWulrkPErspdv0aSBf0Dhpu9z5vgYvA=.56c7f308-4bb1-431b-92c3-c036ef85edb5@github.com>

On Mon, 23 Jan 2023 13:34:50 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> With the new fast-locking, we can greatly simplify the loading of the Klass* from an object. We no longer have to call into the runtime to ensure that the header is changed under our feet (by installing the INFLATION marker). Instead, we can do a simple check for the object being monitor-locked, and safely load the displaced header, if that is the case.

Minor nits.

src/hotspot/share/c1/c1_LIR.cpp line 891:

> 889:       do_input(opLoadKlass->_obj);
> 890:       do_output(opLoadKlass->_result);
> 891:       do_stub(opLoadKlass->stub());

Minor: why not leave `_stub`?

src/hotspot/share/runtime/synchronizer.cpp line 798:

> 796: static SharedGlobals GVars;
> 797: 
> 798: static markWord read_stable_mark(oop obj) {

Do you still need this method, or? If you still need it, let's not put it outside the `ObjectSynchronizer` "namespace".

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/66

From shade at openjdk.org  Tue Jan 24 17:10:45 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 24 Jan 2023 17:10:45 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the
 SA
In-Reply-To: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
Message-ID: <tp2ZN4BjdW3nOodj7kYt-4Ngp7XL7zKnFZsyfa40wTQ=.6d65b15a-6fc5-4014-84d2-edea433ffe2d@github.com>

On Tue, 24 Jan 2023 15:13:29 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> With fast-locking, it is now possible to provide a safe implementation of load-Klass* (following the same principle as in the runtime: load mark, check for monitor, possibly load real mark from monitor, decode Klass* from mark). This change also fixes array layout calculation and un-blocks a number of SA tests that did not work before.

Minor nits.

src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/DebuggerBase.java line 401:

> 399:     // On 64 bit systems, the compressed Klass* is currently read from the mark
> 400:     // word. We need to load the whole mark, and shift the upper parts.
> 401:     long value = readCInteger(address, getJLongSize(), true);

`machDesc.getAddressSize()` might be a better fit here instead of `getJLongSize()`?

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/67

From duke at openjdk.org  Tue Jan 24 17:44:26 2023
From: duke at openjdk.org (duke)
Date: Tue, 24 Jan 2023 17:44:26 GMT
Subject: git: openjdk/lilliput: pr/66: Use _stub instead of stub()
Message-ID: <587296f8-7e98-446c-9219-106b6cc45179@openjdk.org>

Changeset: fcff6601
Author:    Roman Kennke <rkennke at amazon.de>
Date:      2023-01-24 17:36:34 +0000
URL:       https://git.openjdk.org/lilliput/commit/fcff6601f2361b5661e81e3c84e651c0af02c0ca

Use _stub instead of stub()

! src/hotspot/share/c1/c1_LIR.cpp


From rkennke at openjdk.org  Tue Jan 24 17:45:45 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 17:45:45 GMT
Subject: [master] RFR: 8300527: [Lilliput] Simplify and optimize loading of
 Klass* [v2]
In-Reply-To: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
References: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
Message-ID: <8qPLdtZXiZ1qFFUK-nrp1Y-v6Ad2dcELFoBwZAMEnTs=.52cbd02b-abfb-4bb5-b0ab-7f70e9e95b91@github.com>

> With the new fast-locking, we can greatly simplify the loading of the Klass* from an object. We no longer have to call into the runtime to ensure that the header is changed under our feet (by installing the INFLATION marker). Instead, we can do a simple check for the object being monitor-locked, and safely load the displaced header, if that is the case.

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Use _stub instead of stub()

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/66/files
  - new: https://git.openjdk.org/lilliput/pull/66/files/83c65c16..fcff6601

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=66&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=66&range=00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/66.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/66/head:pull/66

PR: https://git.openjdk.org/lilliput/pull/66

From rkennke at openjdk.org  Tue Jan 24 17:45:46 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 17:45:46 GMT
Subject: [master] RFR: 8300527: [Lilliput] Simplify and optimize loading of
 Klass* [v2]
In-Reply-To: <2XrTnoHilsSKyWulrkPErspdv0aSBf0Dhpu9z5vgYvA=.56c7f308-4bb1-431b-92c3-c036ef85edb5@github.com>
References: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
 <2XrTnoHilsSKyWulrkPErspdv0aSBf0Dhpu9z5vgYvA=.56c7f308-4bb1-431b-92c3-c036ef85edb5@github.com>
Message-ID: <a43hpjlUfL2x1Ev5Ryw1oII5Nw9KHw8mj5pCjnKoG0c=.e80f6317-ef0e-4602-b112-12035d82578b@github.com>

On Tue, 24 Jan 2023 16:56:17 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Use _stub instead of stub()
>
> src/hotspot/share/c1/c1_LIR.cpp line 891:
> 
>> 889:       do_input(opLoadKlass->_obj);
>> 890:       do_output(opLoadKlass->_result);
>> 891:       do_stub(opLoadKlass->stub());
> 
> Minor: why not leave `_stub`?

Right. I changed that back.

> src/hotspot/share/runtime/synchronizer.cpp line 798:
> 
>> 796: static SharedGlobals GVars;
>> 797: 
>> 798: static markWord read_stable_mark(oop obj) {
> 
> Do you still need this method, or? If you still need it, let's not put it outside the `ObjectSynchronizer` "namespace".

Originally, read_stable_mark() is static in upstream. A while back I put it into the ObjectSynchronizer namespace to reuse it in Shenandoah, but that is no longer needed, so I reverted the scope back to compilation-unit-private. Yes, we will still need it, when we make Lilliput switchable, but I'd keep it compilation-unit-private for the reasons mentioned.

-------------

PR: https://git.openjdk.org/lilliput/pull/66

From shade at openjdk.org  Tue Jan 24 17:52:39 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 24 Jan 2023 17:52:39 GMT
Subject: [master] RFR: 8300527: [Lilliput] Simplify and optimize loading of
 Klass* [v2]
In-Reply-To: <a43hpjlUfL2x1Ev5Ryw1oII5Nw9KHw8mj5pCjnKoG0c=.e80f6317-ef0e-4602-b112-12035d82578b@github.com>
References: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
 <2XrTnoHilsSKyWulrkPErspdv0aSBf0Dhpu9z5vgYvA=.56c7f308-4bb1-431b-92c3-c036ef85edb5@github.com>
 <a43hpjlUfL2x1Ev5Ryw1oII5Nw9KHw8mj5pCjnKoG0c=.e80f6317-ef0e-4602-b112-12035d82578b@github.com>
Message-ID: <4FWDLh1ttW_16ew9KxDquIp8mHp2yzBZVAMxKBM_ngM=.286ff093-eb75-4992-84f2-f70ea24cffbe@github.com>

On Tue, 24 Jan 2023 17:42:11 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> src/hotspot/share/runtime/synchronizer.cpp line 798:
>> 
>>> 796: static SharedGlobals GVars;
>>> 797: 
>>> 798: static markWord read_stable_mark(oop obj) {
>> 
>> Do you still need this method, or? If you still need it, let's not put it outside the `ObjectSynchronizer` "namespace".
>
> Originally, read_stable_mark() is static in upstream. A while back I put it into the ObjectSynchronizer namespace to reuse it in Shenandoah, but that is no longer needed, so I reverted the scope back to compilation-unit-private. Yes, we will still need it, when we make Lilliput switchable, but I'd keep it compilation-unit-private for the reasons mentioned.

All right then!

-------------

PR: https://git.openjdk.org/lilliput/pull/66

From duke at openjdk.org  Tue Jan 24 18:10:50 2023
From: duke at openjdk.org (duke)
Date: Tue, 24 Jan 2023 18:10:50 GMT
Subject: git: openjdk/lilliput: pr/67: Use address size instead of long size to
 read the mark word
Message-ID: <9109bdd4-02e2-4135-8ef5-4a4679fcc03f@openjdk.org>

Changeset: 5acc5e68
Author:    Roman Kennke <rkennke at amazon.de>
Date:      2023-01-24 18:06:08 +0000
URL:       https://git.openjdk.org/lilliput/commit/5acc5e68a261b3c16cde6e82dccfebc8cc0c48d3

Use address size instead of long size to read the mark word

! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/DebuggerBase.java


From rkennke at openjdk.org  Tue Jan 24 18:12:14 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 18:12:14 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the
 SA [v2]
In-Reply-To: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
Message-ID: <jBMFkMqyUhz0QkqaoCqeURrtdJZ6z6U9y9unPwXt920=.0a5973ad-1888-4e6b-814e-b0cdbf09f47f@github.com>

> With fast-locking, it is now possible to provide a safe implementation of load-Klass* (following the same principle as in the runtime: load mark, check for monitor, possibly load real mark from monitor, decode Klass* from mark). This change also fixes array layout calculation and un-blocks a number of SA tests that did not work before.

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Use address size instead of long size to read the mark word

-------------

Changes:
  - all: https://git.openjdk.org/lilliput/pull/67/files
  - new: https://git.openjdk.org/lilliput/pull/67/files/235bf525..5acc5e68

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=67&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=67&range=00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/67.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/67/head:pull/67

PR: https://git.openjdk.org/lilliput/pull/67

From rkennke at openjdk.org  Tue Jan 24 18:12:17 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 24 Jan 2023 18:12:17 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the
 SA [v2]
In-Reply-To: <tp2ZN4BjdW3nOodj7kYt-4Ngp7XL7zKnFZsyfa40wTQ=.6d65b15a-6fc5-4014-84d2-edea433ffe2d@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
 <tp2ZN4BjdW3nOodj7kYt-4Ngp7XL7zKnFZsyfa40wTQ=.6d65b15a-6fc5-4014-84d2-edea433ffe2d@github.com>
Message-ID: <0o6s--m1_SeIxXMiCOdxIWeQPn-l82W0ZjVIzvoYwYA=.c7cc4ec5-9b06-4b48-845b-6bca20efa664@github.com>

On Tue, 24 Jan 2023 17:06:36 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Use address size instead of long size to read the mark word
>
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/DebuggerBase.java line 401:
> 
>> 399:     // On 64 bit systems, the compressed Klass* is currently read from the mark
>> 400:     // word. We need to load the whole mark, and shift the upper parts.
>> 401:     long value = readCInteger(address, getJLongSize(), true);
> 
> `machDesc.getAddressSize()` might be a better fit here instead of `getJLongSize()`?

Right. Both is not beautiful, but address size seems less ugly. At some point in the future all of this will go away, anyway.

-------------

PR: https://git.openjdk.org/lilliput/pull/67

From shade at openjdk.org  Tue Jan 24 18:27:07 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 24 Jan 2023 18:27:07 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the
 SA [v2]
In-Reply-To: <jBMFkMqyUhz0QkqaoCqeURrtdJZ6z6U9y9unPwXt920=.0a5973ad-1888-4e6b-814e-b0cdbf09f47f@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
 <jBMFkMqyUhz0QkqaoCqeURrtdJZ6z6U9y9unPwXt920=.0a5973ad-1888-4e6b-814e-b0cdbf09f47f@github.com>
Message-ID: <PGHDZwdgHGpgJmtkcHMtlQJT1QCjW_5TKcM0hzG2dzg=.066b67d0-f0a6-4207-ac13-1850cb1286be@github.com>

On Tue, 24 Jan 2023 18:12:14 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> With fast-locking, it is now possible to provide a safe implementation of load-Klass* (following the same principle as in the runtime: load mark, check for monitor, possibly load real mark from monitor, decode Klass* from mark). This change also fixes array layout calculation and un-blocks a number of SA tests that did not work before.
>
> Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Use address size instead of long size to read the mark word

Marked as reviewed by shade (Committer).

-------------

PR: https://git.openjdk.org/lilliput/pull/67

From shade at openjdk.org  Tue Jan 24 18:27:11 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 24 Jan 2023 18:27:11 GMT
Subject: [master] RFR: 8300888: [Lilliput] Remaining missing parts in the
 SA [v2]
In-Reply-To: <0o6s--m1_SeIxXMiCOdxIWeQPn-l82W0ZjVIzvoYwYA=.c7cc4ec5-9b06-4b48-845b-6bca20efa664@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
 <tp2ZN4BjdW3nOodj7kYt-4Ngp7XL7zKnFZsyfa40wTQ=.6d65b15a-6fc5-4014-84d2-edea433ffe2d@github.com>
 <0o6s--m1_SeIxXMiCOdxIWeQPn-l82W0ZjVIzvoYwYA=.c7cc4ec5-9b06-4b48-845b-6bca20efa664@github.com>
Message-ID: <x3c7M3lIwA5ik1E9HCdesdM47uXgtzQbFlb_xpcl_MU=.14aefd17-7687-4ae1-89a9-70a9d980122a@github.com>

On Tue, 24 Jan 2023 18:07:02 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/DebuggerBase.java line 401:
>> 
>>> 399:     // On 64 bit systems, the compressed Klass* is currently read from the mark
>>> 400:     // word. We need to load the whole mark, and shift the upper parts.
>>> 401:     long value = readCInteger(address, getJLongSize(), true);
>> 
>> `machDesc.getAddressSize()` might be a better fit here instead of `getJLongSize()`?
>
> Right. Both is not beautiful, but address size seems less ugly. At some point in the future all of this will go away, anyway.

`getAddressSize` does not over-read accidentally on 32-bit :)

-------------

PR: https://git.openjdk.org/lilliput/pull/67

From rkennke at openjdk.org  Fri Jan 27 18:26:05 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 27 Jan 2023 18:26:05 GMT
Subject: [master] Integrated: 8300527: [Lilliput] Simplify and optimize loading
 of Klass*
In-Reply-To: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
References: <jO08HB3bSFI6XChuVluh3PNghUYJpZs-N0_wyAZVGcg=.34f90e2f-3d35-4442-b8af-14a23bf7c094@github.com>
Message-ID: <JWvKn-F5TprN3IfMKJKAX6wnphMXr8E2Mx4JAaUByZQ=.6d9ec181-e75e-4245-a01e-9f1af6eeb46e@github.com>

On Mon, 23 Jan 2023 13:34:50 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> With the new fast-locking, we can greatly simplify the loading of the Klass* from an object. We no longer have to call into the runtime to ensure that the header is changed under our feet (by installing the INFLATION marker). Instead, we can do a simple check for the object being monitor-locked, and safely load the displaced header, if that is the case.

This pull request has now been integrated.

Changeset: bf6d4f3b
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/bf6d4f3b7111bc75dad351546c4120f7dbc128f9
Stats:     389 lines in 27 files changed: 76 ins; 279 del; 34 mod

8300527: [Lilliput] Simplify and optimize loading of Klass*

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/66

From rkennke at openjdk.org  Fri Jan 27 18:30:58 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Fri, 27 Jan 2023 18:30:58 GMT
Subject: [master] Integrated: 8300888: [Lilliput] Remaining missing parts in
 the SA
In-Reply-To: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
References: <vMljM9ZzG-3_6UESbP5e-RQMz1UUvMXItVYQvOql4VM=.684d1166-223a-42f6-b86e-2a1bc0700984@github.com>
Message-ID: <zCqiTf4FbrS1a57TUSYanuk_GTtxdTBI7huDmglXQxo=.65ac1af3-3b51-4ae5-bcfe-a985959e2dc4@github.com>

On Tue, 24 Jan 2023 15:13:29 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> With fast-locking, it is now possible to provide a safe implementation of load-Klass* (following the same principle as in the runtime: load mark, check for monitor, possibly load real mark from monitor, decode Klass* from mark). This change also fixes array layout calculation and un-blocks a number of SA tests that did not work before.

This pull request has now been integrated.

Changeset: 10e00d3d
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/10e00d3dfb9c608644d6550aa8b4decdd5076633
Stats:     129 lines in 7 files changed: 39 ins; 77 del; 13 mod

8300888: [Lilliput] Remaining missing parts in the SA

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/67

From rkennke at openjdk.org  Tue Jan 31 14:02:22 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 14:02:22 GMT
Subject: [master] RFR: 8301545: [Lilliput] Fix aarch64 interpreter
 load_nklass()
Message-ID: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>

In #66 I made a mistake in a last-minute change and GHA hasn't caught it: I got a condition wrong. Let's fix it.

Testing:
 - [x] tier1
 - [ ] tier2

-------------

Commit messages:
 - 8301545: [Lilliput] Fix aarch64 interpreter load_nklass()

Changes: https://git.openjdk.org/lilliput/pull/68/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=68&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8301545
  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/lilliput/pull/68.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/68/head:pull/68

PR: https://git.openjdk.org/lilliput/pull/68

From shade at openjdk.org  Tue Jan 31 14:11:41 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 31 Jan 2023 14:11:41 GMT
Subject: [master] RFR: 8301545: [Lilliput] Fix aarch64 interpreter
 load_nklass()
In-Reply-To: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
References: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
Message-ID: <e2_Ahxp_qosB9vppJYJoDedKQIBs4mnN2RbPTLbCEco=.cf08e66c-4b37-4c9f-b7dc-d2f04deec6e7@github.com>

On Tue, 31 Jan 2023 13:54:52 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In #66 I made a mistake in a last-minute change and GHA hasn't caught it: I got a condition wrong. Let's fix it.
> 
> Testing:
>  - [x] tier1
>  - [ ] tier2

I remember looking at this during the original review, and I managed to convince myself `NE` is correct. But looking at it again, I think I flipped the meaning of ZF in my head.

Suppose the "monitor" bit is set in the mark. Then `tst` effectively ands and gets non-zero result, which sets internal ALU flag Z=0. Then `NE` checks for `Z=0` and branches to `fast`. This is not what we want, we instead want to go `EQ`, check for `Z=1` and branch to `fast` then.

-------------

Marked as reviewed by shade (Committer).

PR: https://git.openjdk.org/lilliput/pull/68

From rkennke at openjdk.org  Tue Jan 31 14:23:34 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 14:23:34 GMT
Subject: [master] RFR: 8301514: [Lilliput] Enable fast-locking with ZGC
Message-ID: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>

Previously, we disabled stack-locking in ZGC because it couldn't easily deal with racy header. Now that we have fast-locking (in place of stack-locking), we can re-enable it.

Testing:
 - [x] tier1
 - [ ] tier2
 - [ ] hotspot_gc

-------------

Commit messages:
 - 8301514: [Lilliput] Enable fast-locking with ZGC

Changes: https://git.openjdk.org/lilliput/pull/69/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=69&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8301514
  Stats: 3 lines in 1 file changed: 0 ins; 3 del; 0 mod
  Patch: https://git.openjdk.org/lilliput/pull/69.diff
  Fetch: git fetch https://git.openjdk.org/lilliput pull/69/head:pull/69

PR: https://git.openjdk.org/lilliput/pull/69

From shade at openjdk.org  Tue Jan 31 14:23:35 2023
From: shade at openjdk.org (Aleksey Shipilev)
Date: Tue, 31 Jan 2023 14:23:35 GMT
Subject: [master] RFR: 8301514: [Lilliput] Enable fast-locking with ZGC
In-Reply-To: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
References: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
Message-ID: <c5pfqRKGbBCMFjUMPyzPjCI4_E9v4Vm3w60RD0rQdl4=.b8ffc740-ae2a-42bd-9cac-07edd9c91884@github.com>

On Tue, 31 Jan 2023 14:16:59 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Previously, we disabled stack-locking in ZGC because it couldn't easily deal with racy header. Now that we have fast-locking (in place of stack-locking), we can re-enable it.
> 
> Testing:
>  - [x] tier1
>  - [ ] tier2
>  - [ ] hotspot_gc

Marked as reviewed by shade (Committer).

-------------

PR: https://git.openjdk.org/lilliput/pull/69

From duke at openjdk.org  Tue Jan 31 14:27:30 2023
From: duke at openjdk.org (duke)
Date: Tue, 31 Jan 2023 14:27:30 GMT
Subject: git: openjdk/lilliput: created branch pr/69 based on the branch pr/68
 containing 1 unique commit
Message-ID: <79480888-3de9-40a4-9a74-23bb50c25faa@openjdk.org>

The following commits are unique to the pr/69 branch:
========================================================
ac5305af: 8301514: [Lilliput] Enable fast-locking with ZGC

From rkennke at openjdk.org  Tue Jan 31 19:41:25 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 19:41:25 GMT
Subject: [master] RFR: 8301545: [Lilliput] Fix aarch64 interpreter
 load_nklass()
In-Reply-To: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
References: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
Message-ID: <D1Ro6bynor42q--opxhQdJKam3T_ghfkVDsQ_sBGE_0=.b9ce171a-e4e9-473a-8a24-2e615907858d@github.com>

On Tue, 31 Jan 2023 13:54:52 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In #66 I made a mistake in a last-minute change and GHA hasn't caught it: I got a condition wrong. Let's fix it.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

Thanks, Aleksey!

-------------

PR: https://git.openjdk.org/lilliput/pull/68

From rkennke at openjdk.org  Tue Jan 31 19:41:25 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 19:41:25 GMT
Subject: [master] Integrated: 8301545: [Lilliput] Fix aarch64 interpreter
 load_nklass()
In-Reply-To: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
References: <ayM7VUwvD9EFvb_vzw8OmWWxAT6debAvrPKXuZzk5qI=.b2cd0210-8f6f-4162-90ec-f9163fd13ef0@github.com>
Message-ID: <3wC6PmhOYYFQsHlinRY9Z4byWUgdAIC-ukz1aTdLoow=.fd32c139-1d15-439c-8c00-d51404b97953@github.com>

On Tue, 31 Jan 2023 13:54:52 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> In #66 I made a mistake in a last-minute change and GHA hasn't caught it: I got a condition wrong. Let's fix it.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2

This pull request has now been integrated.

Changeset: 38816146
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/388161467dc9fc99616161d7643600d5f523b554
Stats:     1 line in 1 file changed: 0 ins; 0 del; 1 mod

8301545: [Lilliput] Fix aarch64 interpreter load_nklass()

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/68

From rkennke at openjdk.org  Tue Jan 31 19:48:26 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 19:48:26 GMT
Subject: [master] RFR: 8301514: [Lilliput] Enable fast-locking with ZGC
In-Reply-To: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
References: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
Message-ID: <ltq8dK2-oAT71dik43dFxNMZp86xVwaAzucUUU99SqE=.cd4a83b8-8e64-4183-b6c9-2386a7a59fa5@github.com>

On Tue, 31 Jan 2023 14:16:59 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Previously, we disabled stack-locking in ZGC because it couldn't easily deal with racy header. Now that we have fast-locking (in place of stack-locking), we can re-enable it.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2
>  - [x] hotspot_gc

Thanks, Aleksey!

-------------

PR: https://git.openjdk.org/lilliput/pull/69

From rkennke at openjdk.org  Tue Jan 31 19:48:26 2023
From: rkennke at openjdk.org (Roman Kennke)
Date: Tue, 31 Jan 2023 19:48:26 GMT
Subject: [master] Integrated: 8301514: [Lilliput] Enable fast-locking with ZGC
In-Reply-To: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
References: <acUdHnGOIE7n-Xage_kCQAn3fA-ic5znQ5kdMOy0obY=.c2bfde21-32a5-4027-86d3-d4b363859642@github.com>
Message-ID: <sGrXuMlysIc3xRL6HZdDqbd1vLv5Hep5DmzagpiiHIs=.e362278e-b003-4bd0-ac4a-9db8c2bcdfde@github.com>

On Tue, 31 Jan 2023 14:16:59 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> Previously, we disabled stack-locking in ZGC because it couldn't easily deal with racy header. Now that we have fast-locking (in place of stack-locking), we can re-enable it.
> 
> Testing:
>  - [x] tier1
>  - [x] tier2
>  - [x] hotspot_gc

This pull request has now been integrated.

Changeset: f9d0f393
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/f9d0f3933f55ec4ee503d651829d9e5e7e8f0b9c
Stats:     3 lines in 1 file changed: 0 ins; 3 del; 0 mod

8301514: [Lilliput] Enable fast-locking with ZGC

Reviewed-by: shade

-------------

PR: https://git.openjdk.org/lilliput/pull/69