Mercurial > libavcodec.hg
diff arm/simple_idct_arm.S @ 10350:989ea69f6a4e libavcodec
ARM: use plain labels for pc-relative addressing
author | mru |
---|---|
date | Fri, 02 Oct 2009 23:11:03 +0000 |
parents | 04423b2f6e0b |
children | 08573f5f587d |
line wrap: on
line diff
--- a/arm/simple_idct_arm.S Fri Oct 02 19:35:12 2009 +0000 +++ b/arm/simple_idct_arm.S Fri Oct 02 23:11:03 2009 +0000 @@ -66,7 +66,7 @@ stmfd sp!, {r4-r11, r14} @ R14 is also called LR @@ at this point, R0=block, other registers are free. add r14, r0, #112 @ R14=&block[8*7], better start from the last row, and decrease the value until row=0, i.e. R12=block. - add r12, pc, #(__constant_ptr__-.-8) @ R12=__constant_ptr__, the vector containing the constants, probably not necessary to reserve a register for it + adr r12, __constant_ptr__ @ R12=__constant_ptr__, the vector containing the constants, probably not necessary to reserve a register for it @@ add 2 temporary variables in the stack: R0 and R14 sub sp, sp, #8 @ allow 2 local variables str r0, [sp, #0] @ save block in sp[0]