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}
こうやって書く方がカッコイイ。あとついでに効率が良い。
こんなので悦に入ってる自分カッコワルイ。