-
Bug
-
Resolution: Fixed
-
P2
-
6
-
b64
-
generic
-
generic
Just realized that some of the compiler option tests for 5.7 belong to 5.8 as well, so it should have been 5.7 or newer:
j2se/make/common/Defs-solaris.gmk:
ifeq ($(COMPILER_REV), 5.7)
# Do NOT use the frame pointer register as a general purpose opt register
CFLAGS_REQUIRED_i586 += -xregs=no%frameptr
CFLAGS_REQUIRED_amd64 += -xregs=no%frameptr
# We MUST allow data alignment of 4 for sparc (sparcv9 is ok at 8s)
CFLAGS_REQUIRED_sparc += -xmemalign=4s
endif
NOTE: This is for sparc (v8 or 32bit) only, NOT FOR SPARCV9!
The hotspot and other workspaces look ok, this is the only problem I saw.
I think this needs to be 5.7 or greater, e.g. something like
ifeq ($(shell $(EXPR) $(COMPILER_REV) \> 5.6), 1)
See 6238560 for why this needs to be 4s (abi issue for jni libraries).
There is also a use of -xmemalign=8s with CC_HIGHEST_OPT, which is the default anyway on sparcv9, but using this on sparcv8 might be an issue. Needs investigation.
j2se/make/common/Defs-solaris.gmk:
ifeq ($(COMPILER_REV), 5.7)
# Do NOT use the frame pointer register as a general purpose opt register
CFLAGS_REQUIRED_i586 += -xregs=no%frameptr
CFLAGS_REQUIRED_amd64 += -xregs=no%frameptr
# We MUST allow data alignment of 4 for sparc (sparcv9 is ok at 8s)
CFLAGS_REQUIRED_sparc += -xmemalign=4s
endif
NOTE: This is for sparc (v8 or 32bit) only, NOT FOR SPARCV9!
The hotspot and other workspaces look ok, this is the only problem I saw.
I think this needs to be 5.7 or greater, e.g. something like
ifeq ($(shell $(EXPR) $(COMPILER_REV) \> 5.6), 1)
See 6238560 for why this needs to be 4s (abi issue for jni libraries).
There is also a use of -xmemalign=8s with CC_HIGHEST_OPT, which is the default anyway on sparcv9, but using this on sparcv8 might be an issue. Needs investigation.
- relates to
-
JDK-6239113 bigapps crash with mustang b27 64 bits jvm on solaris sparc
- Resolved
-
JDK-6238560 Add -xmemalign=4s to compiles when using SS10 compilers
- Resolved
-
JDK-6369331 Solaris build error - expr:syntax error, due to use of COMPILER_REV instead of CC_VER
- Resolved