TRACE32 Training... シンボルデータベース 内部シンボルデータベースの構造 シンボルデータベースの一般情報 シンボルブラウザ 選択したシンボルの詳細 ソースファイル内の検索...

Similar documents
Yamaha Steinberg USB Driver V for Mac Release Notes

Androidプログラミング 2 回目 迫紀徳

WD/CD/DIS/FDIS stage

電脳梁山泊烏賊塾 構造体のサイズ. Visual Basic

サーブレットと Android との連携. Generated by Foxit PDF Creator Foxit Software For evaluation only.

Quick Install Guide. Adaptec SCSI RAID 2120S Controller

Computer Programming I (Advanced)

本書について... 7 本文中の表記について... 7 マークについて... 7 MTCE をインストールする前に... 7 ご注意... 7 推奨 PC 仕様... 8 MTCE をインストールする... 9 MTCE をアンインストールする... 11

Cloud Connector 徹底解説. 多様な基盤への展開を可能にするための Citrix Cloud のキーコンポーネント A-5 セールスエンジニアリング本部パートナー SE 部リードシステムズエンジニア. 哲司 (Satoshi Komiyama) Citrix

Agilent. IO Libraries Suite 16.3/16.2 簡易取扱説明書. [ IO Libraries Suite 最新版 ]

PCIe SSD PACC EP P3700 Intel Solid-State Drive Data Center Tool

Yamaha Steinberg USB Driver V for Windows Release Notes

API サーバの URL. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE COMPLIANCE_SCAN SYSTEM "

Yamaha Steinberg USB Driver V for Windows Release Notes

Unofficial Redmine Cooking - QA #782 yaml_db を使った DB のマイグレーションで失敗する

携帯電話の 吸収率 (SAR) について / Specific Absorption Rate (SAR) of Mobile Phones

携帯電話の 吸収率 (SAR) について / Specific Absorption Rate (SAR) of Mobile Phones

Googleの強みは ささえるのは世界一のインフラ. Google File System 2008年度後期 情報システム構成論2 第10回 クラウドと協調フィルタリング. 初期(1999年)の Googleクラスタ. 最近のデータセンタ Google Chrome Comicより

MySQL Cluster 7.3 リリース記念!! 5 分で作る MySQL Cluster 環境

Introduction to Information and Communication Technology (a)

J の Lab システムの舞台裏 - パワーポイントはいらない -

Online Meetings with Zoom

TOOLS for MR V1.7.7 for Mac Release Notes

Methods to Detect Malicious MS Document File using File Structure Inspection

今日の予定 1. 展開図の基礎的な知識 1. 正多面体の共通の展開図. 2. 複数の箱が折れる共通の展開図 :2 時間目 3. Rep-Cube: 最新の話題 4. 正多面体に近い立体と正 4 面体の共通の展開図 5. ペタル型の紙で折るピラミッド型 :2 時間目 ~3 時間目

Certificate of Accreditation

フラクタル 1 ( ジュリア集合 ) 解説 : ジュリア集合 ( 自己平方フラクタル ) 入力パラメータの例 ( 小さな数値の変化で模様が大きく変化します. Ar や Ai の数値を少しずつ変化させて描画する. ) プログラムコード. 2010, AGU, M.

Private Sub 終了 XToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 終了 XToolStripMenuItem.

PSLT Adobe Typekit Service (2016v1.1)

JASCO-HPLC Operating Manual. (Analytical HPLC)

Relaxed Consistency models and software distributed memory. Computer Architecture Textbook pp.79-83

楽天株式会社楽天技術研究所 Autumn The Seasar Foundation and the others all rights reserved.

Quick Installation Manual

暗い Lena トーンマッピング とは? 明るい Lena. 元の Lena. tone mapped. image. original. image. tone mapped. tone mapped image. image. original image. original.

Lecture 4 Branch & cut algorithm

PRODUCT DESCRIPTIONS AND METRICS

HPE Insight Control サーバープロビジョニング 7.6 ビルドプランリファレンスガイド

UB-U01III/U02III/U03II User s Manual

SteelEye Protection Suite for Linux

User Guide. P6 Barcode Scanner. English 日本語

MathWorks Products and Prices Japan September 2016

