LTORG

LTORG ディレクティブは、現在のリテラルプールをすぐにアセンブルするようアセンブラに指示します。

Show/hide構文

LTORG

Show/hide使用法

アセンブラは、各コードセクションの終了位置で現在のリテラルプールをアセンブルします。コードセクションの終了位置は、次のセクションの頭にある AREA ディレクティブによって決まるか、またはアセンブリの終了位置となります。

このようなデフォルトのリテラルプールは、LDRVLDR、および WLDR 疑似命令の範囲外になる場合があります。リテラルプールが範囲内でアセンブルされていることを確認するには、LTORG を使用します。

大きなプログラムでは、複数のリテラルプールが必要になる場合があります。定数がプロセッサによって命令として実行されないように、LTORG ディレクティブは、無条件分岐またはサブルーチン復帰命令の後に配置して下さい。

リテラルプール内のデータは、アセンブラによってワード境界で整列されます。

Show/hide

        AREA    Example, CODE, READONLY
start   BL      func1
func1                           ; 関数本体
        ; コード
        LDR     r1,=0x55555555  ; => LDR R1, [pc, #offset to Literal Pool 1]
        ; コード
        MOV     pc,lr           ; 関数終了
        LTORG                   ; Literal Pool 1 にはリテラル &55555555 が含まれる
data    SPACE   4200            ; メモリの現在の位置から 4200 バイトを
                                ; クリアする
        END                     ; デフォルトのリテラルプールが空になる

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489FJ
Non-ConfidentialID111211