08.11.2014 Views

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ARM</strong> アセン ブ リ 言 語 の 記 述<br />

似 命 令 の 後 、 かつ -4 ~ 4KB (<strong>ARM</strong>、 32 ビッ ト Thumb-2 の 場 合 ) ま たは 0 ~<br />

1KB (Thumb-2 以 前 の Thumb、 16 ビッ ト Thumb-2 の 場 合 ) の 範 囲 内 の 位 置 に<br />

配 置 し ます。 詳 細 については、 「LTORG」 (ページ 7-20) を 参 照 して 下 さい。<br />

リ テ ラルプールは、 プ ロ セ ッ サに よ って 命 令 と し て 実 行 さ れない 位 置 に 配 置<br />

する 必 要 があ り ます。 つま り 、 無 条 件 分 岐 命 令 の 後 ま たはサブルーチンの 最<br />

後 にあ る 復 帰 命 令 の 後 に 配 置 し て 下 さい。<br />

例 2-4 は こ れを 実 装 する コー ド を 示 し ています。 このサンプルは、 メ インサン<br />

プルデ ィ レ ク ト リ の install_directory\RVDS\Examples に loadcon.s という 名 前 で<br />

収 録 さ れています。 このサンプルをアセンブル、 リ ン ク、 および 実 行 する 方<br />

法 については、 「サンプルコー ド 」 (ページ 2-2) を 参 照 して 下 さい。<br />

コ メ ン ト と し て リ ス ト さ れてい る 命 令 は、 アセンブ ラ に よ っ て 生 成 さ れる<br />

<strong>ARM</strong> 命 令 です。<br />

例 2-4<br />

AREA Loadcon, CODE, READONLY<br />

ENTRY<br />

; Mark first instruction to execute<br />

start<br />

BL func1 ; Branch to first subroutine<br />

BL func2 ; Branch to second subroutine<br />

stop<br />

MOV r0, #0x18 ; angel_SWIreason_ReportException<br />

LDR r1, =0x20026 ; ADP_Stopped_ApplicationExit<br />

SVC #0x123456 ; <strong>ARM</strong> semihosting (formerly SWI)<br />

func1<br />

LDR r0, =42 ; => MOV R0, #42<br />

LDR r1, =0x55555555 ; => LDR R1, [PC, #offset to<br />

; Literal Pool 1]<br />

LDR r2, =0xFFFFFFFF ; => MVN R2, #0<br />

BX lr<br />

LTORG<br />

; Literal Pool 1 contains<br />

; literal Ox55555555<br />

func2<br />

LDR r3, =0x55555555 ; => LDR R3, [PC, #offset to<br />

; Literal Pool 1]<br />

; LDR r4, =0x66666666 ; If this is uncommented it<br />

; fails, because Literal Pool 2<br />

; is out of reach<br />

BX lr<br />

LargeTable<br />

SPACE 4200 ; Starting at the current location,<br />

2-34 Copyright © 2002-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0204IJ<br />

Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!