diff options
author | Alexey Neyman <stilor@att.net> | 2017-09-23 12:20:38 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-23 12:20:38 -0700 |
commit | f86adab1f41b2320c20ffe2e9ffe0c6d12954c33 (patch) | |
tree | eba84ca8338867cb213de4d17a54c7d5b59dad20 | |
parent | 2ebbd3e3183ed18d13884ba6d30df09d16078fd0 (diff) | |
parent | ff4485ad30ab866a908ba8ef26f9798db8f72809 (diff) | |
download | crosstool-ng-f86adab1f41b2320c20ffe2e9ffe0c6d12954c33.tar.gz crosstool-ng-f86adab1f41b2320c20ffe2e9ffe0c6d12954c33.tar.bz2 crosstool-ng-f86adab1f41b2320c20ffe2e9ffe0c6d12954c33.zip |
Merge pull request #834 from stilor/xtensa-fix-linaro
Xtensa fix for Linaro releases
-rwxr-xr-x | maintainer/test-packages.sh | 5 | ||||
-rw-r--r-- | packages/gcc-linaro/4.8-2015.06/875-xtensa-fix-PR-target-82181.patch | 31 | ||||
-rw-r--r-- | packages/gcc-linaro/4.9-2017.01/876-xtensa-fix-PR-target-82181.patch | 31 | ||||
-rw-r--r-- | packages/gcc-linaro/5.4-2017.05/880-xtensa-fix-PR-target-82181.patch | 31 | ||||
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch | 188 | ||||
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch | 62 | ||||
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/871-xtensa-Fix-PR-target-78118.patch | 318 | ||||
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/872-xtensa-Fix-PR-target-78603.patch | 35 | ||||
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch | 74 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/100-uclibc-conf.patch (renamed from packages/gcc-linaro/6.3-2017.05/100-uclibc-conf.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/1000-libtool-leave-framework-alone.patch (renamed from packages/gcc-linaro/6.3-2017.05/1000-libtool-leave-framework-alone.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/301-missing-execinfo_h.patch (renamed from packages/gcc-linaro/6.3-2017.05/301-missing-execinfo_h.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch (renamed from packages/gcc-linaro/6.3-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from packages/gcc-linaro/6.3-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/810-arm-softfloat-libgcc.patch (renamed from packages/gcc-linaro/6.3-2017.05/810-arm-softfloat-libgcc.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/830-arm_unbreak_armv4t.patch (renamed from packages/gcc-linaro/6.3-2017.05/830-arm_unbreak_armv4t.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/860-cilk-wchar.patch (renamed from packages/gcc-linaro/6.3-2017.05/860-cilk-wchar.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/870-xtensa-fix-PR-target-82181.patch | 31 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/890-fix-m68k-compile.patch (renamed from packages/gcc-linaro/6.3-2017.05/890-fix-m68k-compile.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/891-fix-m68k-uclinux.patch (renamed from packages/gcc-linaro/6.3-2017.05/891-fix-m68k-uclinux.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/892-libgcc-mkmap-symver-support-skip_underscore.patch (renamed from packages/gcc-linaro/6.3-2017.05/892-libgcc-mkmap-symver-support-skip_underscore.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch (renamed from packages/gcc-linaro/6.3-2017.05/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch (renamed from packages/gcc-linaro/6.3-2017.05/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/895-bfin-define-REENTRANT.patch (renamed from packages/gcc-linaro/6.3-2017.05/895-bfin-define-REENTRANT.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/900-libgfortran-missing-include.patch (renamed from packages/gcc-linaro/6.3-2017.05/900-libgfortran-missing-include.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/910-nios2-bad-multilib-default.patch (renamed from packages/gcc-linaro/6.3-2017.05/910-nios2-bad-multilib-default.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/930-libgcc-disable-split-stack-nothreads.patch (renamed from packages/gcc-linaro/6.3-2017.05/930-libgcc-disable-split-stack-nothreads.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/940-uclinux-enable-threads.patch (renamed from packages/gcc-linaro/6.3-2017.05/940-uclinux-enable-threads.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/951-bionic-ndk.patch (renamed from packages/gcc-linaro/6.3-2017.05/951-bionic-ndk.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/952-bionic-errno.patch (renamed from packages/gcc-linaro/6.3-2017.05/952-bionic-errno.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/970-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/970-crystax.patch) | 13 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/971-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/971-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/972-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/972-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/973-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/973-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/974-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/974-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/975-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/975-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/976-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/976-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/977-crystax.patch (renamed from packages/gcc-linaro/6.3-2017.05/977-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/6.4-2017.08/version.desc (renamed from packages/gcc-linaro/6.3-2017.05/version.desc) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch | 203 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.05/111-alpha-bad-eh_frame.patch | 13 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.05/870-gcc-xtensa-fix-fprintf-format-specifiers.patch | 74 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/100-uclibc-conf.patch (renamed from packages/gcc-linaro/7.1-2017.05/100-uclibc-conf.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/1000-libtool-leave-framework-alone.patch (renamed from packages/gcc-linaro/7.1-2017.05/1000-libtool-leave-framework-alone.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch (renamed from packages/gcc-linaro/7.1-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from packages/gcc-linaro/7.1-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/810-arm-softfloat-libgcc.patch (renamed from packages/gcc-linaro/7.1-2017.05/810-arm-softfloat-libgcc.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/860-cilk-wchar.patch (renamed from packages/gcc-linaro/7.1-2017.05/860-cilk-wchar.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/870-xtensa-fix-PR-target-82181.patch | 31 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/891-fix-m68k-uclinux.patch (renamed from packages/gcc-linaro/7.1-2017.05/891-fix-m68k-uclinux.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/900-libgfortran-missing-include.patch (renamed from packages/gcc-linaro/7.1-2017.05/900-libgfortran-missing-include.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/910-nios2-bad-multilib-default.patch (renamed from packages/gcc-linaro/7.1-2017.05/910-nios2-bad-multilib-default.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/930-libgcc-disable-split-stack-nothreads.patch (renamed from packages/gcc-linaro/7.1-2017.05/930-libgcc-disable-split-stack-nothreads.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/951-bionic-ndk.patch (renamed from packages/gcc-linaro/7.1-2017.05/951-bionic-ndk.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/952-bionic-errno.patch (renamed from packages/gcc-linaro/7.1-2017.05/952-bionic-errno.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/970-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/970-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/971-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/971-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/972-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/972-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/973-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/973-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/974-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/974-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/975-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/975-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/976-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/976-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/977-crystax.patch (renamed from packages/gcc-linaro/7.1-2017.05/977-crystax.patch) | 0 | ||||
-rw-r--r-- | packages/gcc-linaro/7.1-2017.08/version.desc (renamed from packages/gcc-linaro/7.1-2017.05/version.desc) | 0 |
64 files changed, 167 insertions, 973 deletions
diff --git a/maintainer/test-packages.sh b/maintainer/test-packages.sh index 42aaad7b..6049f25c 100755 --- a/maintainer/test-packages.sh +++ b/maintainer/test-packages.sh @@ -61,6 +61,11 @@ while [ -n "${1}" ]; do shift done +if [ -z "${download_pkgs}${verify_urls}" ]; then + echo "No action selected" >&2 + exit 1 +fi + CT_LIB_DIR=`pwd` CT_TOP_DIR=`pwd` CT_TARBALLS_DIR=`pwd`/temp.tarballs diff --git a/packages/gcc-linaro/4.8-2015.06/875-xtensa-fix-PR-target-82181.patch b/packages/gcc-linaro/4.8-2015.06/875-xtensa-fix-PR-target-82181.patch new file mode 100644 index 00000000..0a011a6b --- /dev/null +++ b/packages/gcc-linaro/4.8-2015.06/875-xtensa-fix-PR-target-82181.patch @@ -0,0 +1,31 @@ +From 91f3a82de1e43362a0ab2cb2e1fd6b89c5a00525 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Mon, 11 Sep 2017 21:53:38 +0000 +Subject: [PATCH] xtensa: fix PR target/82181 + +2017-09-11 Max Filippov <jcmvbkbc@gmail.com> +gcc/ + Backport from mainline + * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both + words of DImode object are reachable by xtensa_uimm8x4 access. + +Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> +--- + gcc/config/xtensa/xtensa.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 466adb5103ca..3ba2965ecf5e 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -599,6 +599,7 @@ xtensa_mem_offset (unsigned v, enum machine_mode mode) + case HImode: + return xtensa_uimm8x2 (v); + ++ case DImode: + case DFmode: + return (xtensa_uimm8x4 (v) && xtensa_uimm8x4 (v + 4)); + +-- +2.1.4 + diff --git a/packages/gcc-linaro/4.9-2017.01/876-xtensa-fix-PR-target-82181.patch b/packages/gcc-linaro/4.9-2017.01/876-xtensa-fix-PR-target-82181.patch new file mode 100644 index 00000000..a613bb38 --- /dev/null +++ b/packages/gcc-linaro/4.9-2017.01/876-xtensa-fix-PR-target-82181.patch @@ -0,0 +1,31 @@ +From c8fad280eb4cbfe2711e6715aed5749ff400bb80 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Mon, 11 Sep 2017 21:53:38 +0000 +Subject: [PATCH] xtensa: fix PR target/82181 + +2017-09-11 Max Filippov <jcmvbkbc@gmail.com> +gcc/ + Backport from mainline + * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both + words of DImode object are reachable by xtensa_uimm8x4 access. + +Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> +--- + gcc/config/xtensa/xtensa.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 3c0096113775..3eb4db85b971 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -612,6 +612,7 @@ xtensa_mem_offset (unsigned v, enum machine_mode mode) + case HImode: + return xtensa_uimm8x2 (v); + ++ case DImode: + case DFmode: + return (xtensa_uimm8x4 (v) && xtensa_uimm8x4 (v + 4)); + +-- +2.1.4 + diff --git a/packages/gcc-linaro/5.4-2017.05/880-xtensa-fix-PR-target-82181.patch b/packages/gcc-linaro/5.4-2017.05/880-xtensa-fix-PR-target-82181.patch new file mode 100644 index 00000000..b8c2263e --- /dev/null +++ b/packages/gcc-linaro/5.4-2017.05/880-xtensa-fix-PR-target-82181.patch @@ -0,0 +1,31 @@ +From 82314225ca735a726d9e14dd69354814240419e1 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Mon, 11 Sep 2017 21:53:38 +0000 +Subject: [PATCH] xtensa: fix PR target/82181 + +2017-09-11 Max Filippov <jcmvbkbc@gmail.com> +gcc/ + Backport from mainline + * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both + words of DImode object are reachable by xtensa_uimm8x4 access. + +Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> +--- + gcc/config/xtensa/xtensa.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 8e62d631bce0..a30aa1bcfc33 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -637,6 +637,7 @@ xtensa_mem_offset (unsigned v, machine_mode mode) + case HImode: + return xtensa_uimm8x2 (v); + ++ case DImode: + case DFmode: + return (xtensa_uimm8x4 (v) && xtensa_uimm8x4 (v + 4)); + +-- +2.1.4 + diff --git a/packages/gcc-linaro/6.3-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch b/packages/gcc-linaro/6.3-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch deleted file mode 100644 index 17a77d05..00000000 --- a/packages/gcc-linaro/6.3-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch +++ /dev/null @@ -1,188 +0,0 @@ -From d1f626c8f3c2c2c3aca3a67d4b66641d2d911dfa Mon Sep 17 00:00:00 2001 -From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Tue, 4 Jul 2017 10:23:57 +0000 -Subject: [PATCH] Use ucontext_t not struct ucontext in linux-unwind.h files. - -Current glibc no longer gives the ucontext_t type the tag struct -ucontext, to conform with POSIX namespace rules. This requires -various linux-unwind.h files in libgcc, that were previously using -struct ucontext, to be fixed to use ucontext_t instead. This is -similar to the removal of the struct siginfo tag from siginfo_t some -years ago. - -This patch changes those files to use ucontext_t instead. As the -standard name that should be unconditionally safe, so this is not -restricted to architectures supported by glibc, or conditioned on the -glibc version. - -Tested compilation together with current glibc with glibc's -build-many-glibcs.py. - - * config/aarch64/linux-unwind.h (aarch64_fallback_frame_state), - config/alpha/linux-unwind.h (alpha_fallback_frame_state), - config/bfin/linux-unwind.h (bfin_fallback_frame_state), - config/i386/linux-unwind.h (x86_64_fallback_frame_state, - x86_fallback_frame_state), config/m68k/linux-unwind.h (struct - uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext), - config/pa/linux-unwind.h (pa32_fallback_frame_state), - config/sh/linux-unwind.h (sh_fallback_frame_state), - config/tilepro/linux-unwind.h (tile_fallback_frame_state), - config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use - ucontext_t instead of struct ucontext. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@249957 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - libgcc/config/aarch64/linux-unwind.h | 2 +- - libgcc/config/alpha/linux-unwind.h | 2 +- - libgcc/config/bfin/linux-unwind.h | 2 +- - libgcc/config/i386/linux-unwind.h | 4 ++-- - libgcc/config/m68k/linux-unwind.h | 2 +- - libgcc/config/nios2/linux-unwind.h | 2 +- - libgcc/config/pa/linux-unwind.h | 2 +- - libgcc/config/sh/linux-unwind.h | 2 +- - libgcc/config/tilepro/linux-unwind.h | 2 +- - libgcc/config/xtensa/linux-unwind.h | 2 +- - 10 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h -index 4512efbdcc8..06de45aa7ab 100644 ---- a/libgcc/config/aarch64/linux-unwind.h -+++ b/libgcc/config/aarch64/linux-unwind.h -@@ -52,7 +52,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe - { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - }; - - struct rt_sigframe *rt_; -diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h -index bdbba4a3c5d..e84812e33fd 100644 ---- a/libgcc/config/alpha/linux-unwind.h -+++ b/libgcc/config/alpha/linux-unwind.h -@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - sc = &rt_->uc.uc_mcontext; - } -diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h -index 77b7c23c708..8bf5e82c55e 100644 ---- a/libgcc/config/bfin/linux-unwind.h -+++ b/libgcc/config/bfin/linux-unwind.h -@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, - void *puc; - char retcode[8]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - - /* The void * cast is necessary to avoid an aliasing warning. -diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h -index 540a0a25aca..29efbe31d61 100644 ---- a/libgcc/config/i386/linux-unwind.h -+++ b/libgcc/config/i386/linux-unwind.h -@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context, - if (*(unsigned char *)(pc+0) == 0x48 - && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL) - { -- struct ucontext *uc_ = context->cfa; -+ ucontext_t *uc_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem - because it does not alias anything. */ -@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, - siginfo_t *pinfo; - void *puc; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/m68k/linux-unwind.h b/libgcc/config/m68k/linux-unwind.h -index 75b7cf723a0..f964e24c4ee 100644 ---- a/libgcc/config/m68k/linux-unwind.h -+++ b/libgcc/config/m68k/linux-unwind.h -@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - /* <sys/ucontext.h> is unfortunately broken right now. */ - struct uw_ucontext { - unsigned long uc_flags; -- struct ucontext *uc_link; -+ ucontext_t *uc_link; - stack_t uc_stack; - mcontext_t uc_mcontext; - unsigned long uc_filler[80]; -diff --git a/libgcc/config/nios2/linux-unwind.h b/libgcc/config/nios2/linux-unwind.h -index 23041420525..30f25ea379e 100644 ---- a/libgcc/config/nios2/linux-unwind.h -+++ b/libgcc/config/nios2/linux-unwind.h -@@ -38,7 +38,7 @@ struct nios2_mcontext { - - struct nios2_ucontext { - unsigned long uc_flags; -- struct ucontext *uc_link; -+ ucontext_t *uc_link; - stack_t uc_stack; - struct nios2_mcontext uc_mcontext; - sigset_t uc_sigmask; /* mask last for extensibility */ -diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h -index 9a2657f295d..e47493dde91 100644 ---- a/libgcc/config/pa/linux-unwind.h -+++ b/libgcc/config/pa/linux-unwind.h -@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, - struct sigcontext *sc; - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *frame; - - /* rt_sigreturn trampoline: -diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h -index e389cacaab8..0bf43ba21c2 100644 ---- a/libgcc/config/sh/linux-unwind.h -+++ b/libgcc/config/sh/linux-unwind.h -@@ -180,7 +180,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h -index 796e97620b8..75f8890ce07 100644 ---- a/libgcc/config/tilepro/linux-unwind.h -+++ b/libgcc/config/tilepro/linux-unwind.h -@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe { - unsigned char save_area[C_ABI_SAVE_AREA_SIZE]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_; - - /* Return if this is not a signal handler. */ -diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h -index 9872492acc2..586a9d49e9c 100644 ---- a/libgcc/config/xtensa/linux-unwind.h -+++ b/libgcc/config/xtensa/linux-unwind.h -@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, - - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_; - - /* movi a2, __NR_rt_sigreturn; syscall */ --- -2.14.1 - diff --git a/packages/gcc-linaro/6.3-2017.05/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch b/packages/gcc-linaro/6.3-2017.05/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch deleted file mode 100644 index 6e0ce6e3..00000000 --- a/packages/gcc-linaro/6.3-2017.05/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch +++ /dev/null @@ -1,62 +0,0 @@ -From d28554ee61a1ab1263274d66386e4051bca0ce05 Mon Sep 17 00:00:00 2001 -From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Tue, 18 Oct 2016 19:12:19 +0000 -Subject: [PATCH] xtensa: don't use unwind-dw2-fde-dip with elf targets - -Define LIB2ADDEH_XTENSA_UNWIND_DW2_FDE to unwind-dw2-fde.c in -xtensa/t-elf and to unwind-dw2-fde-dip.c in xtensa/t-linux and use -LIB2ADDEH_XTENSA_UNWIND_DW2_FDE in LIB2ADDEH definition. - -This fixes build for elf target with windowed xtensa core that currently -breaks with the following error message: - - unwind-dw2-fde-dip.c:36:40: fatal error: elf.h: No such file or directory - -2016-10-18 Max Filippov <jcmvbkbc@gmail.com> -libgcc/ - * config/xtensa/t-elf (LIB2ADDEH_XTENSA_UNWIND_DW2_FDE): New - definition. - * config/xtensa/t-linux (LIB2ADDEH_XTENSA_UNWIND_DW2_FDE): New - definition. - * config/xtensa/t-windowed (LIB2ADDEH): Use - LIB2ADDEH_XTENSA_UNWIND_DW2_FDE defined by either xtensa/t-elf - or xtensa/t-linux. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@241313 138bc75d-0d04-0410-961f-82ee72b054a4 - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - libgcc/config/xtensa/t-elf | 2 ++ - libgcc/config/xtensa/t-linux | 2 ++ - libgcc/config/xtensa/t-windowed | 2 +- - 3 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/libgcc/config/xtensa/t-elf b/libgcc/config/xtensa/t-elf -index 59d5121..967cf9b 100644 ---- a/libgcc/config/xtensa/t-elf -+++ b/libgcc/config/xtensa/t-elf -@@ -3,3 +3,5 @@ CRTSTUFF_T_CFLAGS += -mlongcalls - CRTSTUFF_T_CFLAGS_S += -mlongcalls - - HOST_LIBGCC2_CFLAGS += -mlongcalls -+ -+LIB2ADDEH_XTENSA_UNWIND_DW2_FDE = $(srcdir)/unwind-dw2-fde.c -diff --git a/libgcc/config/xtensa/t-linux b/libgcc/config/xtensa/t-linux -index 6f4ae89..412ecca 100644 ---- a/libgcc/config/xtensa/t-linux -+++ b/libgcc/config/xtensa/t-linux -@@ -1 +1,3 @@ - SHLIB_MAPFILES += $(srcdir)/config/xtensa/libgcc-glibc.ver -+ -+LIB2ADDEH_XTENSA_UNWIND_DW2_FDE = $(srcdir)/unwind-dw2-fde-dip.c -diff --git a/libgcc/config/xtensa/t-windowed b/libgcc/config/xtensa/t-windowed -index a99156c..f140136 100644 ---- a/libgcc/config/xtensa/t-windowed -+++ b/libgcc/config/xtensa/t-windowed -@@ -1,2 +1,2 @@ - LIB2ADDEH = $(srcdir)/config/xtensa/unwind-dw2-xtensa.c \ -- $(srcdir)/unwind-dw2-fde-dip.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c -+ $(LIB2ADDEH_XTENSA_UNWIND_DW2_FDE) $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c --- -2.1.4 - diff --git a/packages/gcc-linaro/6.3-2017.05/871-xtensa-Fix-PR-target-78118.patch b/packages/gcc-linaro/6.3-2017.05/871-xtensa-Fix-PR-target-78118.patch deleted file mode 100644 index c6ae103a..00000000 --- a/packages/gcc-linaro/6.3-2017.05/871-xtensa-Fix-PR-target-78118.patch +++ /dev/null @@ -1,318 +0,0 @@ -From bdda1689faf608ad7c83b5bd2e21a236b0047579 Mon Sep 17 00:00:00 2001 -From: Max Filippov <jcmvbkbc@gmail.com> -Date: Wed, 26 Oct 2016 08:02:51 +0000 -Subject: [PATCH] xtensa: Fix PR target/78118 - -It started failing after the following commit: 32e90dc6a0cda45 ("PR -rtl-optimization/61047"). - -The change that made xtensa backend go ICE looks completely unrelated, -and indeed, the issue is caused by the side effect of -compute_frame_size() function call hidden in the -INITIAL_ELIMINATION_OFFSET macro. This call updates the value of the -xtensa_current_frame_size static variable, used in "return" instruction -predicate. Prior to the change the value of xtensa_current_frame_size was -set to 0 after the end of epilogue generation, which enabled the "return" -instruction for the CALL0 ABI, but after the change the additional -INITIAL_ELIMINATION_OFFSET calls make xtensa_current_frame_size non-zero -and "return" pattern unavailable. - -Get rid of the global xtensa_current_frame_size and -xtensa_callee_save_size variables by moving them into the -machine_function structure. Implement predicate for the "return" pattern -as a function. Don't communicate completion of epilogue generation -through zeroing of xtensa_current_frame_size, add explicit epilogue_done -variable to the machine_function structure. Don't update stack frame -layout after the completion of reload. - -2016-10-26 Max Filippov <jcmvbkbc@gmail.com> -gcc/ - * config/xtensa/xtensa-protos.h - (xtensa_use_return_instruction_p): New prototype. - * config/xtensa/xtensa.c (xtensa_current_frame_size, - xtensa_callee_save_size): Remove. - (struct machine_function): Add new fields: current_frame_size, - callee_save_size, frame_laid_out and epilogue_done. - (compute_frame_size, xtensa_expand_prologue, - xtensa_expand_epilogue): Replace xtensa_callee_save_size with - cfun->machine->callee_save_size and xtensa_current_frame_size - with cfun->machine->current_frame_size. - (compute_frame_size): Update cfun->machine->frame_laid_out and - don't update frame layout after reload completion. - (xtensa_expand_epilogue): Set cfun->machine->epilogue_done - instead of zeroing xtensa_current_frame_size. - (xtensa_use_return_instruction_p): New function. - * config/xtensa/xtensa.h (xtensa_current_frame_size): Remove - declaration. - (INITIAL_ELIMINATION_OFFSET): Use return value of - compute_frame_size instead of xtensa_current_frame_size value. - * config/xtensa/xtensa.md ("return" pattern): Use new predicate - function xtensa_use_return_instruction_p instead of inline code. - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - gcc/config/xtensa/xtensa-protos.h | 1 + - gcc/config/xtensa/xtensa.c | 82 ++++++++++++++++++++++++--------------- - gcc/config/xtensa/xtensa.h | 6 +-- - gcc/config/xtensa/xtensa.md | 2 +- - 4 files changed, 55 insertions(+), 36 deletions(-) - -diff --git a/gcc/config/xtensa/xtensa-protos.h b/gcc/config/xtensa/xtensa-protos.h -index f2ca526..873557f 100644 ---- a/gcc/config/xtensa/xtensa-protos.h -+++ b/gcc/config/xtensa/xtensa-protos.h -@@ -68,6 +68,7 @@ extern rtx xtensa_return_addr (int, rtx); - extern void xtensa_setup_frame_addresses (void); - extern int xtensa_dbx_register_number (int); - extern long compute_frame_size (int); -+extern bool xtensa_use_return_instruction_p (void); - extern void xtensa_expand_prologue (void); - extern void xtensa_expand_epilogue (void); - extern void order_regs_for_local_alloc (void); -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index 64d089b..e49f784 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -78,11 +78,6 @@ enum internal_test - can support a given mode. */ - char xtensa_hard_regno_mode_ok[(int) MAX_MACHINE_MODE][FIRST_PSEUDO_REGISTER]; - --/* Current frame size calculated by compute_frame_size. */ --unsigned xtensa_current_frame_size; --/* Callee-save area size in the current frame calculated by compute_frame_size. */ --int xtensa_callee_save_size; -- - /* Largest block move to handle in-line. */ - #define LARGEST_MOVE_RATIO 15 - -@@ -94,6 +89,13 @@ struct GTY(()) machine_function - bool vararg_a7; - rtx vararg_a7_copy; - rtx_insn *set_frame_ptr_insn; -+ /* Current frame size calculated by compute_frame_size. */ -+ unsigned current_frame_size; -+ /* Callee-save area size in the current frame calculated by -+ compute_frame_size. */ -+ int callee_save_size; -+ bool frame_laid_out; -+ bool epilogue_done; - }; - - /* Vector, indexed by hard register number, which contains 1 for a -@@ -2628,24 +2630,29 @@ compute_frame_size (int size) - { - int regno; - -+ if (reload_completed && cfun->machine->frame_laid_out) -+ return cfun->machine->current_frame_size; -+ - /* Add space for the incoming static chain value. */ - if (cfun->static_chain_decl != NULL) - size += (1 * UNITS_PER_WORD); - -- xtensa_callee_save_size = 0; -+ cfun->machine->callee_save_size = 0; - for (regno = 0; regno < FIRST_PSEUDO_REGISTER; ++regno) - { - if (xtensa_call_save_reg(regno)) -- xtensa_callee_save_size += UNITS_PER_WORD; -+ cfun->machine->callee_save_size += UNITS_PER_WORD; - } - -- xtensa_current_frame_size = -+ cfun->machine->current_frame_size = - XTENSA_STACK_ALIGN (size -- + xtensa_callee_save_size -+ + cfun->machine->callee_save_size - + crtl->outgoing_args_size - + (WINDOW_SIZE * UNITS_PER_WORD)); -- xtensa_callee_save_size = XTENSA_STACK_ALIGN (xtensa_callee_save_size); -- return xtensa_current_frame_size; -+ cfun->machine->callee_save_size = -+ XTENSA_STACK_ALIGN (cfun->machine->callee_save_size); -+ cfun->machine->frame_laid_out = true; -+ return cfun->machine->current_frame_size; - } - - -@@ -2696,6 +2703,7 @@ xtensa_expand_prologue (void) - { - int regno; - HOST_WIDE_INT offset = 0; -+ int callee_save_size = cfun->machine->callee_save_size; - - /* -128 is a limit of single addi instruction. */ - if (total_size > 0 && total_size <= 128) -@@ -2709,7 +2717,7 @@ xtensa_expand_prologue (void) - add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); - offset = total_size - UNITS_PER_WORD; - } -- else if (xtensa_callee_save_size) -+ else if (callee_save_size) - { - /* 1020 is maximal s32i offset, if the frame is bigger than that - * we move sp to the end of callee-saved save area, save and then -@@ -2717,13 +2725,13 @@ xtensa_expand_prologue (void) - if (total_size > 1024) - { - insn = emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, -- GEN_INT (-xtensa_callee_save_size))); -+ GEN_INT (-callee_save_size))); - RTX_FRAME_RELATED_P (insn) = 1; - note_rtx = gen_rtx_SET (stack_pointer_rtx, - plus_constant (Pmode, stack_pointer_rtx, -- -xtensa_callee_save_size)); -+ -callee_save_size)); - add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); -- offset = xtensa_callee_save_size - UNITS_PER_WORD; -+ offset = callee_save_size - UNITS_PER_WORD; - } - else - { -@@ -2759,13 +2767,13 @@ xtensa_expand_prologue (void) - { - rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); - emit_move_insn (tmp_reg, GEN_INT (total_size - -- xtensa_callee_save_size)); -+ callee_save_size)); - insn = emit_insn (gen_subsi3 (stack_pointer_rtx, - stack_pointer_rtx, tmp_reg)); - RTX_FRAME_RELATED_P (insn) = 1; - note_rtx = gen_rtx_SET (stack_pointer_rtx, - plus_constant (Pmode, stack_pointer_rtx, -- xtensa_callee_save_size - -+ callee_save_size - - total_size)); - add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); - } -@@ -2833,21 +2841,21 @@ xtensa_expand_epilogue (void) - int regno; - HOST_WIDE_INT offset; - -- if (xtensa_current_frame_size > (frame_pointer_needed ? 127 : 1024)) -+ if (cfun->machine->current_frame_size > (frame_pointer_needed ? 127 : 1024)) - { - rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); -- emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size - -- xtensa_callee_save_size)); -+ emit_move_insn (tmp_reg, GEN_INT (cfun->machine->current_frame_size - -+ cfun->machine->callee_save_size)); - emit_insn (gen_addsi3 (stack_pointer_rtx, frame_pointer_needed ? - hard_frame_pointer_rtx : stack_pointer_rtx, - tmp_reg)); -- offset = xtensa_callee_save_size - UNITS_PER_WORD; -+ offset = cfun->machine->callee_save_size - UNITS_PER_WORD; - } - else - { - if (frame_pointer_needed) - emit_move_insn (stack_pointer_rtx, hard_frame_pointer_rtx); -- offset = xtensa_current_frame_size - UNITS_PER_WORD; -+ offset = cfun->machine->current_frame_size - UNITS_PER_WORD; - } - - /* Prevent reordering of saved a0 update and loading it back from -@@ -2867,16 +2875,16 @@ xtensa_expand_epilogue (void) - } - } - -- if (xtensa_current_frame_size > 0) -+ if (cfun->machine->current_frame_size > 0) - { - if (frame_pointer_needed || /* always reachable with addi */ -- xtensa_current_frame_size > 1024 || -- xtensa_current_frame_size <= 127) -+ cfun->machine->current_frame_size > 1024 || -+ cfun->machine->current_frame_size <= 127) - { -- if (xtensa_current_frame_size <= 127) -- offset = xtensa_current_frame_size; -+ if (cfun->machine->current_frame_size <= 127) -+ offset = cfun->machine->current_frame_size; - else -- offset = xtensa_callee_save_size; -+ offset = cfun->machine->callee_save_size; - - emit_insn (gen_addsi3 (stack_pointer_rtx, - stack_pointer_rtx, -@@ -2885,7 +2893,8 @@ xtensa_expand_epilogue (void) - else - { - rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); -- emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size)); -+ emit_move_insn (tmp_reg, -+ GEN_INT (cfun->machine->current_frame_size)); - emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, - tmp_reg)); - } -@@ -2896,11 +2905,22 @@ xtensa_expand_epilogue (void) - stack_pointer_rtx, - EH_RETURN_STACKADJ_RTX)); - } -- xtensa_current_frame_size = 0; -- xtensa_callee_save_size = 0; -+ cfun->machine->epilogue_done = true; - emit_jump_insn (gen_return ()); - } - -+bool -+xtensa_use_return_instruction_p (void) -+{ -+ if (!reload_completed) -+ return false; -+ if (TARGET_WINDOWED_ABI) -+ return true; -+ if (compute_frame_size (get_frame_size ()) == 0) -+ return true; -+ return cfun->machine->epilogue_done; -+} -+ - void - xtensa_set_return_address (rtx address, rtx scratch) - { -diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h -index 82e9900..58eb1b2 100644 ---- a/gcc/config/xtensa/xtensa.h -+++ b/gcc/config/xtensa/xtensa.h -@@ -23,8 +23,6 @@ along with GCC; see the file COPYING3. If not see - - /* External variables defined in xtensa.c. */ - --extern unsigned xtensa_current_frame_size; -- - /* Macros used in the machine description to select various Xtensa - configuration options. */ - #ifndef XCHAL_HAVE_MUL32_HIGH -@@ -477,14 +475,14 @@ enum reg_class - /* Specify the initial difference between the specified pair of registers. */ - #define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET) \ - do { \ -- compute_frame_size (get_frame_size ()); \ -+ long frame_size = compute_frame_size (get_frame_size ()); \ - switch (FROM) \ - { \ - case FRAME_POINTER_REGNUM: \ - (OFFSET) = 0; \ - break; \ - case ARG_POINTER_REGNUM: \ -- (OFFSET) = xtensa_current_frame_size; \ -+ (OFFSET) = frame_size; \ - break; \ - default: \ - gcc_unreachable (); \ -diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md -index db54a12..fcdb6c8 100644 ---- a/gcc/config/xtensa/xtensa.md -+++ b/gcc/config/xtensa/xtensa.md -@@ -1663,7 +1663,7 @@ - (define_insn "return" - [(return) - (use (reg:SI A0_REG))] -- "(TARGET_WINDOWED_ABI || !xtensa_current_frame_size) && reload_completed" -+ "xtensa_use_return_instruction_p ()" - { - return TARGET_WINDOWED_ABI ? - (TARGET_DENSITY ? "retw.n" : "retw") : --- -2.1.4 - diff --git a/packages/gcc-linaro/6.3-2017.05/872-xtensa-Fix-PR-target-78603.patch b/packages/gcc-linaro/6.3-2017.05/872-xtensa-Fix-PR-target-78603.patch deleted file mode 100644 index 669097c4..00000000 --- a/packages/gcc-linaro/6.3-2017.05/872-xtensa-Fix-PR-target-78603.patch +++ /dev/null @@ -1,35 +0,0 @@ -From a568f3a84ff41ca272301a5fcf31071143e97e0f Mon Sep 17 00:00:00 2001 -From: Max Filippov <jcmvbkbc@gmail.com> -Date: Tue, 29 Nov 2016 13:09:17 -0800 -Subject: [PATCH] xtensa: Fix PR target/78603 - -2016-11-29 Max Filippov <jcmvbkbc@gmail.com> -gcc/ - * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero - overhead loop start between a call and its CALL_ARG_LOCATION - note. - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - gcc/config/xtensa/xtensa.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index e49f784..70f698a 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -4158,7 +4158,10 @@ hwloop_optimize (hwloop_info loop) - entry_after = BB_END (entry_bb); - while (DEBUG_INSN_P (entry_after) - || (NOTE_P (entry_after) -- && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK)) -+ && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK -+ /* Make sure we don't split a call and its corresponding -+ CALL_ARG_LOCATION note. */ -+ && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION)) - entry_after = PREV_INSN (entry_after); - - emit_insn_after (seq, entry_after); --- -2.1.4 - diff --git a/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch b/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch deleted file mode 100644 index a5b06248..00000000 --- a/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch +++ /dev/null @@ -1,74 +0,0 @@ -From a3d07c8a2a9564b57ebcae8463c1541a37c97c34 Mon Sep 17 00:00:00 2001 -From: Max Filippov <jcmvbkbc@gmail.com> -Date: Sun, 28 May 2017 19:56:56 -0700 -Subject: [PATCH] gcc: xtensa: fix fprintf format specifiers - -HOST_WIDE_INT may not be long as assumed in print_operand and -xtensa_emit_call. Use HOST_WIDE_INT_PRINT_DEC/HOST_WIDE_INT_PRINT_HEX -format strings instead of %ld/0x%lx. This fixes incorrect assembly code -generation by the compiler running on armhf host. - -2017-05-28 Max Filippov <jcmvbkbc@gmail.com> -gcc/ - * config/xtensa/xtensa.c (xtensa_emit_call): Use - HOST_WIDE_INT_PRINT_HEX instead of 0x%lx format string. - (print_operand): Use HOST_WIDE_INT_PRINT_DEC instead of %ld - format string. - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - gcc/config/xtensa/xtensa.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index 70f698a..2bdf5cc 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -1776,7 +1776,8 @@ xtensa_emit_call (int callop, rtx *operands) - rtx tgt = operands[callop]; - - if (GET_CODE (tgt) == CONST_INT) -- sprintf (result, "call%d\t0x%lx", WINDOW_SIZE, INTVAL (tgt)); -+ sprintf (result, "call%d\t" HOST_WIDE_INT_PRINT_HEX, -+ WINDOW_SIZE, INTVAL (tgt)); - else if (register_operand (tgt, VOIDmode)) - sprintf (result, "callx%d\t%%%d", WINDOW_SIZE, callop); - else -@@ -2347,14 +2348,14 @@ print_operand (FILE *file, rtx x, int letter) - - case 'L': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", (32 - INTVAL (x)) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, (32 - INTVAL (x)) & 0x1f); - else - output_operand_lossage ("invalid %%L value"); - break; - - case 'R': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x) & 0x1f); - else - output_operand_lossage ("invalid %%R value"); - break; -@@ -2368,7 +2369,7 @@ print_operand (FILE *file, rtx x, int letter) - - case 'd': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_operand_lossage ("invalid %%d value"); - break; -@@ -2433,7 +2434,7 @@ print_operand (FILE *file, rtx x, int letter) - else if (GET_CODE (x) == MEM) - output_address (GET_MODE (x), XEXP (x, 0)); - else if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_addr_const (file, x); - } --- -2.1.4 - diff --git a/packages/gcc-linaro/6.3-2017.05/100-uclibc-conf.patch b/packages/gcc-linaro/6.4-2017.08/100-uclibc-conf.patch index 73d1f0d3..73d1f0d3 100644 --- a/packages/gcc-linaro/6.3-2017.05/100-uclibc-conf.patch +++ b/packages/gcc-linaro/6.4-2017.08/100-uclibc-conf.patch diff --git a/packages/gcc-linaro/6.3-2017.05/1000-libtool-leave-framework-alone.patch b/packages/gcc-linaro/6.4-2017.08/1000-libtool-leave-framework-alone.patch index bce09eb7..bce09eb7 100644 --- a/packages/gcc-linaro/6.3-2017.05/1000-libtool-leave-framework-alone.patch +++ b/packages/gcc-linaro/6.4-2017.08/1000-libtool-leave-framework-alone.patch diff --git a/packages/gcc-linaro/6.3-2017.05/301-missing-execinfo_h.patch b/packages/gcc-linaro/6.4-2017.08/301-missing-execinfo_h.patch index 2d0e7baa..2d0e7baa 100644 --- a/packages/gcc-linaro/6.3-2017.05/301-missing-execinfo_h.patch +++ b/packages/gcc-linaro/6.4-2017.08/301-missing-execinfo_h.patch diff --git a/packages/gcc-linaro/6.3-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch b/packages/gcc-linaro/6.4-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch index d8986d5f..d8986d5f 100644 --- a/packages/gcc-linaro/6.3-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch +++ b/packages/gcc-linaro/6.4-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch diff --git a/packages/gcc-linaro/6.3-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc-linaro/6.4-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch index 12ef48ee..12ef48ee 100644 --- a/packages/gcc-linaro/6.3-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch +++ b/packages/gcc-linaro/6.4-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch diff --git a/packages/gcc-linaro/6.3-2017.05/810-arm-softfloat-libgcc.patch b/packages/gcc-linaro/6.4-2017.08/810-arm-softfloat-libgcc.patch index 5efa7fd1..5efa7fd1 100644 --- a/packages/gcc-linaro/6.3-2017.05/810-arm-softfloat-libgcc.patch +++ b/packages/gcc-linaro/6.4-2017.08/810-arm-softfloat-libgcc.patch diff --git a/packages/gcc-linaro/6.3-2017.05/830-arm_unbreak_armv4t.patch b/packages/gcc-linaro/6.4-2017.08/830-arm_unbreak_armv4t.patch index b7300591..b7300591 100644 --- a/packages/gcc-linaro/6.3-2017.05/830-arm_unbreak_armv4t.patch +++ b/packages/gcc-linaro/6.4-2017.08/830-arm_unbreak_armv4t.patch diff --git a/packages/gcc-linaro/6.3-2017.05/860-cilk-wchar.patch b/packages/gcc-linaro/6.4-2017.08/860-cilk-wchar.patch index 1d9916f5..1d9916f5 100644 --- a/packages/gcc-linaro/6.3-2017.05/860-cilk-wchar.patch +++ b/packages/gcc-linaro/6.4-2017.08/860-cilk-wchar.patch diff --git a/packages/gcc-linaro/6.4-2017.08/870-xtensa-fix-PR-target-82181.patch b/packages/gcc-linaro/6.4-2017.08/870-xtensa-fix-PR-target-82181.patch new file mode 100644 index 00000000..5fe38414 --- /dev/null +++ b/packages/gcc-linaro/6.4-2017.08/870-xtensa-fix-PR-target-82181.patch @@ -0,0 +1,31 @@ +From 3bc2ee6886f1619bc6a2257a0775142526b1a57a Mon Sep 17 00:00:00 2001 +From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Mon, 11 Sep 2017 21:53:38 +0000 +Subject: [PATCH] xtensa: fix PR target/82181 + +2017-09-11 Max Filippov <jcmvbkbc@gmail.com> +gcc/ + Backport from mainline + * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both + words of DImode object are reachable by xtensa_uimm8x4 access. + +Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> +--- + gcc/config/xtensa/xtensa.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 2bdf5ccef979..92fdeb08046d 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -601,6 +601,7 @@ xtensa_mem_offset (unsigned v, machine_mode mode) + case HImode: + return xtensa_uimm8x2 (v); + ++ case DImode: + case DFmode: + return (xtensa_uimm8x4 (v) && xtensa_uimm8x4 (v + 4)); + +-- +2.1.4 + diff --git a/packages/gcc-linaro/6.3-2017.05/890-fix-m68k-compile.patch b/packages/gcc-linaro/6.4-2017.08/890-fix-m68k-compile.patch index 6e63de0c..6e63de0c 100644 --- a/packages/gcc-linaro/6.3-2017.05/890-fix-m68k-compile.patch +++ b/packages/gcc-linaro/6.4-2017.08/890-fix-m68k-compile.patch diff --git a/packages/gcc-linaro/6.3-2017.05/891-fix-m68k-uclinux.patch b/packages/gcc-linaro/6.4-2017.08/891-fix-m68k-uclinux.patch index 4e186bd3..4e186bd3 100644 --- a/packages/gcc-linaro/6.3-2017.05/891-fix-m68k-uclinux.patch +++ b/packages/gcc-linaro/6.4-2017.08/891-fix-m68k-uclinux.patch diff --git a/packages/gcc-linaro/6.3-2017.05/892-libgcc-mkmap-symver-support-skip_underscore.patch b/packages/gcc-linaro/6.4-2017.08/892-libgcc-mkmap-symver-support-skip_underscore.patch index 73ee6c5f..73ee6c5f 100644 --- a/packages/gcc-linaro/6.3-2017.05/892-libgcc-mkmap-symver-support-skip_underscore.patch +++ b/packages/gcc-linaro/6.4-2017.08/892-libgcc-mkmap-symver-support-skip_underscore.patch diff --git a/packages/gcc-linaro/6.3-2017.05/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch b/packages/gcc-linaro/6.4-2017.08/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch index 454295d0..454295d0 100644 --- a/packages/gcc-linaro/6.3-2017.05/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch +++ b/packages/gcc-linaro/6.4-2017.08/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch diff --git a/packages/gcc-linaro/6.3-2017.05/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch b/packages/gcc-linaro/6.4-2017.08/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch index ce49de7e..ce49de7e 100644 --- a/packages/gcc-linaro/6.3-2017.05/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch +++ b/packages/gcc-linaro/6.4-2017.08/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch diff --git a/packages/gcc-linaro/6.3-2017.05/895-bfin-define-REENTRANT.patch b/packages/gcc-linaro/6.4-2017.08/895-bfin-define-REENTRANT.patch index e2828a51..e2828a51 100644 --- a/packages/gcc-linaro/6.3-2017.05/895-bfin-define-REENTRANT.patch +++ b/packages/gcc-linaro/6.4-2017.08/895-bfin-define-REENTRANT.patch diff --git a/packages/gcc-linaro/6.3-2017.05/900-libgfortran-missing-include.patch b/packages/gcc-linaro/6.4-2017.08/900-libgfortran-missing-include.patch index 1f474696..1f474696 100644 --- a/packages/gcc-linaro/6.3-2017.05/900-libgfortran-missing-include.patch +++ b/packages/gcc-linaro/6.4-2017.08/900-libgfortran-missing-include.patch diff --git a/packages/gcc-linaro/6.3-2017.05/910-nios2-bad-multilib-default.patch b/packages/gcc-linaro/6.4-2017.08/910-nios2-bad-multilib-default.patch index 61989e56..61989e56 100644 --- a/packages/gcc-linaro/6.3-2017.05/910-nios2-bad-multilib-default.patch +++ b/packages/gcc-linaro/6.4-2017.08/910-nios2-bad-multilib-default.patch diff --git a/packages/gcc-linaro/6.3-2017.05/930-libgcc-disable-split-stack-nothreads.patch b/packages/gcc-linaro/6.4-2017.08/930-libgcc-disable-split-stack-nothreads.patch index 07f9a739..07f9a739 100644 --- a/packages/gcc-linaro/6.3-2017.05/930-libgcc-disable-split-stack-nothreads.patch +++ b/packages/gcc-linaro/6.4-2017.08/930-libgcc-disable-split-stack-nothreads.patch diff --git a/packages/gcc-linaro/6.3-2017.05/940-uclinux-enable-threads.patch b/packages/gcc-linaro/6.4-2017.08/940-uclinux-enable-threads.patch index 490a55b4..490a55b4 100644 --- a/packages/gcc-linaro/6.3-2017.05/940-uclinux-enable-threads.patch +++ b/packages/gcc-linaro/6.4-2017.08/940-uclinux-enable-threads.patch diff --git a/packages/gcc-linaro/6.3-2017.05/951-bionic-ndk.patch b/packages/gcc-linaro/6.4-2017.08/951-bionic-ndk.patch index 59c50a89..59c50a89 100644 --- a/packages/gcc-linaro/6.3-2017.05/951-bionic-ndk.patch +++ b/packages/gcc-linaro/6.4-2017.08/951-bionic-ndk.patch diff --git a/packages/gcc-linaro/6.3-2017.05/952-bionic-errno.patch b/packages/gcc-linaro/6.4-2017.08/952-bionic-errno.patch index 91f6ca34..91f6ca34 100644 --- a/packages/gcc-linaro/6.3-2017.05/952-bionic-errno.patch +++ b/packages/gcc-linaro/6.4-2017.08/952-bionic-errno.patch diff --git a/packages/gcc-linaro/6.3-2017.05/970-crystax.patch b/packages/gcc-linaro/6.4-2017.08/970-crystax.patch index e3109cc8..30b06d51 100644 --- a/packages/gcc-linaro/6.3-2017.05/970-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/970-crystax.patch @@ -158,8 +158,8 @@ index 47171b996..eb22d1181 100644 (match_operand:SI 2 "const_int_operand" "") ; total range (match_operand:SI 3 "" "") ; table label (match_operand:SI 4 "" "")] ; Out of range label -- "TARGET_32BIT || optimize_size || flag_pic" -+ "TARGET_32BIT || ((optimize_size || flag_pic) && !inline_thumb1_jump_table)" +- "(TARGET_32BIT || optimize_size || flag_pic) && !target_pure_code" ++ "(TARGET_32BIT || ((optimize_size || flag_pic) && !inline_thumb1_jump_table)) && !target_pure_code" " { enum insn_code code; @@ -202,13 +202,14 @@ index 77f30554d..32158ed65 100644 #endif /* The ARM uses @ are a comment character so we need to redefine -@@ -104,7 +106,8 @@ +@@ -104,8 +106,8 @@ the code more efficient, but for Thumb-1 it's better to put them out of band unless we are generating compressed tables. */ #define JUMP_TABLES_IN_TEXT_SECTION \ -- (TARGET_32BIT || (TARGET_THUMB && (optimize_size || flag_pic))) -+ (TARGET_32BIT || (TARGET_THUMB && !inline_thumb1_jump_table \ -+ && (optimize_size || flag_pic))) +- ((TARGET_32BIT || (TARGET_THUMB && (optimize_size || flag_pic))) \ +- && !target_pure_code) ++ ((TARGET_32BIT || (TARGET_THUMB && !inline_thumb1_jump_table \ ++ && (optimize_size || flag_pic))) && !target_pure_code) #ifndef LINK_SPEC #define LINK_SPEC "%{mbig-endian:-EB} %{mlittle-endian:-EL} -X" diff --git a/packages/gcc-linaro/6.3-2017.05/971-crystax.patch b/packages/gcc-linaro/6.4-2017.08/971-crystax.patch index 748a3812..748a3812 100644 --- a/packages/gcc-linaro/6.3-2017.05/971-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/971-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/972-crystax.patch b/packages/gcc-linaro/6.4-2017.08/972-crystax.patch index b9077bef..b9077bef 100644 --- a/packages/gcc-linaro/6.3-2017.05/972-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/972-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/973-crystax.patch b/packages/gcc-linaro/6.4-2017.08/973-crystax.patch index b96ece33..b96ece33 100644 --- a/packages/gcc-linaro/6.3-2017.05/973-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/973-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/974-crystax.patch b/packages/gcc-linaro/6.4-2017.08/974-crystax.patch index 9db4f545..9db4f545 100644 --- a/packages/gcc-linaro/6.3-2017.05/974-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/974-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/975-crystax.patch b/packages/gcc-linaro/6.4-2017.08/975-crystax.patch index 9efc2a48..9efc2a48 100644 --- a/packages/gcc-linaro/6.3-2017.05/975-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/975-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/976-crystax.patch b/packages/gcc-linaro/6.4-2017.08/976-crystax.patch index 790d4a9d..790d4a9d 100644 --- a/packages/gcc-linaro/6.3-2017.05/976-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/976-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/977-crystax.patch b/packages/gcc-linaro/6.4-2017.08/977-crystax.patch index 0211d728..0211d728 100644 --- a/packages/gcc-linaro/6.3-2017.05/977-crystax.patch +++ b/packages/gcc-linaro/6.4-2017.08/977-crystax.patch diff --git a/packages/gcc-linaro/6.3-2017.05/version.desc b/packages/gcc-linaro/6.4-2017.08/version.desc index e69de29b..e69de29b 100644 --- a/packages/gcc-linaro/6.3-2017.05/version.desc +++ b/packages/gcc-linaro/6.4-2017.08/version.desc diff --git a/packages/gcc-linaro/7.1-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch b/packages/gcc-linaro/7.1-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch deleted file mode 100644 index c5e95d9f..00000000 --- a/packages/gcc-linaro/7.1-2017.05/0001-Use-ucontext_t-not-struct-ucontext-in-linux-unwind.h.patch +++ /dev/null @@ -1,203 +0,0 @@ -From d720a7b5b2f72e3d2c7bacc7a0cb87018f21f35d Mon Sep 17 00:00:00 2001 -From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Tue, 4 Jul 2017 10:22:56 +0000 -Subject: [PATCH] Use ucontext_t not struct ucontext in linux-unwind.h files. - -Current glibc no longer gives the ucontext_t type the tag struct -ucontext, to conform with POSIX namespace rules. This requires -various linux-unwind.h files in libgcc, that were previously using -struct ucontext, to be fixed to use ucontext_t instead. This is -similar to the removal of the struct siginfo tag from siginfo_t some -years ago. - -This patch changes those files to use ucontext_t instead. As the -standard name that should be unconditionally safe, so this is not -restricted to architectures supported by glibc, or conditioned on the -glibc version. - -Tested compilation together with current glibc with glibc's -build-many-glibcs.py. - - * config/aarch64/linux-unwind.h (aarch64_fallback_frame_state), - config/alpha/linux-unwind.h (alpha_fallback_frame_state), - config/bfin/linux-unwind.h (bfin_fallback_frame_state), - config/i386/linux-unwind.h (x86_64_fallback_frame_state, - x86_fallback_frame_state), config/m68k/linux-unwind.h (struct - uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext), - config/pa/linux-unwind.h (pa32_fallback_frame_state), - config/riscv/linux-unwind.h (riscv_fallback_frame_state), - config/sh/linux-unwind.h (sh_fallback_frame_state), - config/tilepro/linux-unwind.h (tile_fallback_frame_state), - config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use - ucontext_t instead of struct ucontext. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@249956 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - libgcc/config/aarch64/linux-unwind.h | 2 +- - libgcc/config/alpha/linux-unwind.h | 2 +- - libgcc/config/bfin/linux-unwind.h | 2 +- - libgcc/config/i386/linux-unwind.h | 4 ++-- - libgcc/config/m68k/linux-unwind.h | 2 +- - libgcc/config/nios2/linux-unwind.h | 2 +- - libgcc/config/pa/linux-unwind.h | 2 +- - libgcc/config/riscv/linux-unwind.h | 2 +- - libgcc/config/sh/linux-unwind.h | 2 +- - libgcc/config/tilepro/linux-unwind.h | 2 +- - libgcc/config/xtensa/linux-unwind.h | 2 +- - 11 files changed, 12 insertions(+), 12 deletions(-) - -diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h -index d5d6980442f..d46d5f53be3 100644 ---- a/libgcc/config/aarch64/linux-unwind.h -+++ b/libgcc/config/aarch64/linux-unwind.h -@@ -55,7 +55,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe - { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - }; - - struct rt_sigframe *rt_; -diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h -index a91a5f4fe26..7202516581d 100644 ---- a/libgcc/config/alpha/linux-unwind.h -+++ b/libgcc/config/alpha/linux-unwind.h -@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - sc = &rt_->uc.uc_mcontext; - } -diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h -index 9412c7652b8..37e9feb6965 100644 ---- a/libgcc/config/bfin/linux-unwind.h -+++ b/libgcc/config/bfin/linux-unwind.h -@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, - void *puc; - char retcode[8]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - - /* The void * cast is necessary to avoid an aliasing warning. -diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h -index b1d5040a687..2009ad72260 100644 ---- a/libgcc/config/i386/linux-unwind.h -+++ b/libgcc/config/i386/linux-unwind.h -@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context, - if (*(unsigned char *)(pc+0) == 0x48 - && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL) - { -- struct ucontext *uc_ = context->cfa; -+ ucontext_t *uc_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem - because it does not alias anything. */ -@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, - siginfo_t *pinfo; - void *puc; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/m68k/linux-unwind.h b/libgcc/config/m68k/linux-unwind.h -index 82c7a297a6d..9ea39d454aa 100644 ---- a/libgcc/config/m68k/linux-unwind.h -+++ b/libgcc/config/m68k/linux-unwind.h -@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - /* <sys/ucontext.h> is unfortunately broken right now. */ - struct uw_ucontext { - unsigned long uc_flags; -- struct ucontext *uc_link; -+ ucontext_t *uc_link; - stack_t uc_stack; - mcontext_t uc_mcontext; - unsigned long uc_filler[80]; -diff --git a/libgcc/config/nios2/linux-unwind.h b/libgcc/config/nios2/linux-unwind.h -index ae82efd6de6..204359d7b92 100644 ---- a/libgcc/config/nios2/linux-unwind.h -+++ b/libgcc/config/nios2/linux-unwind.h -@@ -38,7 +38,7 @@ struct nios2_mcontext { - - struct nios2_ucontext { - unsigned long uc_flags; -- struct ucontext *uc_link; -+ ucontext_t *uc_link; - stack_t uc_stack; - struct nios2_mcontext uc_mcontext; - sigset_t uc_sigmask; /* mask last for extensibility */ -diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h -index 580c18dad69..c2c3409bcc1 100644 ---- a/libgcc/config/pa/linux-unwind.h -+++ b/libgcc/config/pa/linux-unwind.h -@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, - struct sigcontext *sc; - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *frame; - - /* rt_sigreturn trampoline: -diff --git a/libgcc/config/riscv/linux-unwind.h b/libgcc/config/riscv/linux-unwind.h -index a051a2869d4..1c8aeff7ef0 100644 ---- a/libgcc/config/riscv/linux-unwind.h -+++ b/libgcc/config/riscv/linux-unwind.h -@@ -42,7 +42,7 @@ riscv_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe - { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - }; - - struct rt_sigframe *rt_; -diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h -index 1038caeb5c3..a8c98220282 100644 ---- a/libgcc/config/sh/linux-unwind.h -+++ b/libgcc/config/sh/linux-unwind.h -@@ -82,7 +82,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h -index a8dc4405715..dba3b410279 100644 ---- a/libgcc/config/tilepro/linux-unwind.h -+++ b/libgcc/config/tilepro/linux-unwind.h -@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe { - unsigned char save_area[C_ABI_SAVE_AREA_SIZE]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_; - - /* Return if this is not a signal handler. */ -diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h -index 67c272820d0..2cb9eb1f739 100644 ---- a/libgcc/config/xtensa/linux-unwind.h -+++ b/libgcc/config/xtensa/linux-unwind.h -@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, - - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_; - - /* movi a2, __NR_rt_sigreturn; syscall */ --- -2.14.1 - diff --git a/packages/gcc-linaro/7.1-2017.05/111-alpha-bad-eh_frame.patch b/packages/gcc-linaro/7.1-2017.05/111-alpha-bad-eh_frame.patch deleted file mode 100644 index 93f6e943..00000000 --- a/packages/gcc-linaro/7.1-2017.05/111-alpha-bad-eh_frame.patch +++ /dev/null @@ -1,13 +0,0 @@ -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80037 - -diff --git a/libgcc/config/alpha/t-alpha b/libgcc/config/alpha/t-alpha -index 0b6ffb1..0c2f840 100644 ---- a/libgcc/config/alpha/t-alpha -+++ b/libgcc/config/alpha/t-alpha -@@ -1,2 +1,6 @@ - # This is a support routine for longlong.h, used by libgcc2.c. - LIB2ADD += $(srcdir)/config/alpha/qrnnd.S -+ -+# When GAS-generated unwind tables are created, they get created -+# after the __FRAME_END__ terminator, which causes an ld error. -+CRTSTUFF_T_CFLAGS = -fno-unwind-tables diff --git a/packages/gcc-linaro/7.1-2017.05/870-gcc-xtensa-fix-fprintf-format-specifiers.patch b/packages/gcc-linaro/7.1-2017.05/870-gcc-xtensa-fix-fprintf-format-specifiers.patch deleted file mode 100644 index cf21584f..00000000 --- a/packages/gcc-linaro/7.1-2017.05/870-gcc-xtensa-fix-fprintf-format-specifiers.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 06689e5973647f5c65d1984b164f2531f5418d7a Mon Sep 17 00:00:00 2001 -From: Max Filippov <jcmvbkbc@gmail.com> -Date: Sun, 28 May 2017 19:56:56 -0700 -Subject: [PATCH] gcc: xtensa: fix fprintf format specifiers - -HOST_WIDE_INT may not be long as assumed in print_operand and -xtensa_emit_call. Use HOST_WIDE_INT_PRINT_DEC/HOST_WIDE_INT_PRINT_HEX -format strings instead of %ld/0x%lx. This fixes incorrect assembly code -generation by the compiler running on armhf host. - -2017-05-28 Max Filippov <jcmvbkbc@gmail.com> -gcc/ - * config/xtensa/xtensa.c (xtensa_emit_call): Use - HOST_WIDE_INT_PRINT_HEX instead of 0x%lx format string. - (print_operand): Use HOST_WIDE_INT_PRINT_DEC instead of %ld - format string. - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - gcc/config/xtensa/xtensa.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index 0181dde..25e4a28 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -1780,7 +1780,8 @@ xtensa_emit_call (int callop, rtx *operands) - rtx tgt = operands[callop]; - - if (GET_CODE (tgt) == CONST_INT) -- sprintf (result, "call%d\t0x%lx", WINDOW_SIZE, INTVAL (tgt)); -+ sprintf (result, "call%d\t" HOST_WIDE_INT_PRINT_HEX, -+ WINDOW_SIZE, INTVAL (tgt)); - else if (register_operand (tgt, VOIDmode)) - sprintf (result, "callx%d\t%%%d", WINDOW_SIZE, callop); - else -@@ -2351,14 +2352,14 @@ print_operand (FILE *file, rtx x, int letter) - - case 'L': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", (32 - INTVAL (x)) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, (32 - INTVAL (x)) & 0x1f); - else - output_operand_lossage ("invalid %%L value"); - break; - - case 'R': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x) & 0x1f); - else - output_operand_lossage ("invalid %%R value"); - break; -@@ -2372,7 +2373,7 @@ print_operand (FILE *file, rtx x, int letter) - - case 'd': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_operand_lossage ("invalid %%d value"); - break; -@@ -2437,7 +2438,7 @@ print_operand (FILE *file, rtx x, int letter) - else if (GET_CODE (x) == MEM) - output_address (GET_MODE (x), XEXP (x, 0)); - else if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_addr_const (file, x); - } --- -2.1.4 - diff --git a/packages/gcc-linaro/7.1-2017.05/100-uclibc-conf.patch b/packages/gcc-linaro/7.1-2017.08/100-uclibc-conf.patch index 73d1f0d3..73d1f0d3 100644 --- a/packages/gcc-linaro/7.1-2017.05/100-uclibc-conf.patch +++ b/packages/gcc-linaro/7.1-2017.08/100-uclibc-conf.patch diff --git a/packages/gcc-linaro/7.1-2017.05/1000-libtool-leave-framework-alone.patch b/packages/gcc-linaro/7.1-2017.08/1000-libtool-leave-framework-alone.patch index bce09eb7..bce09eb7 100644 --- a/packages/gcc-linaro/7.1-2017.05/1000-libtool-leave-framework-alone.patch +++ b/packages/gcc-linaro/7.1-2017.08/1000-libtool-leave-framework-alone.patch diff --git a/packages/gcc-linaro/7.1-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch b/packages/gcc-linaro/7.1-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch index d8986d5f..d8986d5f 100644 --- a/packages/gcc-linaro/7.1-2017.05/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch +++ b/packages/gcc-linaro/7.1-2017.08/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch diff --git a/packages/gcc-linaro/7.1-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc-linaro/7.1-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch index 12ef48ee..12ef48ee 100644 --- a/packages/gcc-linaro/7.1-2017.05/380-gcc-plugin-POSIX-include-sys-select-h.patch +++ b/packages/gcc-linaro/7.1-2017.08/380-gcc-plugin-POSIX-include-sys-select-h.patch diff --git a/packages/gcc-linaro/7.1-2017.05/810-arm-softfloat-libgcc.patch b/packages/gcc-linaro/7.1-2017.08/810-arm-softfloat-libgcc.patch index 5efa7fd1..5efa7fd1 100644 --- a/packages/gcc-linaro/7.1-2017.05/810-arm-softfloat-libgcc.patch +++ b/packages/gcc-linaro/7.1-2017.08/810-arm-softfloat-libgcc.patch diff --git a/packages/gcc-linaro/7.1-2017.05/860-cilk-wchar.patch b/packages/gcc-linaro/7.1-2017.08/860-cilk-wchar.patch index 1d9916f5..1d9916f5 100644 --- a/packages/gcc-linaro/7.1-2017.05/860-cilk-wchar.patch +++ b/packages/gcc-linaro/7.1-2017.08/860-cilk-wchar.patch diff --git a/packages/gcc-linaro/7.1-2017.08/870-xtensa-fix-PR-target-82181.patch b/packages/gcc-linaro/7.1-2017.08/870-xtensa-fix-PR-target-82181.patch new file mode 100644 index 00000000..7ac7cd95 --- /dev/null +++ b/packages/gcc-linaro/7.1-2017.08/870-xtensa-fix-PR-target-82181.patch @@ -0,0 +1,31 @@ +From 3ed0c49a8d52e88648c7bb9f21a204b23595a6a9 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Mon, 11 Sep 2017 21:53:38 +0000 +Subject: [PATCH] xtensa: fix PR target/82181 + +2017-09-11 Max Filippov <jcmvbkbc@gmail.com> +gcc/ + Backport from mainline + * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both + words of DImode object are reachable by xtensa_uimm8x4 access. + +Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> +--- + gcc/config/xtensa/xtensa.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 25e4a2894c3b..8c404187107b 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -605,6 +605,7 @@ xtensa_mem_offset (unsigned v, machine_mode mode) + case HImode: + return xtensa_uimm8x2 (v); + ++ case DImode: + case DFmode: + return (xtensa_uimm8x4 (v) && xtensa_uimm8x4 (v + 4)); + +-- +2.1.4 + diff --git a/packages/gcc-linaro/7.1-2017.05/891-fix-m68k-uclinux.patch b/packages/gcc-linaro/7.1-2017.08/891-fix-m68k-uclinux.patch index 4e186bd3..4e186bd3 100644 --- a/packages/gcc-linaro/7.1-2017.05/891-fix-m68k-uclinux.patch +++ b/packages/gcc-linaro/7.1-2017.08/891-fix-m68k-uclinux.patch diff --git a/packages/gcc-linaro/7.1-2017.05/900-libgfortran-missing-include.patch b/packages/gcc-linaro/7.1-2017.08/900-libgfortran-missing-include.patch index 1f474696..1f474696 100644 --- a/packages/gcc-linaro/7.1-2017.05/900-libgfortran-missing-include.patch +++ b/packages/gcc-linaro/7.1-2017.08/900-libgfortran-missing-include.patch diff --git a/packages/gcc-linaro/7.1-2017.05/910-nios2-bad-multilib-default.patch b/packages/gcc-linaro/7.1-2017.08/910-nios2-bad-multilib-default.patch index 61989e56..61989e56 100644 --- a/packages/gcc-linaro/7.1-2017.05/910-nios2-bad-multilib-default.patch +++ b/packages/gcc-linaro/7.1-2017.08/910-nios2-bad-multilib-default.patch diff --git a/packages/gcc-linaro/7.1-2017.05/930-libgcc-disable-split-stack-nothreads.patch b/packages/gcc-linaro/7.1-2017.08/930-libgcc-disable-split-stack-nothreads.patch index 07f9a739..07f9a739 100644 --- a/packages/gcc-linaro/7.1-2017.05/930-libgcc-disable-split-stack-nothreads.patch +++ b/packages/gcc-linaro/7.1-2017.08/930-libgcc-disable-split-stack-nothreads.patch diff --git a/packages/gcc-linaro/7.1-2017.05/951-bionic-ndk.patch b/packages/gcc-linaro/7.1-2017.08/951-bionic-ndk.patch index 59c50a89..59c50a89 100644 --- a/packages/gcc-linaro/7.1-2017.05/951-bionic-ndk.patch +++ b/packages/gcc-linaro/7.1-2017.08/951-bionic-ndk.patch diff --git a/packages/gcc-linaro/7.1-2017.05/952-bionic-errno.patch b/packages/gcc-linaro/7.1-2017.08/952-bionic-errno.patch index 91f6ca34..91f6ca34 100644 --- a/packages/gcc-linaro/7.1-2017.05/952-bionic-errno.patch +++ b/packages/gcc-linaro/7.1-2017.08/952-bionic-errno.patch diff --git a/packages/gcc-linaro/7.1-2017.05/970-crystax.patch b/packages/gcc-linaro/7.1-2017.08/970-crystax.patch index 7324d7fb..7324d7fb 100644 --- a/packages/gcc-linaro/7.1-2017.05/970-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/970-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/971-crystax.patch b/packages/gcc-linaro/7.1-2017.08/971-crystax.patch index 748a3812..748a3812 100644 --- a/packages/gcc-linaro/7.1-2017.05/971-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/971-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/972-crystax.patch b/packages/gcc-linaro/7.1-2017.08/972-crystax.patch index b9077bef..b9077bef 100644 --- a/packages/gcc-linaro/7.1-2017.05/972-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/972-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/973-crystax.patch b/packages/gcc-linaro/7.1-2017.08/973-crystax.patch index b96ece33..b96ece33 100644 --- a/packages/gcc-linaro/7.1-2017.05/973-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/973-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/974-crystax.patch b/packages/gcc-linaro/7.1-2017.08/974-crystax.patch index 9db4f545..9db4f545 100644 --- a/packages/gcc-linaro/7.1-2017.05/974-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/974-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/975-crystax.patch b/packages/gcc-linaro/7.1-2017.08/975-crystax.patch index 9efc2a48..9efc2a48 100644 --- a/packages/gcc-linaro/7.1-2017.05/975-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/975-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/976-crystax.patch b/packages/gcc-linaro/7.1-2017.08/976-crystax.patch index 790d4a9d..790d4a9d 100644 --- a/packages/gcc-linaro/7.1-2017.05/976-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/976-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/977-crystax.patch b/packages/gcc-linaro/7.1-2017.08/977-crystax.patch index 0211d728..0211d728 100644 --- a/packages/gcc-linaro/7.1-2017.05/977-crystax.patch +++ b/packages/gcc-linaro/7.1-2017.08/977-crystax.patch diff --git a/packages/gcc-linaro/7.1-2017.05/version.desc b/packages/gcc-linaro/7.1-2017.08/version.desc index e69de29b..e69de29b 100644 --- a/packages/gcc-linaro/7.1-2017.05/version.desc +++ b/packages/gcc-linaro/7.1-2017.08/version.desc |