aboutsummaryrefslogtreecommitdiffstats
path: root/main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2016-07-22 07:01:56 +0000
committerTimo Teräs <timo.teras@iki.fi>2016-07-22 07:01:56 +0000
commita9f466cd349d3237906b2af09ff11d4c5f3f2de4 (patch)
tree551fec7d485677a952efeac275243514b5db0b7a /main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch
parent02192413ade8b2fb6e771a2eade03fe8d8d8196a (diff)
downloadaports-a9f466cd349d3237906b2af09ff11d4c5f3f2de4.tar.bz2
aports-a9f466cd349d3237906b2af09ff11d4c5f3f2de4.tar.xz
main/gcc: upgrade to gcc 6 snapshot 20160721
this includes additional arm fixes that fix u-boot compilation. _pkgbase is expected to be the release tarball, and we have cumulative diff to bring up to the snapshot. gcc marks the snapshot releases as 6.1.1 too, so we use this version for our packaging too. gcc -v reports: gcc version 6.1.1 20160721 (Alpine 6.1.1) so the actual snapshot date is visible too. next release is due to be 6.2.
Diffstat (limited to 'main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch')
-rw-r--r--main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch85
1 files changed, 0 insertions, 85 deletions
diff --git a/main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch b/main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch
deleted file mode 100644
index ed72b893f6..0000000000
--- a/main/gcc/gcc-6.1-71056-Don-t-use-vectorized-builtins-when-N.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 7286da3d2d19806e8a1273558fb08e094bb7ffe7 Mon Sep 17 00:00:00 2001
-From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
-Date: Thu, 19 May 2016 13:43:58 +0000
-Subject: [PATCH 2/2] PR target/71056: Don't use vectorized builtins when NEON
- is not available
-
- PR target/71056
- * config/arm/arm-builtins.c (arm_builtin_vectorized_function): Return
- NULL_TREE early if NEON is not available. Remove now redundant check
- in ARM_CHECK_BUILTIN_MODE.
-
- * gcc.target/arm/pr71056.c: New test.
-
-git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236459 138bc75d-0d04-0410-961f-82ee72b054a4
----
- gcc/config/arm/arm-builtins.c | 6 +++++-
- gcc/testsuite/gcc.target/arm/pr71056.c | 32 ++++++++++++++++++++++++++++++++
- 2 files changed, 37 insertions(+), 1 deletion(-)
- create mode 100644 gcc/testsuite/gcc.target/arm/pr71056.c
-
-diff --git a/gcc/config/arm/arm-builtins.c b/gcc/config/arm/arm-builtins.c
-index 90fb40f..68b2839 100644
---- a/gcc/config/arm/arm-builtins.c
-+++ b/gcc/config/arm/arm-builtins.c
-@@ -2861,6 +2861,10 @@ arm_builtin_vectorized_function (unsigned int fn, tree type_out, tree type_in)
- int in_n, out_n;
- bool out_unsigned_p = TYPE_UNSIGNED (type_out);
-
-+ /* Can't provide any vectorized builtins when we can't use NEON. */
-+ if (!TARGET_NEON)
-+ return NULL_TREE;
-+
- if (TREE_CODE (type_out) != VECTOR_TYPE
- || TREE_CODE (type_in) != VECTOR_TYPE)
- return NULL_TREE;
-@@ -2875,7 +2879,7 @@ arm_builtin_vectorized_function (unsigned int fn, tree type_out, tree type_in)
- NULL_TREE is returned if no such builtin is available. */
- #undef ARM_CHECK_BUILTIN_MODE
- #define ARM_CHECK_BUILTIN_MODE(C) \
-- (TARGET_NEON && TARGET_FPU_ARMV8 \
-+ (TARGET_FPU_ARMV8 \
- && flag_unsafe_math_optimizations \
- && ARM_CHECK_BUILTIN_MODE_1 (C))
-
-diff --git a/gcc/testsuite/gcc.target/arm/pr71056.c b/gcc/testsuite/gcc.target/arm/pr71056.c
-new file mode 100644
-index 0000000..136754e
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/arm/pr71056.c
-@@ -0,0 +1,32 @@
-+/* PR target/71056. */
-+/* { dg-do compile } */
-+/* { dg-require-effective-target arm_vfp3_ok } */
-+/* { dg-options "-O3 -mfpu=vfpv3" } */
-+
-+/* Check that compiling for a non-NEON target doesn't try to introduce
-+ a NEON vectorized builtin. */
-+
-+extern char *buff;
-+int f2 ();
-+struct T1
-+{
-+ int reserved[2];
-+ unsigned int ip;
-+ unsigned short cs;
-+ unsigned short rsrv2;
-+};
-+void
-+f3 (const char *p)
-+{
-+ struct T1 x;
-+ __builtin_memcpy (&x, p, sizeof (struct T1));
-+ x.reserved[0] = __builtin_bswap32 (x.reserved[0]);
-+ x.reserved[1] = __builtin_bswap32 (x.reserved[1]);
-+ x.ip = __builtin_bswap32 (x.ip);
-+ x.cs = x.cs << 8 | x.cs >> 8;
-+ x.rsrv2 = x.rsrv2 << 8 | x.rsrv2 >> 8;
-+ if (f2 ())
-+ {
-+ __builtin_memcpy (buff, "\n", 1);
-+ }
-+}
---
-2.7.2
-