Details
-
Bug
-
Resolution: Fixed
-
P4
-
8u172, 10
-
b36
-
ppc
-
linux
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8208915 | 8u201 | John Paul Adrian Glaubitz | P4 | Resolved | Fixed | b01 |
JDK-8205930 | 8u192 | John Paul Adrian Glaubitz | P4 | Resolved | Fixed | b01 |
JDK-8216735 | emb-8u201 | John Paul Adrian Glaubitz | P4 | Resolved | Fixed | master |
Description
There are 32-Bit PowerPC machines (e.g. PowerPC e500) running Linux which do not have an FPU and therefore do not support any FPU instructions.
Zero contains an implementation of atomic_copy64() which unconditionally emits FPU instructions for the atomic copy on PPC32 systems. This means, zero will fail to build on the aforementioned systems as the assembler does not understand any PPC32 FPU instructions.
On any PowerPC machine which falls under this category, gcc will define the symbol __NO_FPRS__ which can be used to detect such a system:
root@atlantis:~> echo | gcc -E -dM - |grep -i FPR
#define __NO_FPRS__ 1
root@atlantis:~>
The attached patch makes use of that by disabling the FPU instructions on the affected systems.
Zero contains an implementation of atomic_copy64() which unconditionally emits FPU instructions for the atomic copy on PPC32 systems. This means, zero will fail to build on the aforementioned systems as the assembler does not understand any PPC32 FPU instructions.
On any PowerPC machine which falls under this category, gcc will define the symbol __NO_FPRS__ which can be used to detect such a system:
root@atlantis:~> echo | gcc -E -dM - |grep -i FPR
#define __NO_FPRS__ 1
root@atlantis:~>
The attached patch makes use of that by disabling the FPU instructions on the affected systems.
Attachments
Issue Links
- backported by
-
JDK-8205930 Zero's atomic_copy64() should use SPE instructions on linux-powerpcspe
-
- Resolved
-
-
JDK-8208915 Zero's atomic_copy64() should use SPE instructions on linux-powerpcspe
-
- Resolved
-
-
JDK-8216735 Zero's atomic_copy64() should use SPE instructions on linux-powerpcspe
-
- Resolved
-