powerpc: Change vrX register defines to vX to match gcc and glibc
As our various loops (copy, string, crypto etc) get more complicated, we want to share implementations between userspace (eg glibc) and the kernel. We also want to write userspace test harnesses to put in tools/testing/selftest. One gratuitous difference between userspace and the kernel is the VMX register definitions - the kernel uses vrX whereas both gcc and glibc use vX. Change the kernel to match userspace. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:

committed by
Michael Ellerman

parent
06e5801b8c
commit
c2ce6f9f3d
@@ -152,9 +152,9 @@ _GLOBAL(tm_reclaim)
|
||||
|
||||
addi r7, r3, THREAD_TRANSACT_VRSTATE
|
||||
SAVE_32VRS(0, r6, r7) /* r6 scratch, r7 transact vr state */
|
||||
mfvscr vr0
|
||||
mfvscr v0
|
||||
li r6, VRSTATE_VSCR
|
||||
stvx vr0, r7, r6
|
||||
stvx v0, r7, r6
|
||||
dont_backup_vec:
|
||||
mfspr r0, SPRN_VRSAVE
|
||||
std r0, THREAD_TRANSACT_VRSAVE(r3)
|
||||
@@ -359,8 +359,8 @@ _GLOBAL(__tm_recheckpoint)
|
||||
|
||||
addi r8, r3, THREAD_VRSTATE
|
||||
li r5, VRSTATE_VSCR
|
||||
lvx vr0, r8, r5
|
||||
mtvscr vr0
|
||||
lvx v0, r8, r5
|
||||
mtvscr v0
|
||||
REST_32VRS(0, r5, r8) /* r5 scratch, r8 ptr */
|
||||
dont_restore_vec:
|
||||
ld r5, THREAD_VRSAVE(r3)
|
||||
|
@@ -24,8 +24,8 @@ _GLOBAL(do_load_up_transact_altivec)
|
||||
stw r4,THREAD_USED_VR(r3)
|
||||
|
||||
li r10,THREAD_TRANSACT_VRSTATE+VRSTATE_VSCR
|
||||
lvx vr0,r10,r3
|
||||
mtvscr vr0
|
||||
lvx v0,r10,r3
|
||||
mtvscr v0
|
||||
addi r10,r3,THREAD_TRANSACT_VRSTATE
|
||||
REST_32VRS(0,r4,r10)
|
||||
|
||||
@@ -52,8 +52,8 @@ _GLOBAL(vec_enable)
|
||||
*/
|
||||
_GLOBAL(load_vr_state)
|
||||
li r4,VRSTATE_VSCR
|
||||
lvx vr0,r4,r3
|
||||
mtvscr vr0
|
||||
lvx v0,r4,r3
|
||||
mtvscr v0
|
||||
REST_32VRS(0,r4,r3)
|
||||
blr
|
||||
|
||||
@@ -63,9 +63,9 @@ _GLOBAL(load_vr_state)
|
||||
*/
|
||||
_GLOBAL(store_vr_state)
|
||||
SAVE_32VRS(0, r4, r3)
|
||||
mfvscr vr0
|
||||
mfvscr v0
|
||||
li r4, VRSTATE_VSCR
|
||||
stvx vr0, r4, r3
|
||||
stvx v0, r4, r3
|
||||
blr
|
||||
|
||||
/*
|
||||
@@ -104,9 +104,9 @@ _GLOBAL(load_up_altivec)
|
||||
addi r4,r4,THREAD
|
||||
addi r6,r4,THREAD_VRSTATE
|
||||
SAVE_32VRS(0,r5,r6)
|
||||
mfvscr vr0
|
||||
mfvscr v0
|
||||
li r10,VRSTATE_VSCR
|
||||
stvx vr0,r10,r6
|
||||
stvx v0,r10,r6
|
||||
/* Disable VMX for last_task_used_altivec */
|
||||
PPC_LL r5,PT_REGS(r4)
|
||||
toreal(r5)
|
||||
@@ -142,8 +142,8 @@ _GLOBAL(load_up_altivec)
|
||||
li r4,1
|
||||
li r10,VRSTATE_VSCR
|
||||
stw r4,THREAD_USED_VR(r5)
|
||||
lvx vr0,r10,r6
|
||||
mtvscr vr0
|
||||
lvx v0,r10,r6
|
||||
mtvscr v0
|
||||
REST_32VRS(0,r4,r6)
|
||||
#ifndef CONFIG_SMP
|
||||
/* Update last_task_used_altivec to 'current' */
|
||||
@@ -186,9 +186,9 @@ _GLOBAL(giveup_altivec)
|
||||
addi r7,r3,THREAD_VRSTATE
|
||||
2: PPC_LCMPI 0,r5,0
|
||||
SAVE_32VRS(0,r4,r7)
|
||||
mfvscr vr0
|
||||
mfvscr v0
|
||||
li r4,VRSTATE_VSCR
|
||||
stvx vr0,r4,r7
|
||||
stvx v0,r4,r7
|
||||
beq 1f
|
||||
PPC_LL r4,_MSR-STACK_FRAME_OVERHEAD(r5)
|
||||
#ifdef CONFIG_VSX
|
||||
|
Reference in New Issue
Block a user