changeset in /hg/icedtea: Fix build of Zero VM.
Gary Benson
gbenson at redhat.com
Fri May 22 01:00:57 PDT 2009
Nice, thank you :)
Cheers,
Gary
Andrew John Hughes wrote:
> changeset 6124157d5bdb in /hg/icedtea
> details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6124157d5bdb
> description:
> Fix build of Zero VM.
>
> 2009-05-21 Andrew John Hughes <ahughes at redhat.com>
>
> * ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp:
> (delayed_value_impl(intptr_t,Register,int)): Add stub.
> * ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp:
> (delayed_value_impl(intptr_t,Register,int)): Declared.
> * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp:
> Handle Interpreter::method_handle.
> * ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp:
> (delayed_value_impl(intptr_t,Register,int)): Add stub.
> * ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp:
> (generate_method_handle_entry()): Declared.
> * ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp:
> (generate_method_handle_entry()): Add stub.
> * ports/hotspot/src/cpu/zero/vm/jni_zero.h:
> Define jlong depending on whether _LP64 is defined,
> as with format specifier in globalDefinitions.
> * ports/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp:
> Empty class required by invokedynamic support.
> * ports/hotspot/src/cpu/zero/vm/register_zero.hpp:
> Declare noreg.
> * ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp:
> Use INTPTR_FORMAT instead of %d for pointers to compile on 64-bit
> platforms.
> * ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp:
> Define HeapBaseMinAddress as 2G (copied from x86_64).
>
> diffstat:
>
> 12 files changed, 87 insertions(+), 3 deletions(-)
> ChangeLog | 27 ++++++++++
> ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp | 6 ++
> ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp | 2
> ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp | 4 +
> ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp | 3 +
> ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp | 1
> ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp | 5 +
> ports/hotspot/src/cpu/zero/vm/jni_zero.h | 7 ++
> ports/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp | 27 ++++++++++
> ports/hotspot/src/cpu/zero/vm/register_zero.hpp | 2
> ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp | 4 -
> ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp | 2
>
> diffs (195 lines):
>
> diff -r 082075fb775e -r 6124157d5bdb ChangeLog
> --- a/ChangeLog Thu May 21 20:10:28 2009 +0100
> +++ b/ChangeLog Fri May 22 01:12:07 2009 +0100
> @@ -1,3 +1,30 @@ 2009-05-21 Andrew John Hughes <ahughes
> +2009-05-21 Andrew John Hughes <ahughes at redhat.com>
> +
> + * ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp:
> + (delayed_value_impl(intptr_t,Register,int)): Add stub.
> + * ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp:
> + (delayed_value_impl(intptr_t,Register,int)): Declared.
> + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp:
> + Handle Interpreter::method_handle.
> + * ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp:
> + (delayed_value_impl(intptr_t,Register,int)): Add stub.
> + * ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp:
> + (generate_method_handle_entry()): Declared.
> + * ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp:
> + (generate_method_handle_entry()): Add stub.
> + * ports/hotspot/src/cpu/zero/vm/jni_zero.h:
> + Define jlong depending on whether _LP64 is defined,
> + as with format specifier in globalDefinitions.
> + * ports/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp:
> + Empty class required by invokedynamic support.
> + * ports/hotspot/src/cpu/zero/vm/register_zero.hpp:
> + Declare noreg.
> + * ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp:
> + Use INTPTR_FORMAT instead of %d for pointers to compile on 64-bit
> + platforms.
> + * ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp:
> + Define HeapBaseMinAddress as 2G (copied from x86_64).
> +
> 2009-05-21 Andrew John Hughes <ahughes at redhat.com>
>
> * acinclude.m4:
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp
> --- a/ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/assembler_zero.cpp Fri May 22 01:12:07 2009 +0100
> @@ -60,6 +60,12 @@ void MacroAssembler::advance(int bytes)
> sync();
> }
>
> +RegisterOrConstant MacroAssembler::delayed_value_impl(intptr_t* delayed_value_addr,
> + Register tmpl, int offset)
> +{
> + Unimplemented();
> +}
> +
> static void _UnimplementedStub()
> {
> report_unimplemented(__FILE__, __LINE__);
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp
> --- a/ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/assembler_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -45,6 +45,8 @@ class MacroAssembler : public Assembler
> void align(int modulus);
> void bang_stack_with_offset(int offset);
> bool needs_explicit_null_check(intptr_t offset);
> + RegisterOrConstant delayed_value_impl(intptr_t* delayed_value_addr,
> + Register tmp, int offset);
> public:
> void advance(int bytes);
> };
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp
> --- a/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Fri May 22 01:12:07 2009 +0100
> @@ -751,6 +751,10 @@ address AbstractInterpreterGenerator::ge
> entry_point = ((InterpreterGenerator*)this)->generate_abstract_entry();
> break;
>
> + case Interpreter::method_handle:
> + entry_point = ((InterpreterGenerator*)this)->generate_method_handle_entry();
> + break;
> +
> case Interpreter::java_lang_math_sin:
> case Interpreter::java_lang_math_cos:
> case Interpreter::java_lang_math_tan:
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp
> --- a/ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/interp_masm_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -28,4 +28,7 @@ class InterpreterMacroAssembler : public
> class InterpreterMacroAssembler : public MacroAssembler {
> public:
> InterpreterMacroAssembler(CodeBuffer* code) : MacroAssembler(code) {}
> + RegisterOrConstant delayed_value_impl(intptr_t* delayed_value_addr, Register tmp, int offset) {
> + Unimplemented();
> + }
> };
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp
> --- a/ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/interpreterGenerator_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -35,3 +35,4 @@
> address generate_math_entry(AbstractInterpreter::MethodKind kind);
> address generate_empty_entry();
> address generate_accessor_entry();
> + address generate_method_handle_entry();
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp
> --- a/ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp Fri May 22 01:12:07 2009 +0100
> @@ -46,6 +46,11 @@ address InterpreterGenerator::generate_a
> return UnimplementedEntry();
> }
>
> +address InterpreterGenerator::generate_method_handle_entry()
> +{
> + return UnimplementedEntry();
> +}
> +
> int AbstractInterpreter::size_activation(methodOop method,
> int tempcount,
> int popframe_extra_args,
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/jni_zero.h
> --- a/ports/hotspot/src/cpu/zero/vm/jni_zero.h Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/jni_zero.h Fri May 22 01:12:07 2009 +0100
> @@ -28,5 +28,10 @@
> #define JNICALL
>
> typedef int jint;
> +typedef signed char jbyte;
> +
> +#ifdef _LP64
> +typedef long jlong;
> +#else
> typedef long long jlong;
> -typedef signed char jbyte;
> +#endif
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/ports/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp Fri May 22 01:12:07 2009 +0100
> @@ -0,0 +1,27 @@
> +/*
> + * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved.
> + * Copyright 2009 Red Hat, Inc.
> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
> + *
> + * This code is free software; you can redistribute it and/or modify it
> + * under the terms of the GNU General Public License version 2 only, as
> + * published by the Free Software Foundation.
> + *
> + * This code is distributed in the hope that it will be useful, but WITHOUT
> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
> + * version 2 for more details (a copy is included in the LICENSE file that
> + * accompanied this code).
> + *
> + * You should have received a copy of the GNU General Public License version
> + * 2 along with this work; if not, write to the Free Software Foundation,
> + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
> + *
> + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
> + * CA 95054 USA or visit www.sun.com if you need additional information or
> + * have any questions.
> + *
> + */
> +
> +#include "incls/_precompiled.incl"
> +#include "incls/_methodHandles_zero.cpp.incl"
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/register_zero.hpp
> --- a/ports/hotspot/src/cpu/zero/vm/register_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/register_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -112,3 +112,5 @@ class ConcreteRegisterImpl : public Abst
> static const int max_gpr;
> static const int max_fpr;
> };
> +
> +CONSTANT_REGISTER_DECLARATION(Register, noreg, (-1));
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp
> --- a/ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -181,7 +181,7 @@ class ZeroStackPrinter {
> }
> }
> else {
> - snprintf(_buf, _buflen, "%s[%d]",
> + snprintf(_buf, _buflen, "%s[" INTPTR_FORMAT "]",
> top_frame ? "stack_word" : "local",
> istate->stack_base() - addr - 1);
> field = _buf;
> @@ -230,7 +230,7 @@ class ZeroStackPrinter {
> }
> }
> else {
> - snprintf(_buf, _buflen, "%s[%d]",
> + snprintf(_buf, _buflen, "%s[" INTPTR_FORMAT "]",
> top_frame ? "stack_word" : "local",
> stack_base - addr - 1);
> field = _buf;
> diff -r 082075fb775e -r 6124157d5bdb ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
> --- a/ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp Thu May 21 20:10:28 2009 +0100
> +++ b/ports/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp Fri May 22 01:12:07 2009 +0100
> @@ -41,3 +41,5 @@ define_pd_global(uintx, JVMInvokeMethodS
> define_pd_global(uintx, JVMInvokeMethodSlack, 8192);
>
> define_pd_global(bool, UseVectoredExceptions, false);
> +// Only used on 64 bit platforms
> +define_pd_global(uintx, HeapBaseMinAddress, 2*G);
>
>
--
http://gbenson.net/
More information about the distro-pkg-dev
mailing list