diff options
author | MW | 2007-04-11 12:49:00 +0000 |
---|---|---|
committer | MW | 2007-04-11 12:49:00 +0000 |
commit | 2f3b6c4b1060a574263c4be114cb33d505ac6e71 (patch) | |
tree | d0e47a1343034945f4830da2b345788f04f512d3 /OpenSim.Scripting.EmbeddedJVM | |
parent | * ignoring some binaries (diff) | |
download | opensim-SC-2f3b6c4b1060a574263c4be114cb33d505ac6e71.zip opensim-SC-2f3b6c4b1060a574263c4be114cb33d505ac6e71.tar.gz opensim-SC-2f3b6c4b1060a574263c4be114cb33d505ac6e71.tar.bz2 opensim-SC-2f3b6c4b1060a574263c4be114cb33d505ac6e71.tar.xz |
small improvement to the jvm and test script
Diffstat (limited to 'OpenSim.Scripting.EmbeddedJVM')
-rw-r--r-- | OpenSim.Scripting.EmbeddedJVM/InterpreterLogic.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/OpenSim.Scripting.EmbeddedJVM/InterpreterLogic.cs b/OpenSim.Scripting.EmbeddedJVM/InterpreterLogic.cs index 8c895af..3b7da35 100644 --- a/OpenSim.Scripting.EmbeddedJVM/InterpreterLogic.cs +++ b/OpenSim.Scripting.EmbeddedJVM/InterpreterLogic.cs | |||
@@ -90,6 +90,20 @@ namespace OpenSim.Scripting.EmbeddedJVM | |||
90 | this._mThread.PC += 2; | 90 | this._mThread.PC += 2; |
91 | result = true; | 91 | result = true; |
92 | break; | 92 | break; |
93 | case 23: | ||
94 | short findex1 = (short)((GlobalMemory.MethodArea.MethodBuffer[this._mThread.PC])); | ||
95 | Float fload = new Float(); | ||
96 | if (this._mThread.currentFrame.LocalVariables[findex1] != null) | ||
97 | { | ||
98 | if (this._mThread.currentFrame.LocalVariables[findex1] is Float) | ||
99 | { | ||
100 | fload.mValue = ((Float)this._mThread.currentFrame.LocalVariables[findex1]).mValue; | ||
101 | this._mThread.currentFrame.OpStack.Push(fload); | ||
102 | } | ||
103 | } | ||
104 | this._mThread.PC++; | ||
105 | result = true; | ||
106 | break; | ||
93 | case 26: | 107 | case 26: |
94 | if (this._mThread.currentFrame.LocalVariables[0] != null) | 108 | if (this._mThread.currentFrame.LocalVariables[0] != null) |
95 | { | 109 | { |
@@ -162,6 +176,16 @@ namespace OpenSim.Scripting.EmbeddedJVM | |||
162 | } | 176 | } |
163 | result = true; | 177 | result = true; |
164 | break; | 178 | break; |
179 | case 56: | ||
180 | short findex = (short)((GlobalMemory.MethodArea.MethodBuffer[this._mThread.PC] )); | ||
181 | BaseType fstor = this._mThread.currentFrame.OpStack.Pop(); | ||
182 | if (fstor is Float) | ||
183 | { | ||
184 | this._mThread.currentFrame.LocalVariables[findex] = (Float)fstor; | ||
185 | } | ||
186 | this._mThread.PC++; | ||
187 | result = true; | ||
188 | break; | ||
165 | case 59: | 189 | case 59: |
166 | BaseType baset = this._mThread.currentFrame.OpStack.Pop(); | 190 | BaseType baset = this._mThread.currentFrame.OpStack.Pop(); |
167 | if (baset is Int) | 191 | if (baset is Int) |