和英対訳版. IEC Standard Template のユーザーガイド 備考 : 英語原文掲載 URL ( 一財 ) 日本規格協会

2. 集団の注目位置推定 提案手法では 複数の人物が同一の対象を注視している状況 置 を推定する手法を検討する この状況下では 図 1 のよう. 顔画像からそれぞれの注目位置を推定する ただし f は 1 枚 この仮説に基づいて 複数の人物を同時に撮影した低解像度顔

Certificate of Accreditation

PNRGOV/Ver11.1/ 旅客氏名表予約情報報告 (PNR01)

A. 展開図とそこから折れる凸立体の研究 1. 複数の箱が折れる共通の展開図 2 通りの箱が折れる共通の展開図 3 通りの箱が折れる共通の展開図そして. 残された未解決問題たち 2. 正多面体の共通の展開図 3. 正多面体に近い立体と正 4 面体の共通の展開図 ( 予備 )

NI TB Introduction. Conventions INSTALLATION INSTRUCTIONS Wire Terminal Block for the NI PXI-2529

DürrConnect the clever connection. The quick connection with the Click

Snoop cache. AMANO, Hideharu, Keio University Textbook pp.40-60

製 品 ガ イ ド NetShield for NetWare V E R S I O N 4. 6

Zabbix ログ解析方法. 2018/2/14 サイバートラスト株式会社 Linux/OSS 事業部技術統括部花島タケシ. Copyright Cybertrust Japan Co., Ltd. All rights reserved.

DSK8AD1DA. 8ch A/D & 1ch D/A for DSK/EVM.

Training HLL Debugging

サンプル. NI TestStand TM I: Introduction Course Manual

Operational Precaution

ご注意. (4) 運用した結果の影響につきましては (4) の項に関わらず責任を負いかねますのでご了承ください (5) Autodesk Device Interface(ADI) および Heidi Device Interface(HDI) ドライバは 周辺機器メーカーに対応しています

Web 成績登録システム利用の手引き ( 改訂版 )

振込依頼書記入要領 Entry Guide for Direct Deposit Request Form

TestsDumps. Latest Test Dumps for IT Exam Certification

PGroonga 2. Make PostgreSQL rich full text search system backend!

Ritsu-Mate Registration Manual (for Undergraduate Programs)

IRS16: 4 byte ASN. Version: 1.0 Date: April 22, 2008 Cisco Systems 2008 Cisco, Inc. All rights reserved. Cisco Systems Japan

Vehicle Calibration Techniques Established and Substantiated for Motorcycles

MetaSMIL : A Description Language for Dynamic Integration of Multimedia Content

Co-StandbyServer. AAdvanced. リリース 5.1 Microsoft Windows 版 ユーザーズ ガイド

Appliance Edition 入門ガイド

L3 SSG/SSD を使用している PPPoA クライアントで PC を設定すること

JBoss Enterprise Application Platform 5

~ ソフトウエア認証への取り組みと課題 ~

Saki is a Japanese high school student who/ has just started to study/ in the US.//

BraindumpStudy. BraindumpStudy Exam Dumps, High Pass Rate!

Centralized (Indirect) switching networks. Computer Architecture AMANO, Hideharu

Synchronization with shared memory. AMANO, Hideharu Textbook pp.60-68

FUJITSU Software SystemcastWizard Professional V5.1 L30 ユーザーズガイド B7FW Z0(00) 2014 年 8 月

Module mjlgsys. End Module. Imports MySql.Data.MySqlClient. Public Class frmgsys 'SQL 関連の定数宣言はフォーム間共通にしておく

マルチビットアップセット耐性及びシングルビットアップセット耐性を備えた

Invitrogen Custom Primer Ordering Guide

QPHY-SATA Serial ATA Serial Data オペレーターズ マニュアル

Unified System Management Technology for Data Centres

Studies of Large-Scale Data Visualization: EXTRAWING and Visual Data Mining

URL IO オブジェクト指向プログラミング特論 2018 年度只木進一 : 工学系研究科

2007/10/17 ソフトウェア基礎課題布広. /** * SOFT * AppletTest01.java * 文字表示 */

UML. A Model Trasformation Environment for Embedded Control Software Design with Simulink Models and UML Models

プログラマ本体 I/F 回路図 -Programmer I/F Circuit Diagram-...2 FLASH2 内部 2 FLASHMATE5V1 内部 2

