On Tue, 23 Feb 2016 14:38:14 +1100 Cyril Bur <cyril...@gmail.com> wrote:
> Test that the non volatile floating point and Altivec registers get > correctly preserved across the fork() syscall. > > fork() works nicely for this purpose, the registers should be the same for > both parent and child > > Signed-off-by: Cyril Bur <cyril...@gmail.com> > --- > tools/testing/selftests/powerpc/Makefile | 3 +- > tools/testing/selftests/powerpc/basic_asm.h | 62 +++++++ > tools/testing/selftests/powerpc/math/.gitignore | 2 + > tools/testing/selftests/powerpc/math/Makefile | 16 ++ > tools/testing/selftests/powerpc/math/fpu_asm.S | 161 +++++++++++++++++ > tools/testing/selftests/powerpc/math/fpu_syscall.c | 90 ++++++++++ > tools/testing/selftests/powerpc/math/vmx_asm.S | 195 > +++++++++++++++++++++ > tools/testing/selftests/powerpc/math/vmx_syscall.c | 91 ++++++++++ > 8 files changed, 619 insertions(+), 1 deletion(-) > 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_syscall.c > create mode 100644 tools/testing/selftests/powerpc/math/vmx_asm.S > create mode 100644 tools/testing/selftests/powerpc/math/vmx_syscall.c > [snip] > diff --git a/tools/testing/selftests/powerpc/math/.gitignore > b/tools/testing/selftests/powerpc/math/.gitignore > new file mode 100644 > index 0000000..b19b269 > --- /dev/null > +++ b/tools/testing/selftests/powerpc/math/.gitignore > @@ -0,0 +1,2 @@ > +fpu_syscall > +vmx_syscall > diff --git a/tools/testing/selftests/powerpc/math/Makefile > b/tools/testing/selftests/powerpc/math/Makefile > new file mode 100644 > index 0000000..598e5df > --- /dev/null > +++ b/tools/testing/selftests/powerpc/math/Makefile > @@ -0,0 +1,16 @@ > +TEST_PROGS := fpu_syscall vmx_syscall > + > +all: $(TEST_PROGS) > + > +#The general powerpc makefile adds -flto. This isn't interacting well with > the custom ASM. > +#filter-out -flto to avoid false failures. > +$(TEST_PROGS): ../harness.c > +$(TEST_PROGS): CFLAGS = $(filter-out -flto,$(CFLAGS) -O2 -g -pthread -m64 > -maltivec) Hi Michael, sorry, there should be a ':' before the '=' to avoid recursive variable problems -$(TEST_PROGS): CFLAGS = $(filter-out -flto,$(CFLAGS) -O2 -g -pthread -m64 -maltivec) +$(TEST_PROGS): CFLAGS := $(filter-out -flto,$(CFLAGS) -O2 -g -pthread -m64 -maltivec) Are you ok to fix it up here? Thanks > + > +fpu_syscall: fpu_asm.S > +vmx_syscall: vmx_asm.S > + > +include ../../lib.mk > + > +clean: > + rm -f $(TEST_PROGS) *.o > diff --git a/tools/testing/selftests/powerpc/math/fpu_asm.S > b/tools/testing/selftests/powerpc/math/fpu_asm.S > new file mode 100644 > index 0000000..b12c051 > --- /dev/null > +++ b/tools/testing/selftests/powerpc/math/fpu_asm.S > @@ -0,0 +1,161 @@ > +/* > + * Copyright 2015, Cyril Bur, IBM Corp. > + * > + * This program is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * as published by the Free Software Foundation; either version > + * 2 of the License, or (at your option) any later version. > + */ > + > +#include "../basic_asm.h" [snip] _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev