/hg/icedtea: 3 new changesets
andrew at icedtea.classpath.org
andrew at icedtea.classpath.org
Mon May 10 10:05:24 PDT 2010
changeset dee31ba1367b in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=dee31ba1367b
author: Andrew John Hughes <ahughes at redhat.com>
date: Mon May 10 17:16:07 2010 +0100
Regenerate Shark patch against b89.
2010-05-10 Andrew John Hughes <ahughes at redhat.com>
* patches/hotspot/default/icedtea-shark.patch:
Recreated against b89.
changeset 81af1ec36e30 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=81af1ec36e30
author: Deepak Bhole <dbhole at redhat.com>
date: Mon May 10 18:02:36 2010 +0100
- Stability imrovements
- Fix regression introduced with fix for bug# 406
- Fix to build with Gecko 1.9.1.5
- Add proper proxy support
- Update to work with latest chromium builds
2009-12-02 Deepak Bhole <dbhole at redhat.com>
* plugin/icedteanp/IcedTeaJavaRequestProcessor.cc
(newMessageOnBus): Fix error handling code. Add support for
NewArray, GetValue, and literal returns (primitives).
(getValue): New function. Requests the value of a field from Java,
converted to literal for primitives/boxable types.
(setSlot): Bypass NPVariant creation. (newArray): New
function, creates an array of given type on Java side.
(set): Use value directly instead of NPVariant.
(setStaticField): Same. (getArrayTypeForJava): New function.
Given a variant, returns what type of array should be
created to store that variant on Java side.
(createJavaObjectFromVariant): Added support for arrays.
(callStaticMethod): use direct values instead of NPVariants.
(callMethod): Same.
* plugin/icedteanp/IcedTeaJavaRequestProcessor.h: Updates as needed by
changes to IcedTeaJavaRequestProcessor.cc.
* plugin/icedteanp/IcedTeaNPPlugin.cc (GCJ_Destroy):
Invalidate all NPObjects related to an instance.
* plugin/icedteanp/IcedTeaPluginRequestProcessor.cc
(sendWindow): Use NPVariant address to store windows info on Java
side, rather than the corresponding NPObject address.
(call): Use IcedTeaPluginUtilities::javaResultToNPVariant for java
var to NPVariant conversion, rather than custom conversion.
(sendString): Use new AyncCallThreadData struct and
pluginthreadasynccall() for calls that need to be in main thread.
(setMember): Send value information directly to _setMember, and let
it sort out how to set values. (convertToNPVariant):
Moved to utilities class. (sendMember): Deal with NPVariants
instead of NPObjects. (queue_processor): Add case for
GetSlot (WIP). (storeVariantInJava): Remove deprecated
function. (_setMember): Use javaResultToNPVariant to get a
value loaded into a variant. Deal with NPVariants instead of
NPObjects. (_getMember): Deal with NPVariants instead of
NPObjects. (_getString): New function. Returns toString
values for variables.
* plugin/icedteanp/IcedTeaPluginRequestProcessor.h: Declare new
_getString function.
* plugin/icedteanp/IcedTeaPluginUtils.cc: Move object map from the
plugin request processor class. (strSplit): For
efficiency, reserve enough space for strings beforehand.
(getUTF8String): Same. (printStringVector): Run only if in
debug. (removeInstanceID): New function to remove mapping
between an object and an instance.
(invalidateInstance): New function. Removes all mappings from
objects to the given instance.
(getNPObjectFromJavaKey): New function. Given a java object key,
returns the corresponding JS object, if any.
(storeObjectMapping): New function. Stores a mapping between Java
objects and JS objects (peering). (removeObjectMapping): New
function. Removes peering between JS object and Java object.
(printStringPtrVector): Run only if in debug.
(printNPVariant): Same. (NPVariantToString): Store result in
provided parameter. (javaResultToNPVariant): New function,
moved from IcedTeaScriptablePluginObject.
(isObjectJSArray): New function. Returns if given NPObject
represents an array.
* plugin/icedteanp/IcedTeaPluginUtils.h: Misc. changes as needed by
updates to IcedTeaPluginUtils.cc.
* plugin/icedteanp/IcedTeaScriptablePluginObject.cc: Move object_map
to utilities class. (getProperty): Supply instance
id to findClass. (get_scriptable_java_object): Use the new
getNPObjectFromJavaKey/storeObjectMapping functions in the utilities
class. Also, create object asynchronously.
(_createAndRetainJavaObject): New function. Creates a scriptable
Java object and increments reference count.
(is_valid_java_object): New function. Returns if the given object is
still valid. (invalidate): Remove instance and Java
side object mapping for given object.
(javaResultToNPVariant): Moved to utilities class. (invoke):
Create variants peer on Java side before calling
callMethod/callStaticMethod. (setProperty): Create variant
peers on Java side before calling setField/setStaticField.
(construct): Create variant peers on Java side before calling the
constructor.
* plugin/icedteanp/IcedTeaScriptablePluginObject.h: Misc. changes as
needed by updates to IcedTeaScriptablePluginObject.cc.
* plugin/icedteanp/java/netscape/javascript/JSObject.java: Added a new
string constructor.
* plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java
(getCostAndCastedObject): Add support for array type parameters.
(isNum): Return true for boolean (booleans are convertible to int as
per spec). (getNum): Remove case for char/Character.
(getArrayAsString): New function. For debug only.
* plugin/icedteanp/java/sun/applet/PluginAppletSecurityContext.java
(handleMessage): Add support for getValue. Wire in array creaion
support. Support a '[System]' source for privileged calls.
(isInt): New function. Returns if given object is an
integer/convertible to an int.
* plugin/icedteanp/java/sun/applet/PluginAppletViewer.java
(setMember): Send primitive/boxable values as literals.
(setSlot): Same. (getWindow): Fortify condition for wait
for panel initialization. (parse): Handle nested objected
tags, don't allow parameter value overwrite.
changeset 549c87a321e0 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=549c87a321e0
author: Matthias Klose <doko at ubuntu.com>
date: Mon May 10 18:05:11 2010 +0100
Add zero support for Hitachi SH
2009-01-11 Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
Matthias Klose <doko at ubuntu.com>
* patches/sh4-support.patch: Add zero support for Hitachi
SH.
* Makefile.am (ICEDTEA_PATCHES): Apply the above.
* NEWS: Mention SH support.
diffstat:
18 files changed, 1396 insertions(+), 808 deletions(-)
ChangeLog | 116 ++
Makefile.am | 3
NEWS | 1
patches/hotspot/default/icedtea-shark.patch | 118 --
patches/sh4-support.patch | 63 +
plugin/icedteanp/IcedTeaJavaRequestProcessor.cc | 347 ++++--
plugin/icedteanp/IcedTeaJavaRequestProcessor.h | 51
plugin/icedteanp/IcedTeaNPPlugin.cc | 4
plugin/icedteanp/IcedTeaPluginRequestProcessor.cc | 551 ++--------
plugin/icedteanp/IcedTeaPluginRequestProcessor.h | 1
plugin/icedteanp/IcedTeaPluginUtils.cc | 270 ++++
plugin/icedteanp/IcedTeaPluginUtils.h | 58 +
plugin/icedteanp/IcedTeaScriptablePluginObject.cc | 254 ++--
plugin/icedteanp/IcedTeaScriptablePluginObject.h | 12
plugin/icedteanp/java/netscape/javascript/JSObject.java | 7
plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java | 139 ++
plugin/icedteanp/java/sun/applet/PluginAppletSecurityContext.java | 103 +
plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 106 +
diffs (truncated from 3516 to 500 lines):
diff -r 22113074838a -r 549c87a321e0 ChangeLog
--- a/ChangeLog Mon Jan 11 11:43:43 2010 +0000
+++ b/ChangeLog Mon May 10 18:05:11 2010 +0100
@@ -1,3 +1,119 @@ 2010-01-11 Gary Benson <gbenson at redhat
+2009-01-11 Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
+ Matthias Klose <doko at ubuntu.com>
+
+ * patches/icedtea-sh4-support.patch: Add zero support for Hitachi SH.
+ * Makefile.am (ICEDTEA_PATCHES): Apply the above.
+ * NEWS: Mention SH support.
+
+2010-05-10 Andrew John Hughes <ahughes at redhat.com>
+
+ * patches/hotspot/default/icedtea-shark.patch:
+ Recreated against b89.
+
+2009-12-02 Deepak Bhole <dbhole at redhat.com>
+
+ * plugin/icedteanp/IcedTeaJavaRequestProcessor.cc
+ (newMessageOnBus): Fix error handling code. Add support for NewArray,
+ GetValue, and literal returns (primitives).
+ (getValue): New function. Requests the value of a field from Java,
+ converted to literal for primitives/boxable types.
+ (setSlot): Bypass NPVariant creation.
+ (newArray): New function, creates an array of given type on Java side.
+ (set): Use value directly instead of NPVariant.
+ (setStaticField): Same.
+ (getArrayTypeForJava): New function. Given a variant, returns what type of
+ array should be created to store that variant on Java side.
+ (createJavaObjectFromVariant): Added support for arrays.
+ (callStaticMethod): use direct values instead of NPVariants.
+ (callMethod): Same.
+ * plugin/icedteanp/IcedTeaJavaRequestProcessor.h: Updates as needed by
+ changes to IcedTeaJavaRequestProcessor.cc.
+ * plugin/icedteanp/IcedTeaNPPlugin.cc
+ (GCJ_Destroy): Invalidate all NPObjects related to an instance.
+ * plugin/icedteanp/IcedTeaPluginRequestProcessor.cc
+ (sendWindow): Use NPVariant address to store windows info on Java side,
+ rather than the corresponding NPObject address.
+ (call): Use IcedTeaPluginUtilities::javaResultToNPVariant for java var to
+ NPVariant conversion, rather than custom conversion.
+ (sendString): Use new AyncCallThreadData struct and
+ pluginthreadasynccall() for calls that need to be in main thread.
+ (setMember): Send value information directly to _setMember, and let it
+ sort out how to set values.
+ (convertToNPVariant): Moved to utilities class.
+ (sendMember): Deal with NPVariants instead of NPObjects.
+ (queue_processor): Add case for GetSlot (WIP).
+ (storeVariantInJava): Remove deprecated function.
+ (_setMember): Use javaResultToNPVariant to get a value loaded into a
+ variant. Deal with NPVariants instead of NPObjects.
+ (_getMember): Deal with NPVariants instead of NPObjects.
+ (_getString): New function. Returns toString values for variables.
+ * plugin/icedteanp/IcedTeaPluginRequestProcessor.h: Declare new _getString
+ function.
+ * plugin/icedteanp/IcedTeaPluginUtils.cc: Move object map from the plugin
+ request processor class.
+ (strSplit): For efficiency, reserve enough space for strings beforehand.
+ (getUTF8String): Same.
+ (printStringVector): Run only if in debug.
+ (removeInstanceID): New function to remove mapping between an object and
+ an instance.
+ (invalidateInstance): New function. Removes all mappings from objects to
+ the given instance.
+ (getNPObjectFromJavaKey): New function. Given a java object key, returns
+ the corresponding JS object, if any.
+ (storeObjectMapping): New function. Stores a mapping between Java
+ objects and JS objects (peering).
+ (removeObjectMapping): New function. Removes peering between JS object and
+ Java object.
+ (printStringPtrVector): Run only if in debug.
+ (printNPVariant): Same.
+ (NPVariantToString): Store result in provided parameter.
+ (javaResultToNPVariant): New function, moved from
+ IcedTeaScriptablePluginObject.
+ (isObjectJSArray): New function. Returns if given NPObject represents an
+ array.
+ * plugin/icedteanp/IcedTeaPluginUtils.h: Misc. changes as needed by
+ updates to IcedTeaPluginUtils.cc.
+ * plugin/icedteanp/IcedTeaScriptablePluginObject.cc: Move object_map to
+ utilities class.
+ (getProperty): Supply instance id to findClass.
+ (get_scriptable_java_object): Use the new
+ getNPObjectFromJavaKey/storeObjectMapping functions in the utilities
+ class. Also, create object asynchronously.
+ (_createAndRetainJavaObject): New function. Creates a scriptable Java
+ object and increments reference count.
+ (is_valid_java_object): New function. Returns if the given object is still
+ valid.
+ (invalidate): Remove instance and Java side object mapping for given
+ object.
+ (javaResultToNPVariant): Moved to utilities class.
+ (invoke): Create variants peer on Java side before calling
+ callMethod/callStaticMethod.
+ (setProperty): Create variant peers on Java side before calling
+ setField/setStaticField.
+ (construct): Create variant peers on Java side before calling the
+ constructor.
+ * plugin/icedteanp/IcedTeaScriptablePluginObject.h: Misc. changes as
+ needed by updates to IcedTeaScriptablePluginObject.cc.
+ * plugin/icedteanp/java/netscape/javascript/JSObject.java: Added a new
+ string constructor.
+ * plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java
+ (getCostAndCastedObject): Add support for array type parameters.
+ (isNum): Return true for boolean (booleans are convertible to int as per
+ spec).
+ (getNum): Remove case for char/Character.
+ (getArrayAsString): New function. For debug only.
+ * plugin/icedteanp/java/sun/applet/PluginAppletSecurityContext.java
+ (handleMessage): Add support for getValue. Wire in array creaion support.
+ Support a '[System]' source for privileged calls.
+ (isInt): New function. Returns if given object is an integer/convertible to
+ an int.
+ * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java
+ (setMember): Send primitive/boxable values as literals.
+ (setSlot): Same.
+ (getWindow): Fortify condition for wait for panel initialization.
+ (parse): Handle nested objected tags, don't allow parameter value
+ overwrite.
+
2010-01-11 Gary Benson <gbenson at redhat.com>
* contrib/checkopts/checkopts: Updated for the above.
diff -r 22113074838a -r 549c87a321e0 Makefile.am
--- a/Makefile.am Mon Jan 11 11:43:43 2010 +0000
+++ b/Makefile.am Mon May 10 18:05:11 2010 +0100
@@ -317,7 +317,8 @@ ICEDTEA_PATCHES = \
patches/icedtea-disable-intree-ec.patch \
patches/icedtea-sources.patch \
patches/no-precompiled.patch \
- patches/parisc.patch
+ patches/parisc.patch \
+ patches/sh4-support.patch
# Conditional patches
diff -r 22113074838a -r 549c87a321e0 NEWS
--- a/NEWS Mon Jan 11 11:43:43 2010 +0000
+++ b/NEWS Mon May 10 18:05:11 2010 +0100
@@ -26,6 +26,7 @@ New in release 1.13 (2010-XX-XX)
- 6932480: Crash in CompilerThread/Parser. Unloaded array klass?
- Added JNI call tracing using systemtap version 1.0+ when
configuring with --enable-systemtap. See tapset/hotspot_jni.stp.
+- Add support for Zero build on Hitachi SH.
New in release 1.12 (2009-11-17)
diff -r 22113074838a -r 549c87a321e0 patches/hotspot/default/icedtea-shark.patch
--- a/patches/hotspot/default/icedtea-shark.patch Mon Jan 11 11:43:43 2010 +0000
+++ b/patches/hotspot/default/icedtea-shark.patch Mon May 10 18:05:11 2010 +0100
@@ -1,23 +1,6 @@ diff -Nru openjdk.orig/hotspot/src/share
-diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.cpp openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.cpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.cpp 2010-01-25 14:41:05.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.cpp 2010-02-22 15:15:54.000000000 +0000
-@@ -602,3 +602,4 @@
- }
- return impl;
- }
-+
-diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.hpp openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.hpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.hpp 2010-01-25 14:41:05.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.hpp 2010-02-22 15:15:54.000000000 +0000
-@@ -208,4 +208,5 @@
- // What kind of ciObject is this?
- bool is_instance_klass() { return true; }
- bool is_java_klass() { return true; }
-+
- };
diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp openjdk/hotspot/src/share/vm/ci/ciMethod.cpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp 2010-02-19 17:14:36.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/ci/ciMethod.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciMethod.cpp 2010-05-10 14:38:13.000000000 +0100
@@ -56,9 +56,9 @@
_liveness = NULL;
_bcea = NULL;
@@ -103,8 +86,8 @@ diff -Nru openjdk.orig/hotspot/src/share
// ------------------------------------------------------------------
diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp openjdk/hotspot/src/share/vm/ci/ciMethod.hpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp 2010-01-25 14:41:05.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/ci/ciMethod.hpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciMethod.hpp 2010-05-10 14:38:13.000000000 +0100
@@ -71,7 +71,7 @@
// Optional liveness analyzer.
@@ -125,8 +108,8 @@ diff -Nru openjdk.orig/hotspot/src/share
address interpreter_entry();
diff -Nru openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp openjdk/hotspot/src/share/vm/code/nmethod.cpp
---- openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp 2010-02-19 17:14:36.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/code/nmethod.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/code/nmethod.cpp 2010-05-10 15:00:13.000000000 +0100
@@ -65,6 +65,11 @@
if (is_native_method()) return false;
return compiler()->is_c2();
@@ -139,7 +122,7 @@ diff -Nru openjdk.orig/hotspot/src/share
-@@ -1345,6 +1350,10 @@
+@@ -1346,6 +1351,10 @@
CodeCache::remove_saved_code(this);
}
@@ -150,23 +133,7 @@ diff -Nru openjdk.orig/hotspot/src/share
((CodeBlob*)(this))->flush();
CodeCache::free(this);
-Index: openjdk/hotspot/src/share/vm/utilities/macros.hpp
-===================================================================
---- openjdk.orig/ports/hotspot/src/share/vm/utilities/macros.hpp 2009-11-12 15:17:14.458064088 +0100
-+++ openjdk/hotspot/src/share/vm/utilities/macros.hpp 2009-11-12 15:19:18.097063844 +0100
-@@ -146,9 +146,11 @@
- #if defined(IA32) || defined(AMD64)
- #define X86
- #define X86_ONLY(code) code
-+#define NOT_X86(code)
- #else
- #undef X86
- #define X86_ONLY(code)
-+#define NOT_X86(code) code
- #endif
-
- #ifdef IA32
-@@ -1736,6 +1745,7 @@
+@@ -1737,6 +1746,7 @@
// Method that knows how to preserve outgoing arguments at call. This method must be
// called with a frame corresponding to a Java invoke
void nmethod::preserve_callee_argument_oops(frame fr, const RegisterMap *reg_map, OopClosure* f) {
@@ -174,7 +141,7 @@ Index: openjdk/hotspot/src/share/vm/util
if (!method()->is_native()) {
SimpleScopeDesc ssd(this, fr.pc());
Bytecode_invoke* call = Bytecode_invoke_at(ssd.method(), ssd.bci());
-@@ -1743,6 +1753,7 @@
+@@ -1744,6 +1754,7 @@
symbolOop signature = call->signature();
fr.oops_compiled_arguments_do(signature, has_receiver, reg_map, f);
}
@@ -182,7 +149,7 @@ Index: openjdk/hotspot/src/share/vm/util
}
-@@ -2242,6 +2253,8 @@
+@@ -2247,6 +2258,8 @@
tty->print("(c1) ");
} else if (is_compiled_by_c2()) {
tty->print("(c2) ");
@@ -192,8 +159,8 @@ Index: openjdk/hotspot/src/share/vm/util
tty->print("(nm) ");
}
diff -Nru openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp openjdk/hotspot/src/share/vm/code/nmethod.hpp
---- openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp 2010-02-19 17:14:37.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/code/nmethod.hpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/code/nmethod.hpp 2010-05-10 14:38:13.000000000 +0100
@@ -334,6 +334,7 @@
bool is_compiled_by_c1() const;
@@ -203,8 +170,8 @@ diff -Nru openjdk.orig/hotspot/src/share
// boundaries for different parts
address code_begin () const { return _entry_point; }
diff -Nru openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp
---- openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp 2009-03-30 17:15:27.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp 2010-05-10 14:38:13.000000000 +0100
@@ -45,18 +45,26 @@
// Missing feature tests
virtual bool supports_native() { return true; }
@@ -234,8 +201,8 @@ diff -Nru openjdk.orig/hotspot/src/share
// Customization
diff -Nru openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp
---- openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp 2010-02-19 17:14:37.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp 2010-05-10 14:38:13.000000000 +0100
@@ -555,6 +555,14 @@
#endif
#endif // COMPILER2
@@ -252,8 +219,8 @@ diff -Nru openjdk.orig/hotspot/src/share
_task_free_list = NULL;
diff -Nru openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp
---- openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp 2009-09-21 17:12:26.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp 2010-05-10 14:38:13.000000000 +0100
@@ -44,6 +44,7 @@
friend class VMStructs;
friend class CardTableRS;
@@ -263,8 +230,8 @@ diff -Nru openjdk.orig/hotspot/src/share
// For debugging.
friend class GuaranteeNotModClosure;
diff -Nru openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp openjdk/hotspot/src/share/vm/oops/methodOop.cpp
---- openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp 2010-02-19 17:14:37.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/oops/methodOop.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/oops/methodOop.cpp 2010-05-10 14:38:13.000000000 +0100
@@ -751,10 +751,14 @@
}
@@ -281,9 +248,9 @@ diff -Nru openjdk.orig/hotspot/src/share
}
diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp 2010-02-19 17:14:39.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp 2010-02-22 15:15:54.000000000 +0000
-@@ -229,6 +229,7 @@
+--- openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp 2010-05-10 14:38:13.000000000 +0100
+@@ -254,6 +254,7 @@
}
@@ -291,7 +258,7 @@ diff -Nru openjdk.orig/hotspot/src/share
// Compute the caller frame based on the sender sp of stub_frame and stored frame sizes info.
CodeBlob* cb = stub_frame.cb();
// Verify we have the right vframeArray
-@@ -245,6 +246,10 @@
+@@ -270,6 +271,10 @@
assert(cb->is_deoptimization_stub() || cb->is_uncommon_trap_stub(), "just checking");
Events::log("fetch unroll sp " INTPTR_FORMAT, unpack_sp);
#endif
@@ -302,7 +269,7 @@ diff -Nru openjdk.orig/hotspot/src/share
// This is a guarantee instead of an assert because if vframe doesn't match
// we will unpack the wrong deoptimized frame and wind up in strange places
// where it will be very difficult to figure out what went wrong. Better
-@@ -355,7 +360,9 @@
+@@ -380,7 +385,9 @@
frame_pcs[0] = deopt_sender.raw_pc();
@@ -312,7 +279,7 @@ diff -Nru openjdk.orig/hotspot/src/share
UnrollBlock* info = new UnrollBlock(array->frame_size() * BytesPerWord,
caller_adjustment * BytesPerWord,
-@@ -896,7 +903,20 @@
+@@ -921,7 +928,20 @@
// stuff a C2I adapter we can properly fill in the callee-save
// register locations.
frame caller = fr.sender(reg_map);
@@ -333,7 +300,7 @@ diff -Nru openjdk.orig/hotspot/src/share
frame sender = caller;
-@@ -1063,7 +1083,7 @@
+@@ -1073,7 +1093,7 @@
JRT_END
@@ -342,7 +309,7 @@ diff -Nru openjdk.orig/hotspot/src/share
void Deoptimization::load_class_by_index(constantPoolHandle constant_pool, int index, TRAPS) {
// in case of an unresolved klass entry, load the class.
if (constant_pool->tag_at(index).is_unresolved_klass()) {
-@@ -1825,7 +1845,7 @@
+@@ -1835,7 +1855,7 @@
if (xtty != NULL) xtty->tail("statistics");
}
}
@@ -351,15 +318,15 @@ diff -Nru openjdk.orig/hotspot/src/share
// Stubs for C1 only system.
-@@ -1861,4 +1881,4 @@
+@@ -1871,4 +1891,4 @@
return buf;
}
-#endif // COMPILER2
+#endif // COMPILER2 || SHARK
diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp openjdk/hotspot/src/share/vm/runtime/globals.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp 2010-01-25 14:41:13.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/runtime/globals.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/globals.cpp 2010-05-10 14:38:13.000000000 +0100
@@ -181,6 +181,18 @@
#define C2_NOTPRODUCT_FLAG_STRUCT(type, name, value, doc) { #type, XSTR(name), &name, "{C2 notproduct}", DEFAULT },
#endif
@@ -390,8 +357,8 @@ diff -Nru openjdk.orig/hotspot/src/share
};
diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp openjdk/hotspot/src/share/vm/runtime/globals.hpp
---- openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp 2010-02-22 13:12:35.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/runtime/globals.hpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp 2010-05-10 14:37:37.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/globals.hpp 2010-05-10 14:38:13.000000000 +0100
@@ -22,7 +22,7 @@
*
*/
@@ -402,8 +369,8 @@ diff -Nru openjdk.orig/hotspot/src/share
define_pd_global(bool, UseTLAB, false);
define_pd_global(bool, CICompileOSR, false);
diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp openjdk/hotspot/src/share/vm/runtime/vm_version.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp 2009-10-30 15:58:39.000000000 +0000
-+++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp 2010-02-22 15:15:54.000000000 +0000
+--- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp 2010-05-10 14:38:13.000000000 +0100
@@ -94,12 +94,16 @@
#ifdef TIERED
#define VMTYPE "Server"
@@ -421,3 +388,18 @@ diff -Nru openjdk.orig/hotspot/src/share
#endif // TIERED
#endif // KERNEL
+diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp openjdk/hotspot/src/share/vm/utilities/macros.hpp
+--- openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp 2010-04-28 22:16:22.000000000 +0100
++++ openjdk/hotspot/src/share/vm/utilities/macros.hpp 2010-05-10 14:38:13.000000000 +0100
+@@ -151,9 +151,11 @@
+ #if defined(IA32) || defined(AMD64)
+ #define X86
+ #define X86_ONLY(code) code
++#define NOT_X86(code)
+ #else
+ #undef X86
+ #define X86_ONLY(code)
++#define NOT_X86(code) code
+ #endif
+
+ #ifdef IA32
diff -r 22113074838a -r 549c87a321e0 patches/sh4-support.patch
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/sh4-support.patch Mon May 10 18:05:11 2010 +0100
@@ -0,0 +1,63 @@
+--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2009-12-24 14:56:12.000000000 +0900
++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2009-12-24 15:02:51.000000000 +0900
+@@ -1753,7 +1753,8 @@
+ {EM_MIPS_RS3_LE, EM_MIPS_RS3_LE, ELFCLASS32, ELFDATA2LSB, (char*)"MIPSel"},
+ {EM_MIPS, EM_MIPS, ELFCLASS32, ELFDATA2MSB, (char*)"MIPS"},
+ {EM_PARISC, EM_PARISC, ELFCLASS32, ELFDATA2MSB, (char*)"PARISC"},
+- {EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, (char*)"M68k"}
++ {EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, (char*)"M68k"},
++ {EM_SH, EM_SH, ELFCLASS32, ELFDATA2LSB, (char*)"SH"} /* Support little endian only*/
+ };
+
+ #if (defined IA32)
+@@ -1784,9 +1785,11 @@
+ static Elf32_Half running_arch_code=EM_MIPS;
+ #elif (defined M68K)
+ static Elf32_Half running_arch_code=EM_68K;
++ #elif (defined SH)
++ static Elf32_Half running_arch_code=EM_SH;
+ #else
+ #error Method os::dll_load requires that one of following is defined:\
+- IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K
++ IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K, SH
+ #endif
+
+ // Identify compatability class for VM's architecture and library's architecture
+--- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-12-24 14:56:10.000000000 +0900
++++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-12-24 15:05:27.000000000 +0900
+@@ -47,7 +47,8 @@
+ #define X_S390X 12
+ #define X_SPARC 13
+ #define X_SPARCV9 14
+-#define X_ZERO 15
++#define X_SH 15
++#define X_ZERO 16
+
+ // **********************************
+ // Make sure you set X_PLATFORM and X_ARCH defines correctly.
+--- openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2009-12-24 15:11:52.000000000 +0900
++++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2009-12-24 15:12:17.000000000 +0900
+@@ -121,6 +121,11 @@
+ REQUIRED_CC_VER = 4.0
+ REQUIRED_GCC_VER = 4.0.*
+ endif
++ ifneq ("$(findstring sh,$(ARCH))", "")
++ # sh4*, sh3*
++ REQUIRED_CC_VER = 4.0
++ REQUIRED_GCC_VER = 4.0.*
++ endif
+ # Option used to create a shared library
+ SHARED_LIBRARY_FLAG = -shared -mimpure-text
+ SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 )
+--- openjdk/corba/make/common/shared/Platform.gmk 2009-12-24 21:30:38.000000000 +0900
++++ openjdk/corba/make/common/shared/Platform.gmk 2009-12-25 10:17:14.000000000 +0900
+@@ -263,6 +263,9 @@
+ ifeq ($(ARCH), s390x)
+ ARCH_DATA_MODEL=64
+ endif
++ ifeq ($(ARCH), sh)
++ ARCH_DATA_MODEL=32
++ endif
+ endif
+ endif
+
diff -r 22113074838a -r 549c87a321e0 plugin/icedteanp/IcedTeaJavaRequestProcessor.cc
--- a/plugin/icedteanp/IcedTeaJavaRequestProcessor.cc Mon Jan 11 11:43:43 2010 +0000
+++ b/plugin/icedteanp/IcedTeaJavaRequestProcessor.cc Mon May 10 18:05:11 2010 +0100
@@ -36,6 +36,8 @@ obligated to do so. If you do not wish
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
+#include <typeinfo>
+
#include "IcedTeaJavaRequestProcessor.h"
More information about the distro-pkg-dev
mailing list