Rechargeable LED Work Light

モデルのパフォーマンスに 関するテクニカルノート

BMW Head Up Display (HUD) Teardown BMW ヘッドアップディスプレイティアダウン

The Secret Life of Components

Web Billing User Guide

Legal Notices. Autodesk MotionBuilder2013 What's New. Software Product Version:

Infragistics ASP.NET リリースノート

Verify99. Axis Systems

BABr11.5 for Linux のインストール 2007/12/21. You are running Linux on Kernel smp. Analyzing the environment

Video Annotation and Retrieval Using Vague Shot Intervals

Infrared Data Association Trademark and Brand Guidelines

アルゴリズムの設計と解析 (W4022) 教授 : 黄潤和 広野史明 (A4/A8)

Feature Data Objects(FDO) FDO の基本操作 2009 年 4 月

NUC and its Applications

Autodesk Maya 2013 Extension ( 拡張機能 )

HA8000-bd シリーズ内蔵 LAN スイッチモジュールソフトウェアマニュアルメッセージ ログレファレンス. HA8000-bd/BD10X3. Ver B 対応

Transcription:

HLL Debugging - トレーニング TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Training... HLL Debugging - トレーニング... 2 アプリケーションプログラムのロード... 3 シンボルデータベース... 12 内部シンボルデータベースの構造... 12 シンボルデータベースの一般情報... 13 シンボルブラウザ... 14 選択したシンボルの詳細... 20 ソースファイル内の検索... 22 変数の表示... 24 [Watch] ウィンドウ... 24 [View] ウィンドウ... 26 参照される変数... 27 ローカル変数... 28 スタックフレーム... 29 配列用の特殊な表示... 30 リンクしたリスト... 33 変数ログ... 35 変数のフォーマット... 39 [Format] ダイアログボックスを使用した変数のフォーマット... 39 コマンドラインを使用した変数のフォーマット... 49 一般的な SETUP... 50 関数のテスト... 51 索引 ( ローカル )... 54 HLL Debugging - トレーニング 1

HLL Debugging - トレーニング 2011/8/31 版 08/19/04 アプリケーションプログラムのロード セクションを改定 HLL Debugging - トレーニング 2

アプリケーションプログラムのロード Data.LOAD < ファイル名 > [/< オプション >] Data.LOAD.< サブコマンド > < ファイル名 > [/< オプション >] 汎用ロードコマンド コンパイラ固有のロードコマンド コンパイラ固有のロードコマンドは以下の場所にあります : コンパイラ / フォーマット固有のすべてのオプションを使用できるように コンパイラ / フォーマット固有の Data.LOAD コマンドを使用することをお勧めします HLL Debugging - トレーニング 3 アプリケーションプログラムのロード

Data.Load コマンドを実行したときに TRACE32 で実行される動作 TRACE32 ですでに使用可能なすべてのシンボルとデバッグ情報が削除される < ファイル > が提供するコード / データがターゲットメモリにロードされる < ファイル > が提供するシンボルおよびデバッグ情報が TRACE32 にロードされる < ファイル > が提供する HLL ソースファイルのパスが TRACE32 にロードされる ロードされた情報から内部シンボルデータベースが生成される HLL Debugging - トレーニング 4 アプリケーションプログラムのロード

コード / データを参照するオプション コードやデータを参照するオプションは主に以下のタスクに使用されます : コード / データが正しくロードされたことを検証する 正しいコード / データがすでにターゲットに存在する場合は コード / データのロードを抑制する これは FLASH プログラミング時間を節約する場合などに役立つ Verify ComPare DIFF NOCODE 書き込み後にメモリを検証します そのために メモリブロックに書き込んだ直後にメモリをリードバックします メモリのデータをファイルと比較します メモリは変更されません 1 つ目の差異が検出されると比較が停止します メモリのデータをファイルと比較します メモリは変更されません ファイルとメモリに差異が検出された場合は FOUND() が TRUE を返す ファイルとメモリに差異が検出されない場合は FOUND() が FALSE を返す シンボルとデバッグ情報および HLL ソースパス情報のみをダウンロードします コード / データがすでにメモリに置かれている場合に便利です Data.LOAD.Elf armle.axf /StripPATH /LowerPATH Data.LOAD.AIF armla.axf /StripPATH /LowerPATH Data.LOAD.COFF arm.abs Data.LOAD.COFF arm.abs /DIFF IF FOUND() ( FLASH.Program ALL Data.LOAD.COFF arm.abs FLASH.Program OFF ) ELSE Data.LOAD.COFF arm.abs /NOCODE ; load ELF file for ARM ; load AIF file for ARM ; load COFF file for ARM ; reprogram the FLASH ; only if the code ; changed, otherwise ; load only symbol and ; debug information plus ; hll source path ; information HLL Debugging - トレーニング 5 アプリケーションプログラムのロード

