全てが32bitワード固定長のARM命令ではオペランドを外に持てない。レジスタに32bitの即値や32bitアドレスを直接代入出来ないのでマクロを使ってアセンブラに任せる:
ldr rd,=const
ldr rd,=label
これらは適当な命令に変換される。場合によってはメモリから即値をロードするよう変換されるので、データ領域を確保しておかないといけないが、これはリテラルプール擬似命令で指示する:
.ltorg
何ともやっかいなアセンブラである。オフセットも12bitまでなのでTEXTセクションに定数データが置かれることも珍しくないらしい・・・