diff Changes @ 78:8418d4b7caa7

*** empty log message ***
author kono
date Sun, 02 Mar 2003 23:46:10 +0900
parents fb3fb9e9a462
children 82d0e30f61dd
line wrap: on
line diff
--- a/Changes	Fri Feb 28 20:29:21 2003 +0900
+++ b/Changes	Sun Mar 02 23:46:10 2003 +0900
@@ -1768,3 +1768,73 @@
 構文式から生成しないとだめだろうね。
 (ってことは、まだ、かなりの作業があるってこと.... むぅ...)
 tmp2.c は、通らないし...
+
+Fri Feb 28 20:32:46 JST 2003
+
+で、c2cbc は、途中で float の方を先にやるわけ?
+
+Sat Mar  1 22:05:43 JST 2003
+
+creg_destroy は、ぜんぜんだめ。これは基本的なアイデアがだめ。
+
+long long はstructでいいんじゃない? だめ? で struct 演算を別に
+定義してやる。これは、実装にもよるか。
+
+float,long longなんだけど、
+    FRGVAR DRGVAR LRGVAR
+などを作る。さらに、
+    FMUL DMUL LMUL
+などもいる。型の変換は binop で解釈する。変換も演算になる。
+    D2F, D2I, F2D, F2I, I2D, I2F, U2D, U2F
+ぐらいですか?
+
+emit_pushは、型を必要とするけど? そうだねぇ。emit_fpush, emit_dpush
+かな?
+
+creg にfloat register(or stack) の値を入れればいいんじゃないの?
+それを見て、emit_pushの型を決める。creg は、けっこう、いろんあ
+ものが見ているので、いじらない方がいいじゃないかなぁ。
+そうね。FMULとかがあるなら、それで判断できそう。
+
+構文木には型を含めないってのは不便。型を入れれば? そうすれば、
+    RGVAR CRGVAR FRGVAR DRGVAR LRGVAR
+ではなく、
+    RGVAR
+ですむし。その方が変形も楽だしね。型は、
+   CHAR,UNSIGNED, UNSIGNED CHAR, INT, FLOAT, DOUBLE, LONGLONG
+ぐらいですか。
+
+emit_data
+
+とすると、書き換えが結構あるけど。
+
+Sun Mar  2 12:58:38 JST 2003
+
+あとはconstantだね。FCONT,DCONSTかな。binopでは
+変換とかも必要なわけだけど。
+
+そういえば、shot のload/storeもないね。SRGVAR,SASSとかですか? SASS
+は、すでにあるなぁ。
+
+Sun Mar  2 22:01:58 JST 2003
+
+あれ?
+       conv->_sm();
+       (*conv->_sm)();
+の場合は、
+       *conv->_sm の値へcallする
+んだけど、
+       goto exit1();
+       goto (*exit1)();
+の場合は、
+       exit1
+の値へjumpするんだよね? およ? なんか勘違いしてる? なんでexit1()
+だとindirectが出て、(*exit1)だと出ないんだろう?
+
+この宣言は、
+    void (*_sm)();
+であって、
+    void _sm();
+はできない? なんで?
+
+あぁ、まぁ、いろいろ、めんどくさい。