ARM Assembler Tips(2)

ARM アセンブラでライトバックを使うと、なんか偉くなった気分になれるので非常に爽快だ。


例えば x86 系の PUSH にあたる命令は、

STR r0,[sp]
ADD sp,sp,#-4

って書くよりは、

STR r0,[sp,#-4]!

こうやって書く方がカッコイイ。あとついでに効率が良い。


同じく POP にあたる命令は

LDR r0,[sp],#4

こうやって書く方がカッコイイ。あとついでに効率が良い。


複数のレジスタを一気に PUSH, POP するときは、

STR r0,[sp,#-4]!
STR r1,[sp,#-4]!
STR r2,[sp,#-4]!

...

LDR r2,[sp],#4
LDR r1,[sp],#4
LDR r0,[sp],#4

って書くよりは、

STMFD sp!,{r0-r2}

...

LDMFD sp!,{r0-r2}

こうやって書く方がカッコイイ。あとついでに効率が良い。



こんなので悦に入ってる自分カッコワルイ。