[PATCH 0/9] FP/VEC/VSX switching optimisations
Cyril Bur
cyrilbur at gmail.com
Tue Mar 1 10:02:54 AEDT 2016
On Mon, 29 Feb 2016 17:53:42 +1100
Cyril Bur <cyrilbur at gmail.com> wrote:
Apologies this should have had a Version 6 prefix!
> 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
>
> Changes in V5:
> - Enhanced basic-asm.h to provide ABI independent macro as pointed out by
> Naveen Rao.
> - Tested for both BE and LE builds. Had to disable -flto from the
> selftests/powerpc Makefile as it didn't play well with the custom ASM.
> - Added some extra debugging output to the vmx_signal testcase
> - Fixed comments in testing code
> - Updated VSX test code to use GCC Altivec macros
>
> Changes in V6:
> - Removed recursive definition of CFLAGS in math/Makefile
> - Corrected the use of the word param in favour of doubleword
> - Reordered some code in basic-asm.h and neatened some comments
>
>
>
> 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 | 63 ++++++
> tools/testing/selftests/powerpc/math/.gitignore | 6 +
> tools/testing/selftests/powerpc/math/Makefile | 21 ++
> tools/testing/selftests/powerpc/math/fpu_asm.S | 197 +++++++++++++++++
> 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 | 234 +++++++++++++++++++++
> tools/testing/selftests/powerpc/math/vmx_preempt.c | 112 ++++++++++
> tools/testing/selftests/powerpc/math/vmx_signal.c | 156 ++++++++++++++
> tools/testing/selftests/powerpc/math/vmx_syscall.c | 91 ++++++++
> 21 files changed, 1426 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
>
More information about the Linuxppc-dev
mailing list