aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch
diff options
context:
space:
mode:
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>2017-02-27 21:27:50 +0300
committerFelix Fietkau <nbd@nbd.name>2017-05-02 15:17:30 +0200
commit34e83930197410e1d7ff306792f7426b7dce9195 (patch)
treea8de039f8d61135d6b8b690c7adfcadf386b2118 /toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch
parent2b27e62e74fa73086e505f93d6bf037a16c66e55 (diff)
downloadupstream-34e83930197410e1d7ff306792f7426b7dce9195.tar.gz
upstream-34e83930197410e1d7ff306792f7426b7dce9195.tar.bz2
upstream-34e83930197410e1d7ff306792f7426b7dce9195.zip
toolchain/arc: update to the most recent release arc-2016.09
arc-2016.09 is the most recent toolchain for ARC cores and it is based on top of upstream Binutils 2.27 and GCC 6.2.1. With updated major version of GCC we copied all GCC 6.x patches for ARC as well as Bintils 2.27 patches. Note that toochain sports ARCv4 ABI and so must be used with 4.8+ Linux kernels. Even though it will build v4.4 kernel perfectly fine on attempt to run user-space apps they won't work with older kernel. That said previuosly sent RFC patches with Linux kernel update are required: [1] https://patchwork.ozlabs.org/patch/726686/ [2] https://patchwork.ozlabs.org/patch/726687/ Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Diffstat (limited to 'toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch')
-rw-r--r--toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch42
1 files changed, 0 insertions, 42 deletions
diff --git a/toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch b/toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch
deleted file mode 100644
index a740b4ce9e..0000000000
--- a/toolchain/gcc/patches/arc-2016.03/002-weak_data_fix.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- /dev/null
-+++ b/gcc/testsuite/gcc.dg/visibility-21.c
-@@ -0,0 +1,14 @@
-+/* PR target/32219 */
-+/* { dg-do run } */
-+/* { dg-require-visibility "" } */
-+/* { dg-options "-fPIC" { target fpic } } */
-+
-+extern void f() __attribute__((weak,visibility("hidden")));
-+extern int puts( char const* );
-+int main()
-+{
-+ if (f)
-+ f();
-+ return 0;
-+}
-+
---- a/gcc/varasm.c
-+++ b/gcc/varasm.c
-@@ -6677,6 +6677,10 @@ default_binds_local_p_1 (const_tree exp,
- /* Static variables are always local. */
- else if (! TREE_PUBLIC (exp))
- local_p = true;
-+ /* hidden weak can't be overridden by something non-local, all
-+ that is possible is that it is not defined at all. */
-+ else if (DECL_WEAK (exp))
-+ local_p = false;
- /* A variable is local if the user has said explicitly that it will
- be. */
- else if ((DECL_VISIBILITY_SPECIFIED (exp)
-@@ -6690,11 +6694,6 @@ default_binds_local_p_1 (const_tree exp,
- local. */
- else if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT)
- local_p = true;
-- /* Default visibility weak data can be overridden by a strong symbol
-- in another module and so are not local. */
-- else if (DECL_WEAK (exp)
-- && !resolved_locally)
-- local_p = false;
- /* If PIC, then assume that any global name can be overridden by
- symbols resolved from other modules. */
- else if (shlib)