シンボルおよびデバッグ情報を参照するオプション シンボルおよびデバッグ情報を参照するオプションは 主にシンボル情報を再配置するために使用します ; relocate all symbols by 2000 symbol.relocate.shift 2000 ; Load the symbol and debug information from the file t_li_elf.axf and ; relocate all symbols of the section t_li_elf.axf to address 2000 symbol.list.section Data.LOAD.Elf thumble.axf /RELOC t_li_elf.axf AT 2000 /NOCODE symbol.relocate.shift < オフセット > Data.LOAD.Elf < ファイル > /RELOC < セクター > AT < アドレス > Data.LOAD.Elf < ファイル > /RELOC < セクター > AFTER < セクター _2> symbol.list.section < オフセット > の値でコードおよびデータシンボルを再配置します 指定したセクターを定義したアドレスに再配置します 指定したセクターを別のセクターの後ろに再配置します < ファイル > が提供するセクション情報をリストします HLL Debugging - トレーニング 6 アプリケーションプログラムのロード

すでに使用可能なシンボルおよびデバッグ情報を保持するオプション NoClear MultiFile デフォルトでは 新しい Data.LOAD コマンドが開始されるたびに すでに使用可能なシンボルおよびデバッグ情報が削除されます このオプションを指定すると すでに使用可能なシンボルおよびデバッグ情報は削除されません このオプションは複数のプログラムをロードする場合に必要です このオプションで 複数のプログラムを含む大規模プロジェクトのダウンロードを高速化します このオプションを指定すると Data.LOAD コマンドを使用したときの内部シンボルデータベースの生成が抑制されます Data.LOAD file1 /MultiFile Data.LOAD file2 /NoClear /MultiFile ; load file1 but suppress the ; generation of the internal ; symbol data base ; load file2 but don t remove the ; already available symbol and ; debug information before ; loading and suppress the ; generation of the internal ; symbol data base Data.LOAD file3 /NoClear /MultiFile... Data.LOAD filen /NoClear ; load filen but don t remove the ; already available symbol and ; debug information before ; loading, this is the last file ; so generate the internal symbol ; data base now HLL Debugging - トレーニング 7 アプリケーションプログラムのロード

HLL ソースファイルの正しいパスを取得するオプションとコマンド symbol.list.source コマンドを使用して < ファイル > からロードされた HLL ソースファイルのパス情報を表示します ベースディレクトリの修正 StripPART < 数字 > 所定のパスの最初の n 個部分を削除します パスのほとんどの部分は正しいですが HLL ソースファイルはベースディレクトリ G: AND F167 Common RTXC に置かれ R: Common RTXC には置かれていません Data.LOAD.Omf rtcxmain /StripPART 3. ; the option StripPART 3. ; removes the first 3 ; parts from the path ; define the new directory as base for relative paths symbol.sourcepath.setbasedir G: AND F167 Common RTXC HLL Debugging - トレーニング 8 アプリケーションプログラムのロード

symbol.list.source Data.Load < ファイル > /StripPART < 数字 > symbol.sourcpath.setbasedir < ディレクトリ > symbol.sourcepath.list HLL ソースファイルのパス情報を表示します < ファイル > からロードされたパスの最初の n 個部分を削除します ベースとして新しいベースディレクトリを相対パスで定義します ソースファイルのすべての検索ディレクトリを表示します HLL Debugging - トレーニング 9 アプリケーションプログラムのロード

