RL78/G1F のデバッグ ローカル変数のウォッチの仕方

初心者です。ローカル変数の見方についてご教示ください。ウォッチウインドウを見ているのですがローカル変数は??のままです。どのようにすれば内容を確実に見れますでしょうか。お手数ですが、よろしくお願いいたします。

  • > どのようにすれば内容を確実に見れますでしょうか。

    まず使用されてる開発ツールを明らかにされるべきですね。

  • ご連絡ありがとうございます。申し訳ありません。CS+です。よろしくお願いいたします。
  • チョコです。
    ローカル変数は関数の中でのみ有効な変数なので,いつでも内容が分かるものではありません。
    しかも,ローカル変数はいくつもの関数で同じ名前を付けられるので,どこを実行中かで内容が
    異なります。
    ちなみに,CS+とE1の環境でちょっと確認した範囲ではローカル変数を定義している関数でブレーク
    すると変数の値が見られましたが,それ以外の関数でブレークをかけると??と表示されました。
  • ありがとうございます。大変参考になりました。
  • 開発ツールが不明ですが、CS+ for CC を使用した場合は CC-RL(ビルド・ツール)のプロパティで「共通オプション」の「最適化レベル」の設定が「規定の最適化を行う(なし)」となっており、コンパイラの最適化によりデバッガがたびたびローカル変数の値を見失うため表示が頻繁に '?' になります。
    これを解決するには同設定を「デバッグ優先(-Onothing)」にすれば良いですが、コードサイズと実行速度の両方で効率が悪いので、デバグ中の必要な時のみこの設定を利用するのが良いでしょう。
  • チョコです。
    私も通常は,CC-RLの最適化はデバッグ優先で使用しています。
    そうしないと,最適化で命令の並びが変わったりすることがあり,デバッグ
    がやり難くて仕方ありません。
    また,フラッシュに入らなくならない限りはそのままにしています。
  • ご教示ありがとうございます。とても助かります。CC-RLを使用していて??で中々推測するのが難しいところでした。ありがとうございます。