changeset in /hg/icedtea: 2007-11-13 Gary Benson <gbenson at redh...

Gary Benson gbenson at redhat.com
Wed Jan 16 07:09:22 PST 2008


changeset d309483d1404 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d309483d1404
description:
	2007-11-13  Gary Benson  <gbenson at redhat.com>

		* ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp
		(generate_native_entry): Removed an extraneous call to
		InterpreterRuntime::prepare_native_call().

diffstat:

2 files changed, 18 insertions(+), 10 deletions(-)
ChangeLog                                           |    6 +++++
ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp |   22 ++++++++++---------

diffs (45 lines):

diff -r c74a9113a051 -r d309483d1404 ChangeLog
--- a/ChangeLog	Mon Nov 12 15:30:32 2007 -0500
+++ b/ChangeLog	Tue Nov 13 06:48:38 2007 -0500
@@ -1,3 +1,9 @@ 2007-11-12  Lillian Angel  <langel at redha
+2007-11-13  Gary Benson  <gbenson at redhat.com>
+
+	* ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp
+	(generate_native_entry): Removed an extraneous call to
+	InterpreterRuntime::prepare_native_call().
+
 2007-11-12  Lillian Angel  <langel at redhat.com>
 
 	* Makefile.am: Fixed tools.jar and rt.jar to include all directories
diff -r c74a9113a051 -r d309483d1404 ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp
--- a/ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp	Mon Nov 12 15:30:32 2007 -0500
+++ b/ports/hotspot/src/cpu/ppc/vm/cppInterpreter_ppc.cpp	Tue Nov 13 06:48:38 2007 -0500
@@ -539,16 +539,18 @@ address InterpreterGenerator::generate_n
   Label got_function;
 
   __ load (function, native_function_addr);
-  __ compare (function, 0);
-  __ bne (got_function);
-  __ mr (r3, Rthread);
-  __ mr (r4, Rmethod);
-  __ call (CAST_FROM_FN_PTR(address, InterpreterRuntime::prepare_native_call));
-  __ load (r0, Address(Rthread, Thread::pending_exception_offset()));
-  __ compare (r0, 0);
-  __ bne (return_to_caller);
-  __ load (function, native_function_addr);
-  __ bind (got_function);
+#ifdef ASSERT
+  {
+    // InterpreterRuntime::prepare_native_call() sets the mirror
+    // handle and native function address first and the signature
+    // handler last, so function should always be set here.
+    Label ok;
+    __ compare (function, 0);
+    __ bne (ok);
+    __ should_not_reach_here (__FILE__, __LINE__);
+    __ bind (ok);
+  }
+#endif
 
   // Call signature handler
   __ mtlr (handler);



More information about the distro-pkg-dev mailing list