[PATCH v4 0/9] FP/VEC/VSX switching optimisations
Cyril Bur
cyrilbur at gmail.com
Mon Feb 15 16:07:21 AEDT 2016
Cover-letter for V1 of the series is at
https://lists.ozlabs.org/pipermail/linuxppc-dev/2015-November/136350.html
Cover-letter for V2 of the series is at
https://lists.ozlabs.org/pipermail/linuxppc-dev/2016-January/138054.html
Changes in V3:
Addressed review comments from Michael Neuling
- Made commit message in 4/9 better reflect the patch
- Removed overuse of #ifdef blocks and redundant condition in 5/9
- Split 6/8 in two to better prepare for 7,8,9
- Removed #ifdefs in 6/9
Changes in V4:
- Addressed non ABI compliant ASM macros in 1/9
- Fixed build breakage due to changing #ifdefs in V3 (6/9)
- Reordered some conditions in if statements
Cyril Bur (9):
selftests/powerpc: Test the preservation of FPU and VMX regs across
syscall
selftests/powerpc: Test preservation of FPU and VMX regs across
preemption
selftests/powerpc: Test FPU and VMX regs in signal ucontext
powerpc: Explicitly disable math features when copying thread
powerpc: Restore FPU/VEC/VSX if previously used
powerpc: Prepare for splitting giveup_{fpu,altivec,vsx} in two
powerpc: Add the ability to save FPU without giving it up
powerpc: Add the ability to save Altivec without giving it up
powerpc: Add the ability to save VSX without giving it up
arch/powerpc/include/asm/processor.h | 2 +
arch/powerpc/include/asm/reg.h | 8 +
arch/powerpc/include/asm/switch_to.h | 13 +-
arch/powerpc/kernel/asm-offsets.c | 2 +
arch/powerpc/kernel/entry_64.S | 21 +-
arch/powerpc/kernel/fpu.S | 25 +--
arch/powerpc/kernel/ppc_ksyms.c | 4 -
arch/powerpc/kernel/process.c | 168 +++++++++++++--
arch/powerpc/kernel/vector.S | 45 +---
tools/testing/selftests/powerpc/Makefile | 3 +-
tools/testing/selftests/powerpc/basic_asm.h | 30 +++
tools/testing/selftests/powerpc/math/.gitignore | 6 +
tools/testing/selftests/powerpc/math/Makefile | 19 ++
tools/testing/selftests/powerpc/math/fpu_asm.S | 195 ++++++++++++++++++
tools/testing/selftests/powerpc/math/fpu_preempt.c | 113 ++++++++++
tools/testing/selftests/powerpc/math/fpu_signal.c | 135 ++++++++++++
tools/testing/selftests/powerpc/math/fpu_syscall.c | 90 ++++++++
tools/testing/selftests/powerpc/math/vmx_asm.S | 229 +++++++++++++++++++++
tools/testing/selftests/powerpc/math/vmx_preempt.c | 113 ++++++++++
tools/testing/selftests/powerpc/math/vmx_signal.c | 138 +++++++++++++
tools/testing/selftests/powerpc/math/vmx_syscall.c | 92 +++++++++
21 files changed, 1368 insertions(+), 83 deletions(-)
create mode 100644 tools/testing/selftests/powerpc/basic_asm.h
create mode 100644 tools/testing/selftests/powerpc/math/.gitignore
create mode 100644 tools/testing/selftests/powerpc/math/Makefile
create mode 100644 tools/testing/selftests/powerpc/math/fpu_asm.S
create mode 100644 tools/testing/selftests/powerpc/math/fpu_preempt.c
create mode 100644 tools/testing/selftests/powerpc/math/fpu_signal.c
create mode 100644 tools/testing/selftests/powerpc/math/fpu_syscall.c
create mode 100644 tools/testing/selftests/powerpc/math/vmx_asm.S
create mode 100644 tools/testing/selftests/powerpc/math/vmx_preempt.c
create mode 100644 tools/testing/selftests/powerpc/math/vmx_signal.c
create mode 100644 tools/testing/selftests/powerpc/math/vmx_syscall.c
--
2.7.1
More information about the Linuxppc-dev
mailing list