# HG changeset patch # User anatofuz # Date 1550571975 -32400 # Node ID 6edf94951f7508635afbefdb9d45cd0d82c606a6 # Parent f6d6bfdbf6482133404fb9883b032bfaa4b14d6c update diff -r f6d6bfdbf648 -r 6edf94951f75 presen/fig/code_to_bytecode.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/presen/fig/code_to_bytecode.svg Tue Feb 19 19:26:15 2019 +0900 @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r f6d6bfdbf648 -r 6edf94951f75 presen/slide.html --- a/presen/slide.html Tue Feb 19 18:39:11 2019 +0900 +++ b/presen/slide.html Tue Feb 19 19:26:15 2019 +0900 @@ -234,6 +234,36 @@ + + +
+ +

MoarVMのバイトコード

+ +
sub test_func(int $left, int $right){
+    my int $sum := $left + $right;
+    ++$sum;
+    return $sum;
+}
+
+my $arg1 := 1;
+my $arg2 := 8;
+
+say(test_func($arg1,$arg2));
+
+
+ + + +
+ +
+ +

MoarVMのバイトコード

+ + + +
diff -r f6d6bfdbf648 -r 6edf94951f75 presen/slide.md --- a/presen/slide.md Tue Feb 19 18:39:11 2019 +0900 +++ b/presen/slide.md Tue Feb 19 19:26:15 2019 +0900 @@ -83,6 +83,26 @@ add_i loc_3_int, loc_0_int, loc_1_int set loc_2_obj, loc_3_obj ``` +## MoarVMのバイトコード + +``` +sub test_func(int $left, int $right){ + my int $sum := $left + $right; + ++$sum; + return $sum; +} + +my $arg1 := 1; +my $arg2 := 8; + +say(test_func($arg1,$arg2)); + +``` + +## MoarVMのバイトコード + + + ## MoarVMのバイトコードインタプリタ - バイトコードは連続したメモリに確保されている diff -r f6d6bfdbf648 -r 6edf94951f75 presen/slide.pdf Binary file presen/slide.pdf has changed diff -r f6d6bfdbf648 -r 6edf94951f75 presen/slide.pdf.html --- a/presen/slide.pdf.html Tue Feb 19 18:39:11 2019 +0900 +++ b/presen/slide.pdf.html Tue Feb 19 19:26:15 2019 +0900 @@ -218,6 +218,36 @@ + + +
+ +

MoarVMのバイトコード

+ +
sub test_func(int $left, int $right){
+    my int $sum := $left + $right;
+    ++$sum;
+    return $sum;
+}
+
+my $arg1 := 1;
+my $arg2 := 8;
+
+say(test_func($arg1,$arg2));
+
+
+ + + +
+ +
+ +

MoarVMのバイトコード

+ +

+ +