新しい検索パスの指定 symbol.list.source でリストされたパスから HLL ソースファイルをロードできない場合 TRACE32 は定義された検索ディレクトリで HLL ソースファイルの検索を試みます 以下のコマンドを使用して新しい検索パスを定義できます : symbol.sourcepath.setdir < ディレクトリ > symbol.sourcepath.setdynamicdir < ディレクトリ > symbol.sourcepath.setrecursedir < ディレクトリ > 直接検索パスを定義します ( 静的 ) 直接検索パスを定義します ( 動的 ) 再帰的検索パスを定義します 定義したディレクトリとそのすべてのサブディレクトリが検索パスとして使用されます 静的な直接パスを定義した場合は 検索パスが常に同じ順序でスキャンされます symbol.sourcepath.setdir G: AND compiler xc Control symbol.sourcepath.setdir G: AND compiler xc Source symbol.sourcepath.setdir G: AND compiler xc System 動的な直接検索パスを定義した場合は 最後に検索したソースファイルが置かれていたディレクトリが 次のソースファイルを検索する最初のディレクトリになります symbol.sourcepath.setdynamicdir G: AND compiler xc Control symbol.sourcepath.setdynamicdir G: AND compiler xc Source symbol.sourcepath.setdynamicdir G: AND compiler xc System Data.List ad_cond HLL Debugging - トレーニング 10 アプリケーションプログラムのロード

仮想メモリのローダーオプション TRACE32 はホストにいわゆる仮想メモリを提供します 以下のオプションで コードをこの仮想メモリにロードします VM PlusVM コード / データを仮想メモリにロードします コード / データをターゲットおよび仮想メモリにロードします Data.LOAD.COFF arm.abs /VM Data.LOAD.COFF arm.abs /PlusVM ; load code/data from <file> into the ; virtual memory ; load code data from <file> into the ; target memory and into the virtual ; memory 仮想メモリは主に MPC500/800 ARM-ETM などのプログラムフロートレースに使用されます 削減されたトレース情報だけがサンプリングされるため 完全なトレースリストを表示するために TRACE32 はターゲットメモリのコードも必要とします プロセッサのオンチップデバッグロジックが プログラム実行中のメモリリードをサポートしない場合 プログラム実行を停止しなければ 完全なトレースを表示できません コードが仮想メモリにロードされる場合は TRACE32 が仮想メモリのコードを使用して完全なトレースリストを表示できます HLL Debugging - トレーニング 11 アプリケーションプログラムのロード

シンボルデータベース 内部シンボルデータベースの構造 Data.LOAD コマンドでロードされたシンボルおよびデバッグ情報は TRACE32 によって内部シンボルデータベースに整理されます プログラム タイプ モジュール セクション 関数 グローバル変数変数 ソース 変数 ( 静的 ) 変数 ( 動的 ) ライン カラム HLL Debugging - トレーニング 12 シンボルデータベース

シンボルデータベースの一般情報 symbol.state シンボルデータベースについての一般情報を表示します HLL Debugging - トレーニング 13 シンボルデータベース

シンボルブラウザ symbol.browse [< 名前パターン >] [< 型パターン >] [/< オプション >] シンボル情報をブラウズします HLL Debugging - トレーニング 14 シンボルデータベース

グローバルブラウズ グローバルに上へ グローバルに下へ * ( すべてのプログラム ) プログラム * * ( すべてのモジュール ) モジュール * * * ( すべての関数 すべてのグローバル変数 ) 関数 グローバル変数 * * * * ( すべてのローカル変数 ) 変数 ( 静的 ) 変数 ( 動的 ) HLL Debugging - トレーニング 15 シンボルデータベース

モジュール名の代わりにファイル名を表示 シンボルのモジュール名を表示するには 小さな四角形を右に移動します ソースがオンの場合は モジュール名の代わりにソースファイルの名前が表示されます HLL Debugging - トレーニング 16 シンボルデータベース

絞り込みブラウズ 表示タイプの選択 [Symbols] [Variables] [Functions] [Modules] すべてのシンボルを表示します すべての変数を表示します すべての関数を表示します すべてのモジュールを表示します ブラウズを [Variables] に絞り込んだときに 関数が選択されている場合は 選択した関数のローカル変数が表示されます HLL Debugging - トレーニング 17 シンボルデータベース

