[H8-ML(4722)] HEWのシミュレータデバッグ時の変数の割当てについて
From: "Takeshi Ohtsu" <ohtsu-t@xxxxxxxxxxxxxxxxx>
Date: 2004年05月06日(木)23時08分43秒
 皆様初めまして、大津と申します。

 トラ技に感化されて、HEWを利用しH8-3664Fをターゲットとした
C言語による開発をしています。
 何とかシミュレータの設定をし、デバッグさせることはできたの
ですが、デバッグ時のHEW上でのローカル変数の値がおかしいのです。

 どうおかしいかというと、シミュレータにロード後、
ローカルウインドウではその変数の割り当てアドレスが表示され、
そのアドレスの値が表示されているのですが、デバッグ実行しても
値は一行に変化しませんでした。
 実際にステップ実行し、メモリダンプで様子を見ると、
実はその変数は別のアドレスに割り当てられて動作している
ようなのです。(この時のアドレスのずれは5バイト程度です。)

 またC/C++コンパイラの最適化をオフにすると、この現象は
出なくなり、ローカルウインドウのアドレス/値表示と
動作時の変化が一致しました。

 なお変数の定義はvolatileとし、unsigned charとunsigned intの
2つを定義してみましたが、ともにずれてしまっていました。

 こういうものなのでしょうか?それとも設定ミスでしょうか...
 この現象について何かご存じの方、お手数ですがご教授ください。

+-------------------------------+
  大津 健(Takeshi Ohtsu)
    ohtsu-t@xxxxxxxxxxxxxxxxx
+-------------------------------+

スレッド概略
[表示中](起点)
 └[4723(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]