# HG changeset patch # User cin # Date 1382629557 -14400 # Node ID 033ebe7432d5dfb0a8eae9e22b0551e77b846111 # Parent e113095f1de035687590e63001b25a6ce410271c vm v2 diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/Jint.Runtime.csproj --- a/Jint.Runtime/Jint.Runtime.csproj Wed Oct 23 13:24:57 2013 +0400 +++ b/Jint.Runtime/Jint.Runtime.csproj Thu Oct 24 19:45:57 2013 +0400 @@ -49,6 +49,14 @@ + + + + + + + + @@ -61,5 +69,7 @@ + + \ No newline at end of file diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM/OpCodes/Codes.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM/OpCodes/Codes.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,10 @@ +using System; + +namespace Jint.Runtime +{ + public enum Codes: int + { + Add = 1 + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM/OpCodes/IBinaryOperation2.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM/OpCodes/IBinaryOperation2.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,9 @@ +using System; + +namespace Jint.Runtime.VM.OpCodes +{ + public interface IBinaryOperation2 + { + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM/OpCodes/Instruction.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM/OpCodes/Instruction.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,11 @@ +using System; + +namespace Jint.Runtime +{ + public struct Instruction + { + public Codes code; + public int[] operands; + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/Box.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/Box.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,19 @@ +using System; + +namespace Jint.Runtime.VM2 +{ + using OpCodes; + + public class Box + { + public Operation[] impl; + public object value; + + public Type HoldingType { + get { + return value == null ? null : value.GetType (); + } + } + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/Frame.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/Frame.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,17 @@ +using System; + +namespace Jint.Runtime.VM2 +{ + public class Frame + { + Box m_values; + public Frame (int size) + { + } + + public Box Get() { + } + + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/Instruction.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/Instruction.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,12 @@ +using System; + +namespace Jint.Runtime.VM2 +{ + public struct Instruction + { + public Codes code; + public int dest; + public int[] args; + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/IntegerBinder.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/IntegerBinder.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,12 @@ +using System; + +namespace Jint.Runtime +{ + public class IntegerBinder + { + public int OpAdd(int arg1, int arg2) { + return arg1 + arg2; + } + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/Machine.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/Machine.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; + +namespace Jint.Runtime.VM2 +{ + public class Machine + { + RuntimeContext m_context; + Stack m_frames; + object[] m_frame; + + + public Machine () + { + } + + public void Execute(Instruction[] instructions) { + foreach (var op in instructions) { + + } + } + + private object[] MakeArgs(int[] regs) { + object[] args = new object[regs.Length]; + for (int i=0; i< regs.Length; i++) + args = m_frame [regs [i]]; + } + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/OpCodes/Add.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/OpCodes/Add.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,12 @@ +using System; + +namespace Jint.Runtime +{ + public class Add + { + public Add () + { + } + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/OpCodes/Codes.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/OpCodes/Codes.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,11 @@ +using System; + +namespace Jint.Runtime +{ + public enum Codes: int + { + Add = 1, + MaxCode + } +} + diff -r e113095f1de0 -r 033ebe7432d5 Jint.Runtime/VM2/OpCodes/Operation.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Jint.Runtime/VM2/OpCodes/Operation.cs Thu Oct 24 19:45:57 2013 +0400 @@ -0,0 +1,5 @@ +using System; + +namespace Jint.Runtime.VM2.OpCodes { + public delegate object Operation(object[] args); +} diff -r e113095f1de0 -r 033ebe7432d5 Jint.userprefs --- a/Jint.userprefs Wed Oct 23 13:24:57 2013 +0400 +++ b/Jint.userprefs Thu Oct 24 19:45:57 2013 +0400 @@ -1,25 +1,15 @@  - + - - - - - - - - - - - - - - - - - - + + + + + + + + @@ -28,7 +18,10 @@ - + + + +