-
Bug
-
Resolution: Duplicate
-
P3
-
21
-
s390x
Trying to do a crossbuild for s390 fails:
```
Creating ct.sym classes
In file included from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/assembler.hpp:491,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/macroAssembler.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/macroAssembler.inline.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/macroAssembler_s390.cpp:28:
In static member function 'static long int Assembler::reg(Register, int, int)',
inlined from 'static long int Assembler::regt(Register, int, int)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1753:60,
inlined from 'static int64_t Assembler::rsymaskt_48(int64_t, Register)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1651:120,
inlined from 'void Assembler::z_rll(Register, Register, int64_t, Register)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.inline.hpp:386:134,
inlined from 'void MacroAssembler::rotate_then_mask(Register, Register, int, int, int, bool, bool, bool)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/macroAssembler_s390.cpp:500:12:
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1752:60: error: 'this' pointer is null [-Werror=nonnull]
1752 | static long reg( Register r, int s, int len) { return reg(r->encoding(), s, len); }
| ~~~^~~~~~~~~~~~~~~~~~~~~~~
In file included from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/register.hpp:236,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/code/vmreg.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/compiler/oopMap.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/runtime/frame.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/runtime/javaThread.hpp:33,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/oops/constantPool.hpp:36,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/oops/instanceKlass.hpp:31,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/classfile/javaClasses.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/precompiled/precompiled.hpp:35:
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/register_s390.hpp: In member function 'void MacroAssembler::rotate_then_mask(Register, Register, int, int, int, bool, bool, bool)':
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/register_s390.hpp:83:9: note: in a call to non-static member function 'int RegisterImpl::encoding() const'
83 | int encoding() const { assert(is_valid(), "invalid register"); return value(); }
| ^~~~~~~~
```
Even with --disable-warnings-as-errors
Conguration:
```
using configure arguments '--with-boot-jdk=/shared/projects/openjdk/jdks/sapmachine20 --with-build-jdk=../output-release/images/jdk --with-debug-level=fastdebug --with-devkit=/shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu --openjdk-target=s390x-linux-gnu'.
Configuration summary:
* Name: /shared/projects/openjdk/jdk-jdk/output-fastdebug-s390
* Debug level: fastdebug
* HS debug level: fastdebug
* JVM variants: server
* JVM features: server: 'cds compiler1 compiler2 epsilongc g1gc jfr jni-check jvmti management parallelgc serialgc services vm-structs'
* OpenJDK target: OS: linux, CPU architecture: s390, address length: 64
* Version string: 21-internal-adhoc.thomas.source (21-internal)
* Source date: 1682668381 (2023-04-28T07:53:01Z)
Tools summary:
* Boot JDK: openjdk version "20-ea" 2023-03-21 OpenJDK Runtime Environment SapMachine (build 20-ea+32) OpenJDK 64-Bit Server VM SapMachine (build 20-ea+32, mixed mode, sharing) (at /shared/projects/openjdk/jdks/sapmachine20)
* Toolchain: gcc (GNU Compiler Collection)
* Devkit: gcc-11.3.0 - Fedora_21 (/shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu)
* C Compiler: Version 11.3.0 (at /shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu/bin/s390x-linux-gnu-gcc)
* C++ Compiler: Version 11.3.0 (at /shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu/bin/s390x-linux-gnu-g++)
Build performance summary:
* Build jobs: 24
* Memory limit: 64231 MB
```
```
Creating ct.sym classes
In file included from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/assembler.hpp:491,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/macroAssembler.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/macroAssembler.inline.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/macroAssembler_s390.cpp:28:
In static member function 'static long int Assembler::reg(Register, int, int)',
inlined from 'static long int Assembler::regt(Register, int, int)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1753:60,
inlined from 'static int64_t Assembler::rsymaskt_48(int64_t, Register)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1651:120,
inlined from 'void Assembler::z_rll(Register, Register, int64_t, Register)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.inline.hpp:386:134,
inlined from 'void MacroAssembler::rotate_then_mask(Register, Register, int, int, int, bool, bool, bool)' at /shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/macroAssembler_s390.cpp:500:12:
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/assembler_s390.hpp:1752:60: error: 'this' pointer is null [-Werror=nonnull]
1752 | static long reg( Register r, int s, int len) { return reg(r->encoding(), s, len); }
| ~~~^~~~~~~~~~~~~~~~~~~~~~~
In file included from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/asm/register.hpp:236,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/code/vmreg.hpp:28,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/compiler/oopMap.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/runtime/frame.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/runtime/javaThread.hpp:33,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/oops/constantPool.hpp:36,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/oops/instanceKlass.hpp:31,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/classfile/javaClasses.hpp:29,
from /shared/projects/openjdk/jdk-jdk/source/src/hotspot/share/precompiled/precompiled.hpp:35:
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/register_s390.hpp: In member function 'void MacroAssembler::rotate_then_mask(Register, Register, int, int, int, bool, bool, bool)':
/shared/projects/openjdk/jdk-jdk/source/src/hotspot/cpu/s390/register_s390.hpp:83:9: note: in a call to non-static member function 'int RegisterImpl::encoding() const'
83 | int encoding() const { assert(is_valid(), "invalid register"); return value(); }
| ^~~~~~~~
```
Even with --disable-warnings-as-errors
Conguration:
```
using configure arguments '--with-boot-jdk=/shared/projects/openjdk/jdks/sapmachine20 --with-build-jdk=../output-release/images/jdk --with-debug-level=fastdebug --with-devkit=/shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu --openjdk-target=s390x-linux-gnu'.
Configuration summary:
* Name: /shared/projects/openjdk/jdk-jdk/output-fastdebug-s390
* Debug level: fastdebug
* HS debug level: fastdebug
* JVM variants: server
* JVM features: server: 'cds compiler1 compiler2 epsilongc g1gc jfr jni-check jvmti management parallelgc serialgc services vm-structs'
* OpenJDK target: OS: linux, CPU architecture: s390, address length: 64
* Version string: 21-internal-adhoc.thomas.source (21-internal)
* Source date: 1682668381 (2023-04-28T07:53:01Z)
Tools summary:
* Boot JDK: openjdk version "20-ea" 2023-03-21 OpenJDK Runtime Environment SapMachine (build 20-ea+32) OpenJDK 64-Bit Server VM SapMachine (build 20-ea+32, mixed mode, sharing) (at /shared/projects/openjdk/jdks/sapmachine20)
* Toolchain: gcc (GNU Compiler Collection)
* Devkit: gcc-11.3.0 - Fedora_21 (/shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu)
* C Compiler: Version 11.3.0 (at /shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu/bin/s390x-linux-gnu-gcc)
* C++ Compiler: Version 11.3.0 (at /shared/projects/openjdk/devkits/x86_64-linux-gnu-to-s390x-linux-gnu/bin/s390x-linux-gnu-g++)
Build performance summary:
* Build jobs: 24
* Memory limit: 64231 MB
```
- duplicates
-
JDK-8307423 [s390x] Represent Registers as values
- Resolved