ブラウズを [Functions] に絞り込んだときに 関数が選択されている場合は 選択した関数のソースコードが表示されます «モジュールのブラウズ 関数のブラウズ 変数のブラウズ symbol.browse.symbol symbol.browse.function symbol.browse.var symbol.browse.modules シンボル情報をブラウズします 関数をブラウズします 変数をブラウズします モジュールをブラウズします HLL Debugging - トレーニング 18 シンボルデータベース

特定の型のブラウズ [unsigned int] 型のすべての変数を表示します 型名にキーワード char が含まれるすべての変数を表示します ([*char*]) の変数を表示します char へのポインタ型のすべて ([*char "*"]) HLL Debugging - トレーニング 19 シンボルデータベース

選択したシンボルの詳細 HLL Debugging - トレーニング 20 シンボルデータベース

必要な変数を選択します symbol.info シンボリックアドレス シンボルの場所 範囲 レイアウトを表示します HLL Debugging - トレーニング 21 シンボルデータベース

ソースファイル内の検索 現在のソースファイルの文字列の検索 [HLL] デバッグモードがアクティブな場合は 入力した文字列が現在のソースファイル内で検索されます 現在のソースファイル [HLL] デバッグモードがアクティブ HLL Debugging - トレーニング 22 シンボルデータベース

すべてのソースファイルの文字列の検索 ここに文字列を入力 TRACE32 が定義した文字列をすべてのソースファイル内で検索します HLL Debugging - トレーニング 23 シンボルデータベース

変数の表示 [Watch] ウィンドウ 選択した変数を [Variable Watch] ウィンドウ上部に追加します [Watch] ウィンドウがない場合は新しい [Watch] ウィンドウが作成されます 選択した変数が [Variable Watch] ウィンドウ上部に追加されます [Variable] プルダウンを使用して 変数を [Watch] ウィンドウに追加します HLL Debugging - トレーニング 24 変数の表示

変数を [Watch] ウィンドウにドラッグします 選択した変数を [Watch] ウィンドウから削除します Var.Watch [<% フォーマット >] [< 変数 >] Var.AddWatch [<% フォーマット >] [< 変数 >] [Watch] ウィンドウを開いて変数を表示します [Watch] ウィンドウに変数を追加します HLL Debugging - トレーニング 25 変数の表示

[View] ウィンドウ 選択した変数用の新しい [Variable View] ウィンドウを開きます 新しい [Variable View] ウィンドウが開いて選択した変数が表示されます Var.View [<% フォーマット >] [< 変数 >] 個別のウィンドウに変数を表示します 式を入力すると その式が処理されて結果が表示されます HLL Debugging - トレーニング 26 変数の表示

参照される変数 [Var.REF] ウィンドウを開きます 現在のソースラインが参照する変数が自動的にこのウィンドウに追加されます Var.Ref [<% フォーマット >] [/TRACK] 現在のコードラインが参照する変数を表示します HLL Debugging - トレーニング 27 変数の表示

ローカル変数 ウィンドウを開いて 現在の関数のローカル変数を表示します Var.Local [<% フォーマット >] ローカル変数を表示します HLL Debugging - トレーニング 28 変数の表示

スタックフレーム スタックトレースを表示して 関数のネスト状態を示します [Args] [Local] [Caller] 引数を表示します ローカル変数を表示します 関数のコール元の高級言語ブロックを表示します Var.Frame [<% フォーマット >] [/ オプション ] スタックトレース を表示します HLL Debugging - トレーニング 29 変数の表示

配列用の特殊な表示 グラフ表示 Var.DRAW [<% フォーマット >] < 配列 > 配列の内容をグラフで表示します Var.DRAW sinewave HLL Debugging - トレーニング 30 変数の表示

配列をインデックスとポインタとともに表示 Var.TABle [<% フォーマット >] < 配列 > < インデックス > [... ] 配列をインデックスとポインタとともに表示します Var.TABle flags i k vpchar i and k are indices, vpchar is a pointer n 番目の要素をウィンドウ上部に表示します 最初の要素をウィンドウ上部に表示します 最後の要素をウィンドウ上部に表示します HLL Debugging - トレーニング 31 変数の表示

配列表示を圧縮します Var.FixedTABle [<% フォーマット >] < 配列 > < インデックス > [... ] 配列をインデックスとポインタとともに固定フォーマットで表示します Var.FixedTABle stra2 vpchar HLL Debugging - トレーニング 32 変数の表示

