diff options
author | Anton Blanchard <anton@samba.org> | 2016-05-29 22:03:50 +1000 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-06-14 13:58:25 +1000 |
commit | 8eb9803723a14fd12675641b953e4ccbd86187a8 (patch) | |
tree | 5715e1f961a191d979b26eb862873013931baab1 /arch/powerpc/lib/string.S | |
parent | 5edb56491d4812c42175980759da53388e5d86f5 (diff) |
powerpc: Avoid load hit store in __giveup_fpu() and __giveup_altivec()
In both __giveup_fpu() and __giveup_altivec() we make two modifications
to tsk->thread.regs->msr. gcc decides to do a read/modify/write of
each change, so we end up with a load hit store:
ld r9,264(r10)
rldicl r9,r9,50,1
rotldi r9,r9,14
std r9,264(r10)
...
ld r9,264(r10)
rldicl r9,r9,40,1
rotldi r9,r9,24
std r9,264(r10)
Fix this by using a temporary.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/lib/string.S')
0 files changed, 0 insertions, 0 deletions