crypto: powerpc - Use address generation helper for asm
Replace open-coded toc-relative address calculation with helper macros,
commit dab3b8f4fd
("powerpc/64: asm use consistent global variable
declaration and access") made similar conversions already but missed
this one.
This allows data addressing model to be changed more easily.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20230203113858.1152093-2-npiggin@gmail.com
This commit is contained in:
parent
e64e71056f
commit
26d53a9c89
|
@ -113,9 +113,7 @@ FUNC_START(CRC_FUNCTION_NAME)
|
|||
#endif
|
||||
|
||||
#ifdef BYTESWAP_DATA
|
||||
addis r3,r2,.byteswap_constant@toc@ha
|
||||
addi r3,r3,.byteswap_constant@toc@l
|
||||
|
||||
LOAD_REG_ADDR(r3, .byteswap_constant)
|
||||
lvx byteswap,0,r3
|
||||
addi r3,r3,16
|
||||
#endif
|
||||
|
@ -150,8 +148,7 @@ FUNC_START(CRC_FUNCTION_NAME)
|
|||
addi r7,r7,-1
|
||||
mtctr r7
|
||||
|
||||
addis r3,r2,.constants@toc@ha
|
||||
addi r3,r3,.constants@toc@l
|
||||
LOAD_REG_ADDR(r3, .constants)
|
||||
|
||||
/* Find the start of our constants */
|
||||
add r3,r3,r8
|
||||
|
@ -506,8 +503,7 @@ FUNC_START(CRC_FUNCTION_NAME)
|
|||
|
||||
.Lbarrett_reduction:
|
||||
/* Barrett constants */
|
||||
addis r3,r2,.barrett_constants@toc@ha
|
||||
addi r3,r3,.barrett_constants@toc@l
|
||||
LOAD_REG_ADDR(r3, .barrett_constants)
|
||||
|
||||
lvx const1,0,r3
|
||||
lvx const2,off16,r3
|
||||
|
@ -610,8 +606,7 @@ FUNC_START(CRC_FUNCTION_NAME)
|
|||
cmpdi r5,0
|
||||
beq .Lzero
|
||||
|
||||
addis r3,r2,.short_constants@toc@ha
|
||||
addi r3,r3,.short_constants@toc@l
|
||||
LOAD_REG_ADDR(r3, .short_constants)
|
||||
|
||||
/* Calculate where in the constant table we need to start */
|
||||
subfic r6,r5,256
|
||||
|
|
Loading…
Reference in New Issue