リンクしたリスト Var.CHAIN [<% フォーマット >] < 第 1> < 第 2> [... ] リンクしたリストを表示します Var.CHAIN ast ast.left ast is the first element of the linked list, ast.left provides the pointer to the next element n 番目の要素をウィンドウ上部に表示します 最初の要素をウィンドウ上部に表示します 最後の要素をウィンドウ上部に表示します HLL Debugging - トレーニング 33 変数の表示

スキャンモード [Full] [Partial] [Auto] リンクしたリストを永続的にスキャンして常に最新に保ちます これにより TRACE32 ユーザーインタフェースのパフォーマンスが低下する場合があります 3 種類のスキャンモードがサポートされます リンクしたリストが完全にスキャンされます これにより TRACE32 ユーザーインタフェースのパフォーマンスがかなり低下する場合があります リンクしたリストが 画面最上部のレコードからのみスキャンされます TRACE32 ユーザーインタフェースのパフォーマンスへの影響はわずかです このモードは TRACE32 ユーザーインタフェースの速度を犠牲にせずに最新のリンクしたリストを入手する方法です 特定の時間 (20 ~ 50ms) リストが更新され 同じ時間だけユーザーの入力も受け入れます [Auto] ボタンの横の数字は最後に更新されたレコードの番号です Var.FixedCHAIN [<% フォーマット >] < 第 1> < 第 2> [... ] リンクしたリストを固定フォーマットで表示します Var.FixedCHAIN ast ast.left HLL Debugging - トレーニング 34 変数の表示

変数ログ 変数ログコマンドは プログラムが停止するたびに 選択した変数の内容をメッセージエリアに記録します ログに記録する変数を選択します メッセージエリアを開きます プログラムが停止するたびに選択した変数の現在の値がメッセージエリアに記録されます Var.LOG [<% フォーマット >] [< 変数 >]... [/< オプション >] Area.View A000 変数をログに記録します メッセージエリアを表示します ログをオフにするには Var.Log をパラメータなしで使用します HLL Debugging - トレーニング 35 変数ログ

専用のウィンドウへのログの表示 AREA.Create < 領域 > AREA.view < 領域 > 専用のウィンドウを作成します 専用のウィンドウを表示します AREA.Create Log1 AREA.view Log1 Var.LOG flags /AREA Log1 AREA.Create Log1 AREA.view Log1 Var.LOG flags /AREA Log1 /Changes Variable is only recorded when it has changed since the last program stop HLL Debugging - トレーニング 36 変数ログ

ログのファイルへの保存 AREA.OPEN < 領域 > < ファイル名 > AREA.CLOSE < 領域 > AREA ウィンドウの出力ファイルを開きます AREA ウィンドウの出力ファイルを閉じます AREA.Create Log1 Area.view Log1 AREA.OPEN Log1 loglist.lst Var.LOG flags /AREA Log1 AREA.CLOSE Log1 Var.LOG EDIT loglist.lst Finish log Display the result HLL Debugging - トレーニング 37 変数ログ

各スポットポイントの変数のログ Var.Break.Set flags /Write /Spot AREA.Create Log1 AREA.view Log1 Var.LOG flags /AREA Log1 /ONSPOT ログをオフに切り替え Var.LOG Switch log to off HLL Debugging - トレーニング 38 変数ログ

変数のフォーマット [Format] ダイアログボックスを使用した変数のフォーマット 変数を選択してマウスの右ボタンを押して [Change Variable Format] ダイアログボックスを開きます HLL Debugging - トレーニング 39 変数のフォーマット

[radix] 数値フォーマットデフォルトでは 整数は 10 進法 ポインタは 16 進法で表示されます radix [Decimal] [Hex] [BINary] [Ascii] すべての数値が 10 進法で表示されます すべての数値が 16 進法で表示されます すべての数値が 2 進法で表示されます すべての数値が ASCII 文字で表示されます 複数の radix を選択できます 変数の左側の小さな点をクリックして 数値を別のフォーマットで表示します HLL Debugging - トレーニング 40 変数のフォーマット

