diff options
author | Jakub Jelinek <jakub@redhat.com> | 2014-02-08 00:55:24 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-02-08 00:55:24 +0100 |
commit | 8bb346eb0d3cb88e35e8c2b1404ddac179b8bce4 (patch) | |
tree | 0ff5144a934d45089411641c624ccdf301b5ed4b /gcc | |
parent | d31d42c74d6f47d4f2082f7675f292be4af951d4 (diff) | |
download | gcc-8bb346eb0d3cb88e35e8c2b1404ddac179b8bce4.zip gcc-8bb346eb0d3cb88e35e8c2b1404ddac179b8bce4.tar.gz gcc-8bb346eb0d3cb88e35e8c2b1404ddac179b8bce4.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr60077-1.c | 18 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr60077-2.c | 18 |
3 files changed, 42 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a50fa4b..feca2e2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2014-02-08 Jakub Jelinek <jakub@redhat.com> + + PR target/60077 + * gcc.target/i386/pr60077-1.c: New test. + * gcc.target/i386/pr60077-2.c: New test. + 2014-02-07 Jakub Jelinek <jakub@redhat.com> 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 0000000..f20ca0a --- /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 0000000..bbf846f --- /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; +} |