Everything
3.1.2 オブジェクト情報

オブジェクト情報の出力例を示します。

* RX FAMILY ASSEMBLER V2.00.00  [15 Feb 2013] *  SOURCE LIST  Mon Feb 18 20:15:19 2013
(1)      (2)               (3)   (4)
LOC.     OBJ.              0XMDA SOURCE STATEMENT
 
                                 ;RX Family C/C++ Compiler (V2.00.00  [15 Feb 2013])  18-Feb-2013 20:15:19
                                 
                                 ;*** CPU TYPE ***
                                 
                                 ;-ISA=RXV1
                                 
                                 ;*** COMMAND PARAMETER ***
                                 
                                 ;-output=src=sample.src
                                 ;-listfile
                                 ;-show=source
                                 ;sample.c
                                 
                                 		.glb	_x
                                 		.glb	_y
                                 		.glb	_func02
                                 		.glb	_func03
                                 		.glb	_func01
                                 (5)      (6)
                                 ;LineNo. C-SOURCE STATEMENT
                                 
                                 		.SECTION	P,CODE
00000000                         _func02:
                                 		.STACK	_func02=12
                                 ;       1 #include "include.h"
                                 ;       2 int func01(int);
                                 ;       3 int func03(int);
                                 ;       4 
                                 ;       5 int func02(int z)
00000000 6E67                    		PUSHM R6-R7
00000002 EF16                    		MOV.L R1, R6
                                 ;       6 {
                                 ;       7     x = func01(z);
00000004 05rrrrrr             A  		BSR _func01
00000008 FB72rrrrrrrr            		MOV.L #_x, R7
0000000E E371                    		MOV.L R1, [R7]
                                 ;       8     if (z == 2) {
00000010 6126                    		CMP #02H, R6
00000012 18                   S  		BNE L12
00000013                         L11:	; bb3
                                 ;       9         x++;
00000013 6211                    		ADD #01H, R1
00000015 08                   S  		BRA L13
00000016                         L12:	; bb6
                                 ;      10     } else {
                                 ;      11         x = func03(x + 2);
00000016 6221                    		ADD #02H, R1
00000018 39rrrr               W  		BSR _func03
0000001B                         L13:	; bb13
0000001B E371                    		MOV.L R1, [R7]
                                 ;      12     }
                                 ;      13     return x;
                                 ;      14 }
0000001D 3F6702                  		RTSD #08H, R6-R7
00000020                         _func03:
                                 		.STACK	_func03=4
                                 ;      15 
                                 ;      16 int func03(int p)
                                 ;      17 {
                                 ;      18     return p+1;
00000020 6211                    		ADD #01H, R1
                                 ;      19 }
00000022 02                      		RTS
                                 		.SECTION	D,ROMDATA,ALIGN=4
00000000                         _y:
00000000 01000000                		.lword	00000001H
                                 		.END

 

項番

説明

(1)

ロケーション情報(LOC.)

アセンブル時に決定できる範囲のオブジェクトコードのロケーションアドレスを出力します

(2)

オブジェクトコード情報(OBJ.)

ニーモニックに対応するオブジェクトコードを出力します

(3)

行情報(0XMDA)

アセンブラがソースを処理した結果の情報を出力します。

各記号の意味を下記に示します。

0

X

M

S

D

内 容

0-30

 

 

 

 

インクルードファイルのネストレベルを示します。

 

X

 

 

 

-show=conditionals指定時、条件アセンブルで条件が偽となった行を示します。

 

 

M

 

 

-show=expansions指定時、マクロ命令の展開行であることを示します。

 

 

D

 

 

-show=definitions指定時、マクロ命令の定義行であることを示します。

 

 

 

S

 

分岐距離指定子Sを指定したことを示します。

 

 

 

B

 

分岐距離指定子Bを指定したことを示します。

 

 

 

W

 

分岐距離指定子Wを指定したことを示します。

 

 

 

A

 

分岐距離指定子Aを指定したことを示します。

 

 

 

 

*

条件分岐命令に対して代替命令を選択したことを示します。

(4)

ソース情報(SOURCE STATEMENT)

アセンブリソースファイルの内容を表示します

(5)

C/C++ソース行番号(LineNo.)

(6)

C/C++ソース(C-SOURCE STATEMENT)

-show=sourceオプションを指定した場合、C/C++ソースを出力します