こんにちは、I.Tak.です。
(長いラベルのエラー)
> 今思い付いたのですが、最適化などをOFFにしてごくありふれたオプ
>ションでコンパイルすれば、すんなり通るのかもしれません。
やっと通りました。最適化なしでコンパイルすると(gcc -O0 main.c
nask.c LL.c)まともになりました。ただ、バイナリサイズは60KBも
あってまともじゃありません(^^;;; これってgccのバグなんでしょう
ねえ……
>> 別な問題です。
>>main: push command
>>という行がエラーになりました。しかし、
> (引用後略)
> エラー番号はいくつでしたか?・・・[ERROR #xxx]という形式でエラ
>ー番号が出ていると思うのでそれを教えてください。参考にします。
> それとcommandはどのように定義されたラベルなのでしょうか?
これを追及するために別なプログラムをアセンブルしてみました。
そのリストです(gcc -O0 でコンパイルしたnaskを使っています)。
1 00000000 [bits 32]
2 00000000 [instrset "i386"]
3 00000000 [optimize 1]
4 00000000 [format "BIN"]
5 00000000 [option 1]
6 00000000
7 00000000 foobarlabel:
8 00000000 6A 06 head: push foo
>> [ERROR #009] expression error.
9 00000002 06 add eax, foo
>> [ERROR #009] expression error.
10 00000003 83 C3 06 add ebx, foo
>> [ERROR #009] expression error.
11 00000006 foo:
それでは。
I.Tak. <g240845 !Atmark! mail.ecc.u-tokyo.ac.jp>
http://user.ecc.u-tokyo.ac.jp/~g240845/