changeset 52:a25692dd0ca2

foo...
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 01 Feb 2021 18:55:20 +0900
parents 1306d0d1c653
children 1a4d4e64f0b8
files paper/chapter/04-interface.tex paper/master_paper.pdf paper/src/replaceenum.cbc
diffstat 3 files changed, 11 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/paper/chapter/04-interface.tex	Mon Feb 01 18:41:52 2021 +0900
+++ b/paper/chapter/04-interface.tex	Mon Feb 01 18:55:20 2021 +0900
@@ -230,3 +230,9 @@
 if文で条件判定をしているが、前者は出力があるケースかどうかのチェックである。
 続く条件式はGearsOSのビルドルールとして静的に書いたstubの場合は変更を加えない為に、 静的に書いているかどうかの確認をしている。
 変数\texttt{\$pick\_next}で継続先のCodeGearの名前を作製している。
+CodeGearの名前は一度目の解析で確認した継続先に\texttt{\_}とカウント数をつけている。
+ここで作製したCodeGearの名前を、3行目でcontextに書き込むCbCコードとして生成している。
+
+
+実際に生成された例題をソースコード\ref{src:replaceenum}に示す。
+\lstinputlisting[label=src:replaceenum, caption=enumの番号が差し替えられたCodeGear]{src/replaceenum.cbc}
\ No newline at end of file
Binary file paper/master_paper.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/src/replaceenum.cbc	Mon Feb 01 18:55:20 2021 +0900
@@ -0,0 +1,5 @@
+__code pop2TestStackTestImpl3(struct Context *context,struct StackTestImpl3* stackTest, struct Stack* stack, enum Code next) {
+    Gearef(context, Stack)->stack = (union Data*) stack;
+    Gearef(context, Stack)->next = C_pop2Test1StackTestImpl3_1;
+    goto meta(context, stack->pop2);
+}
\ No newline at end of file