# HG changeset patch
# User Nobuyasu Oshiro
# Date 1325091174 -32400
# Node ID 26a3713b2989400296d31a767c592b2ccdec3370
# Parent baace77d7d3038d62fc5a7ac4f5679df05d23e50
modify explanation of CbC
diff -r baace77d7d30 -r 26a3713b2989 presen/index.html
--- a/presen/index.html Thu Dec 29 00:39:01 2011 +0900
+++ b/presen/index.html Thu Dec 29 01:52:54 2011 +0900
@@ -164,7 +164,22 @@
-
+
+
+
+ Cの関数呼び出し |
+ CbCの継続 |
+
+
+
+
+
+ |
+
+
+ |
+
+
@@ -666,8 +681,19 @@
-
-
+
Micro-Cとの比較
+
以下はMicro-C,GCC-4.4とGCC-4.6それぞれのCbCコンパイラでコンパイルしたプログラムの実行結果
+
+
+
+ |
+
+
+ |
+
+
GCC版の最適化無しの場合、引数を全て一時変数に代入するという処理が入る。
+ その為に明らかに遅くなっていることが分かる。
+
だがGCCの最適化有りの場合はMicro-C版よりも早い。
@@ -677,9 +703,24 @@
まとめ
-
今回GCC版CbCコンパイラのアップデートを行った。
-
アップデートに伴いTCEの条件クリアや環境付き継続といった部分の修正と機能の拡張も行った。
-
+
+ - 今回GCC版CbCコンパイラのアップデートを行った。
+ - TCEにかかる判定の部分と環境付き継続の実装の修正を行った。
+
おかげで、以前より楽な管理ができる実装にすることができた。
+ - 後は環境付き継続の最適化の問題の修正とselftypeの実装を行う。
+ - 全ての実装を終えたらGCC版CbCコンパイラの実装はアップデートを行なっていくだけとなる。
+
+
+
+
+
今後の予定
+
+ - CbCを用いたプログラムの作成
+
+ - llvmへのCbCの実装
+
diff -r baace77d7d30 -r 26a3713b2989 presen/pix/cs_stack.png
Binary file presen/pix/cs_stack.png has changed