[DUMP] 変数の内容をさらに 16 進法ダンプとして表示します [SCALED] 変数を定義したスケーリングで表示します symbol.addinfo.var < 変数 > Scaled < 乗数 > < オフセット > < フォーマット > symbol.addinfo.list symbol.addinfo.reset 変数のスケーリングを定義します 定義したすべてのスケーリングをリストします リストをリセットします symbol.addinfo.var vfloat Scaled 1.3 4 " mvolt" symbol.addinfo.list HLL Debugging - トレーニング 41 変数のフォーマット

[display] [Index] インデックスとともに配列を表示します [Type] 型情報とともに変数を表示します HLL Debugging - トレーニング 42 変数のフォーマット

[Location] 位置の情報とともに変数を表示します HLL Debugging - トレーニング 43 変数のフォーマット

[format] [Fixed] すべての数値を固定フォーマットで表示します 配列の数値要素間に固定スペースを使用します [TREE] ツリー構造で表示します HLL Debugging - トレーニング 44 変数のフォーマット

[pointer] [String] / [WideString] このフォーマットは配列または文字へのポインタに使用できます [String] 各文字が 1 バイトです [WideString] 各文字が 1 ワードです ( 一部の DSP またはユニコード ) 配列を文字列として表示します symbol.addinfo.var < 変数 > ZSTRING symbol.addinfo.list symbol.addinfo.reset 変数の内容を 0 で終わる文字列として定義します すべての定義をリストします リストをリセットします symbol.addinfo.var cstr1 ZSTRING symbol.addinfo.list The contents of cstr1 is a zeroterminated string Display definition list HLL Debugging - トレーニング 45 変数のフォーマット

[symbol] ポインタの内容をさらにシンボリックに表示します [PDUMP] ポインタが指すアドレスから開始する 16 バイトの 16 進ダンプを表示します HLL Debugging - トレーニング 46 変数のフォーマット

[other] [SpotLight] 変更された変数要素をすべて強調表示します : 最後のステップで変更された変数要素には濃い赤のマークが付きます 最後のステップの前のステップで変更された変数要素には それより明るい色のマークが付きます このように 4 レベルでカラー表示されます HLL Debugging - トレーニング 47 変数のフォーマット

[E]( 実行時メモリアクセス ) プログラムの実行中に変数の内容を更新します これは [SYStem] ウィンドウで SYStem.MemAccess CPU/NEXUS または SYStem.CpuAccess Enable を設定した場合のみ機能します HLL Debugging - トレーニング 48 変数のフォーマット

コマンドラインを使用した変数のフォーマット Var.View [<% フォーマット >] < 変数 > [Change Variable Format] ダイアログボックスを使用して変数をフォーマットした場合は ウィンドウの設定を PRACTICE ファイルに保存する際にフォーマット情報は保存されません フォーマット情報が保存されるのは コマンドラインを使用して変数をフォーマットした場合だけです フォーマット定義後に コマンドで使用されたすべての変数のフォーマット定義が有効 フォーマット情報を選択的にオフに切り替え可能 HLL Debugging - トレーニング 49 変数のフォーマット

一般的な SETUP SETUP.Var [<% フォーマット >...] 変数のデフォルト表示フォーマットを変更します HLL Debugging - トレーニング 50 変数のフォーマット

関数のテスト Var.set [<% フォーマット >] < 変数 > ターゲットで関数を実行します Var.set func5(4,8,17) HLL Debugging - トレーニング 51 関数のテスト

Var.Call [<% フォーマット >] < 式 > Register.SWAP 1 ステップ実行するために 関数とパラメータをコールします 関数の最後で CPU レジスタを再コールします 式が関数コールの場合は この関数を入力すると プログラムカウンタが関数の最初の命令を示します Register.SWAP コマンドで 関数コールの前の CPU レジスタの値を再コールすることができます Var.set func13(3,8,5) プログラムカウンタが関数の最初の命令を示します これで 関数を 1 ステップ実行できます HLL Debugging - トレーニング 52 関数のテスト

関数コールのときに情報がスタックに保存されなかったため [Register Swap] を使用してすべての CPU レジスタを関数コールの前の値に復元します (return を実行する前に復元する ) HLL Debugging - トレーニング 53 関数のテスト

索引 ( ローカル ) HLL: トレーニング...HLL Debugging - トレーニング 2 トレーニング : HLL...HLL Debugging - トレーニング 2 HLL Debugging - トレーニング 54 索引 ( ローカル )