Building SPARC CPU code for Zero
Magnus Ihse Bursie
magnus.ihse.bursie at oracle.com
Mon Sep 4 13:46:48 UTC 2017
Here's a (not very elegant) patch that includes this file when compiling
zero on sparc:
diff --git a/make/lib/JvmFeatures.gmk b/make/lib/JvmFeatures.gmk
--- a/make/lib/JvmFeatures.gmk
+++ b/make/lib/JvmFeatures.gmk
@@ -47,6 +47,9 @@
ifeq ($(call check-jvm-feature, zero), true)
JVM_CFLAGS_FEATURES += -DZERO -DCC_INTERP
-DZERO_LIBARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' $(LIBFFI_CFLAGS)
JVM_LIBS_FEATURES += $(LIBFFI_LIBS)
+ ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
+ BUILD_LIBJVM_EXTRA_FILES :=
$(HOTSPOT_TOPDIR)/src/cpu/sparc/vm/memset_with_concurrent_readers_sparc.cpp
+ endif
endif
ifeq ($(call check-jvm-feature, shark), true)
I think it solves your immediate problem. I would be (reluctantly)
willing to accept this patch (but I'd like to hear Erik's objections
too, first). If this is the only file that will need to be included like
this, fine, but if this pattern is starting to grow to include more and
more platform-specific files in zero, I won't like it.
I'm still looking at a better way to solve the relationship between zero
and the platform-specific parts overall, but that's likely to a much
bigger change, so don't hold your breath.
/Magnus
On 2017-08-30 15:33, John Paul Adrian Glaubitz wrote:
> On 08/30/2017 03:25 PM, Magnus Ihse Bursie wrote:
>> Would it be painful to duplicate the function in cpu/zero? I realize
>> this
>> is not elegant, but we don't have a good story for sharing
>> platform-specific
>> functionality with zero. :(
>
> But then we could also just move it into src/share/vm/gc/shared/,
> couldn't we?
>
> Adrian
>
More information about the build-dev
mailing list