From 8bb346eb0d3cb88e35e8c2b1404ddac179b8bce4 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 8 Feb 2014 00:55:24 +0100 Subject: [PATCH] re PR target/60077 (gcc.target/i386/pr35767-5.c FAILs) PR target/60077 * gcc.target/i386/pr60077-1.c: New test. * gcc.target/i386/pr60077-2.c: New test. From-SVN: r207622 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.target/i386/pr60077-1.c | 18 ++++++++++++++++++ gcc/testsuite/gcc.target/i386/pr60077-2.c | 18 ++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 gcc/testsuite/gcc.target/i386/pr60077-1.c create mode 100644 gcc/testsuite/gcc.target/i386/pr60077-2.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a50fa4bc7ba6..feca2e21e3a6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2014-02-08 Jakub Jelinek + + PR target/60077 + * gcc.target/i386/pr60077-1.c: New test. + * gcc.target/i386/pr60077-2.c: New test. + 2014-02-07 Jakub Jelinek PR preprocessor/56824 diff --git a/gcc/testsuite/gcc.target/i386/pr60077-1.c b/gcc/testsuite/gcc.target/i386/pr60077-1.c new file mode 100644 index 000000000000..f20ca0a3c0a9 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr60077-1.c @@ -0,0 +1,18 @@ +/* Test that we generate aligned load when memory is aligned. */ +/* { dg-do compile } */ +/* { dg-options "-O -mavx -mtune=generic" } */ +/* { dg-final { scan-assembler-not "movups" } } */ +/* { dg-final { scan-assembler "movaps" } } */ + +typedef float v8sf __attribute__ ((__vector_size__ (32))); + +extern void foo (v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf); + +int +test (void) +{ + v8sf x = { 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0 }; + + foo (x, x, x, x, x, x, x, x, x); + return 0; +} diff --git a/gcc/testsuite/gcc.target/i386/pr60077-2.c b/gcc/testsuite/gcc.target/i386/pr60077-2.c new file mode 100644 index 000000000000..bbf846f6892a --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr60077-2.c @@ -0,0 +1,18 @@ +/* Test that we generate aligned load when memory is aligned. */ +/* { dg-do compile } */ +/* { dg-options "-O -mavx -mtune=generic" } */ +/* { dg-final { scan-assembler-not "movups" } } */ +/* { dg-final { scan-assembler "movaps" } } */ + +typedef float v8sf __attribute__ ((__vector_size__ (32))); + +extern void foo (int, int, int, int, int, int, int, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf, v8sf); + +int +test (void) +{ + v8sf x = { 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0 }; + + foo (1, 2, 3, 4, 5, 6, 7, x, x, x, x, x, x, x, x, x); + return 0; +} -- 2.47.3