RFR (M): 8036767 PPC64: Support for little endian execution model
asmundak at google.com
Fri Mar 21 06:14:48 UTC 2014
Revised the patch to use OPENJDK_TARGET_CPU_ENDIAN instead. The new
version is at:
On Thu, Mar 20, 2014 at 8:57 PM, David Holmes <david.holmes at oracle.com> wrote:
> On 21/03/2014 1:42 PM, Alexander Smundak wrote:
>> On Thu, Mar 20, 2014 at 7:39 PM, David Holmes <david.holmes at oracle.com>
>>> The build changes look much cleaner to me - thanks.
>> It's at the expense of platform directory being ppc64/ instead of the
>> conventional ppc64le/, and having rather ugly check in the ppc64.make
>>> Why are you not using OPENJDK_TARGET_CPU_ENDIAN directly? Ah! Because it
>>> doesn't reach down into the <arch>.make files. ZERO_ENDIANNESS does but
>>> seems inappropriate if this is not Zero specific. (I'm also not seeing
>>> ZERO_ENDIANNESS reaches down that far either ??).
>> configure script writes hotspot-spec.gmk file to the top-level build
>> and it contains
> Yes but my query was how does ZERO_ENDIANNESS become visible in ppc64.make?
> The answer to which is that the generated flags.make file has an explicit
> include of hotspot-spec.gmk. In which case you don't need to use
> ZERO_ENDIANNESS you can just use $(OPENJDK_TARGET_CPU_ENDIAN) directly.
> (Which now begs the question as to why ZERO_ENDIANNESS even exists - perhaps
> it predates the integration with the new build.)
>> The patch contains the fuse in ppc64.make, the build will fail unless
>> ZERO_ENDIANNESS is set.
>>>> jdk: http://cr.openjdk.java.net/~martin/asmundak/8036767/jdk/webrev.01
>>> This change:
>>> - LDFLAGS_SUFFIX := $(ALSA_LIBS) -ljava -ljvm, \
>>> + LDFLAGS_SUFFIX := $(ALSA_LIBS) $(LIBDL) $(LIBM) -lpthread -ljava
>>> -ljvm, \
>>> seems unrelated to endianness. Why is it needed, and why is it being
>>> to all platforms?
>> Sorry, this is not needed, it's the problem with the toolchain I am using.
>> Please ignore this patch.
More information about the build-dev