NRIロゴ2号
Google
 
Web narimatsu.net
トップページ
写真日記
リンク集

旧コンテンツ

News,( US, UK)
はてなアンテナ
wikipedia

kick4wiki
kick4bbs
ジャパンネット銀行
ピンポイント天気
postMap
G-Tools
Kumaduino

うだうだ日記Index
2011
1 2 3 4 5
2010
1 2 3 4 5 6 7 8 9 10 11 12
2009
1 2 3 4 5 6 7 8 9 10 11 12
2008
1 2 3 4 5 6 7 8 9 10 11 12
2007
1 2 3 4 5 6 7 8 9 10 11 12
2006
1 2 3 4 5 6 7 8 9 10 11 12
2005
1 2 3 4 5 6 7 8 9 10 11 12
2004
1 2 3 4 5 6 7 8 9 10 11 12
2003
1 2 3 4 5 6 7 8 9 10 11 12
2002
1 2 3 4 5 6 7 8 9 10 11 12
2001
1 2 3 4 5 6 7 8 9 10 11 12
2000
1 2 3 4 5 6 7 8 9 10 11 12

うだうだ日記 2005年 4月14日


2005年4月14日 木曜日

H8/3664のプログラムの一部が突然動かなくなる。 デバッグ用のコードを挿入すると動く。 いろいろ調べてどうもgccのバグのように思えてきたので、 最新のgccをインストール。 binutil-2.15, gcc-3.4.3, newlib-1.13.0 の組み合わせ。 新しいgccでプログラムをコンパイルすると gasがそんなオペランドは無い、とエラーを吐く。 そういえば前回はここで諦めた気がする。 アセンブラのコードを出力し、エラーの箇所を調べると そこにはgccが生成したコードではなく、 私がasm文で出力したコードがあった。 レジスタ名でspは使えなくなったようだ。 er7に書き直しエラーを回避。 しかし、今度はlibgcc.aはあるが指定のアーキテクチャと違うので 使用できない,というエラーが出る。 objdumpで確かめると確かに h8300hnアーキテクチャのlibgcc.a なのに無視されてしまう。 -mnオプションに関するldコマンドのバグかと gdbでldの動作を調べたら、リンカースクリプトで OUTPUT_ARCH("h8300h") と指定しているのに気が付く。 OUTPUT_ARCH("h8300hn")に変更したらエラーは出なくなった。 ふぅ。 夜、テニス。3-6で惨敗。