Skip to content

Commit 7b6738f

Browse files
aamarshThomas Schatzl
authored and
Thomas Schatzl
committedJan 17, 2022
8278885: Remove Windows ARM64 int8_t workaround in G1
Reviewed-by: erikj, tschatzl, mli
1 parent 5d52bf9 commit 7b6738f

File tree

4 files changed

+6
-10
lines changed

4 files changed

+6
-10
lines changed
 

‎doc/building.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ <h3 id="apple-xcode">Apple Xcode</h3>
298298
<p>It is advisable to keep an older version of Xcode for building the JDK when updating Xcode. This <a href="http://iosdevelopertips.com/xcode/install-multiple-versions-of-xcode.html">blog page</a> has good suggestions on managing multiple Xcode versions. To use a specific version of Xcode, use <code>xcode-select -s</code> before running <code>configure</code>, or use <code>--with-toolchain-path</code> to point to the version of Xcode to use, e.g. <code>configure --with-toolchain-path=/Applications/Xcode8.app/Contents/Developer/usr/bin</code></p>
299299
<p>If you have recently (inadvertently) updated your OS and/or Xcode version, and the JDK can no longer be built, please see the section on <a href="#problems-with-the-build-environment">Problems with the Build Environment</a>, and <a href="#getting-help">Getting Help</a> to find out if there are any recent, non-merged patches available for this update.</p>
300300
<h3 id="microsoft-visual-studio">Microsoft Visual Studio</h3>
301-
<p>The minimum accepted version of Visual Studio is 2017. Older versions will not be accepted by <code>configure</code> and will not work. The maximum accepted version of Visual Studio is 2019.</p>
301+
<p>For aarch64 machines running Windows the minimum accepted version is Visual Studio 2019 (16.8 or higher). For all other platforms the minimum accepted version of Visual Studio is 2017. Older versions will not be accepted by <code>configure</code> and will not work. For all platforms the maximum accepted version of Visual Studio is 2022.</p>
302302
<p>If you have multiple versions of Visual Studio installed, <code>configure</code> will by default pick the latest. You can request a specific version to be used by setting <code>--with-toolchain-version</code>, e.g. <code>--with-toolchain-version=2017</code>.</p>
303303
<p>If you have Visual Studio installed but <code>configure</code> fails to detect it, it may be because of <a href="#spaces-in-path">spaces in path</a>.</p>
304304
<h3 id="ibm-xl-cc">IBM XL C/C++</h3>

‎doc/building.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -374,9 +374,10 @@ available for this update.
374374

375375
### Microsoft Visual Studio
376376

377-
The minimum accepted version of Visual Studio is 2017. Older versions will not
378-
be accepted by `configure` and will not work. The maximum accepted
379-
version of Visual Studio is 2019.
377+
For aarch64 machines running Windows the minimum accepted version is Visual Studio 2019
378+
(16.8 or higher). For all other platforms the minimum accepted version of
379+
Visual Studio is 2017. Older versions will not be accepted by `configure` and will
380+
not work. For all platforms the maximum accepted version of Visual Studio is 2022.
380381

381382
If you have multiple versions of Visual Studio installed, `configure` will by
382383
default pick the latest. You can request a specific version to be used by

‎make/autoconf/toolchain_microsoft.m4

+1
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
103103
vc/auxiliary/build/vcvarsx86_amd64.bat vc/auxiliary/build/vcvars64.bat"
104104
elif test "x$TARGET_CPU" = xaarch64; then
105105
# for host x86-64, target aarch64
106+
# aarch64 requires Visual Studio 16.8 or higher
106107
VCVARSFILES="vc/auxiliary/build/vcvarsamd64_arm64.bat \
107108
vc/auxiliary/build/vcvarsx86_arm64.bat"
108109
fi

‎src/hotspot/share/gc/g1/g1HeapRegionAttr.hpp

-6
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,7 @@
3232
// lookups for that information all over the place.
3333
struct G1HeapRegionAttr {
3434
public:
35-
#if defined(_M_ARM64)&& defined(_MSC_VER) && _MSC_VER <= 1927
36-
// workaround for MSCV ARM64 bug
37-
// https://developercommunity.visualstudio.com/content/problem/1079221/arm64-bad-code-generation-around-signed-char-arith.html
38-
typedef int32_t region_type_t;
39-
#else
4035
typedef int8_t region_type_t;
41-
#endif
4236
// remset_is_tracked_t is essentially bool, but we need precise control
4337
// on the size, and sizeof(bool) is implementation specific.
4438
typedef uint8_t remset_is_tracked_t;

0 commit comments

Comments
 (0)