aboutsummaryrefslogtreecommitdiffhomepage
path: root/slide.saty
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2024-04-13 12:58:45 +0900
committernsfisis <nsfisis@gmail.com>2024-04-13 12:58:45 +0900
commita5f524d96daae378eafc978abc80fe6c8d55a01d (patch)
treea4c407aaeafdc024e2dedc33d7c1b62330dd6a30 /slide.saty
parentc5b428e68b9d3514224dbb4c110ef5c881a606b4 (diff)
downloadphpcon-odawara-2024-slides-a5f524d96daae378eafc978abc80fe6c8d55a01d.tar.gz
phpcon-odawara-2024-slides-a5f524d96daae378eafc978abc80fe6c8d55a01d.tar.zst
phpcon-odawara-2024-slides-a5f524d96daae378eafc978abc80fe6c8d55a01d.zip
update slidesHEADmain
Diffstat (limited to 'slide.saty')
-rw-r--r--slide.saty17
1 files changed, 14 insertions, 3 deletions
diff --git a/slide.saty b/slide.saty
index c04ac9f..e5e7c36 100644
--- a/slide.saty
+++ b/slide.saty
@@ -56,6 +56,17 @@ document '<
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ +frame{はじめに}<
+ +fig-center(vconcat [
+ gap 60pt;
+ big-textbox{来る新 JIT エンジンについて}
+ ]);
+ +fig-center(vconcat [
+ gap 30pt;
+ big-textbox{知った気になる}
+ ]);
+ >
+
+frame{普通の PHP プログラム}<
+fig-center(vconcat [
gap 30pt;
@@ -93,7 +104,7 @@ document '<
* Just In Time: ちょうど間に合って
* 実行時に機械語へコンパイルする
* PHP 8.0 で導入
- * 他言語での事例
+ * 他の処理系での事例
** LuaJIT
** V8 TurboFan、Sparkplug、Maglev
** CRuby MJIT、YJIT、RJIT
@@ -229,7 +240,7 @@ document '<
]);
>
- +frame{IR 導入のモチベーション}<
+ +frame{現在の実装の問題点}<
+listing{
* opcode から直接機械語に変換では最適化しづらい
** opcode の表現に制約を受ける
@@ -246,7 +257,7 @@ document '<
+frame{IR の特徴}<
+listing{
* より強力な最適化
- ** 最適化しやすい表現に
+ ** 最適化しやすいデータ構造に
** SSA \+ CFG から Sea-of-Nodes へ
* PHP に依存しない
}