United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6939845 zero needs fallback path in C++ interpreter for platform dependent fast bytecodes
JDK-6939845 : zero needs fallback path in C++ interpreter for platform dependent fast bytecodes

Details
Type:
Bug
Submit Date:
2010-03-31
Status:
Closed
Updated Date:
2012-10-08
Project Name:
JDK
Resolved Date:
2010-04-21
Component:
hotspot
OS:
solaris_9
Sub-Component:
runtime
CPU:
sparc
Priority:
P4
Resolution:
Fixed
Affected Versions:
hs18
Fixed Versions:
hs18 (b03)

Related Reports
Backport:
Backport:
Backport:
Backport:
Backport:

Sub Tasks

Description
diff -r c047da02984c src/share/vm/interpreter/bytecodeInterpreter.cpp
--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp  Wed Mar 17 16:40:25 2010 -0700
+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp  Wed Mar 31 11:01:02 2010 -0700
@@ -2328,6 +2328,17 @@ run:
      }

      DEFAULT:
+#ifdef ZERO
+          // Some zero configurations use the C++ interpreter as a
+          // fallback interpreter and have support for platform
+          // specific fast bytecodes which aren't supported here, so
+          // redispatch to the equivalent non-fast bytecode when they
+          // are encountered.
+          if (Bytecodes::is_defined((Bytecodes::Code)opcode)) {
+              opcode = (jubyte)Bytecodes::java_code((Bytecodes::Code)opcode);
+              goto opcode_switch;
+          }
+#endif
          fatal2("\t*** Unimplemented opcode: %d = %s\n",
                 opcode, Bytecodes::name((Bytecodes::Code)opcode));
          goto finish;

                                    

Comments
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/f61d795ce6de
                                     
2010-04-01
EVALUATION

See the description.
                                     
2010-04-01
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/f61d795ce6de
                                     
2010-04-08



Hardware and Software, Engineered to Work Together