gcc6: Upgrade to 6.4
Cherry-picked from oe-core master 7874fa86cb583fe6a178b95ead09430486197197 (From OE-Core rev: 4a9eee06a6d15a23f58bc981c83138964702b735) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
fbf0a74537
commit
02b66069c5
|
@ -22,7 +22,7 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "${TCLIBC}-initial"
|
|||
PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-initial ?= "nativesdk-glibc-initial"
|
||||
PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
|
||||
|
||||
GCCVERSION ?= "6.3%"
|
||||
GCCVERSION ?= "6.4%"
|
||||
SDKGCCVERSION ?= "${GCCVERSION}"
|
||||
BINUVERSION ?= "2.28%"
|
||||
GDBVERSION ?= "7.12%"
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
From 8db2cf6353c13f2a84cbe49b689654897906c499 Mon Sep 17 00:00:00 2001
|
||||
From: kyukhin <kyukhin@138bc75d-0d04-0410-961f-82ee72b054a4>
|
||||
Date: Sat, 3 Sep 2016 10:57:05 +0000
|
||||
Subject: [PATCH] gcc/ * ubsan.c (ubsan_use_new_style_p): Fix check for empty
|
||||
string.
|
||||
|
||||
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239971 138bc75d-0d04-0410-961f-82ee72b054a4
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
|
||||
|
||||
---
|
||||
gcc/ubsan.c | 2 +-
|
||||
2 files changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
Index: gcc-6.3.0/gcc/ubsan.c
|
||||
===================================================================
|
||||
--- gcc-6.3.0.orig/gcc/ubsan.c
|
||||
+++ gcc-6.3.0/gcc/ubsan.c
|
||||
@@ -1471,7 +1471,7 @@ ubsan_use_new_style_p (location_t loc)
|
||||
|
||||
expanded_location xloc = expand_location (loc);
|
||||
if (xloc.file == NULL || strncmp (xloc.file, "\1", 2) == 0
|
||||
- || xloc.file == '\0' || xloc.file[0] == '\xff'
|
||||
+ || xloc.file[0] == '\0' || xloc.file[0] == '\xff'
|
||||
|| xloc.file[1] == '\xff')
|
||||
return false;
|
||||
|
|
@ -2,13 +2,13 @@ require gcc-common.inc
|
|||
|
||||
# Third digit in PV should be incremented after a minor release
|
||||
|
||||
PV = "6.3.0"
|
||||
PV = "6.4.0"
|
||||
|
||||
# BINV should be incremented to a revision after a minor gcc release
|
||||
|
||||
BINV = "6.3.0"
|
||||
BINV = "6.4.0"
|
||||
|
||||
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-6.3:${FILE_DIRNAME}/gcc-6.3/backport:"
|
||||
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-6.4:${FILE_DIRNAME}/gcc-6.4/backport:"
|
||||
|
||||
DEPENDS =+ "mpfr gmp libmpc zlib"
|
||||
NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
|
||||
|
@ -24,7 +24,7 @@ LIC_FILES_CHKSUM = "\
|
|||
"
|
||||
|
||||
|
||||
BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2"
|
||||
BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
|
||||
#SRCREV = "bd9a826d5448db11d29d2ec5884e7e679066f140"
|
||||
#BASEURI ?= "git://github.com/gcc-mirror/gcc;branch=gcc-6-branch;protocol=git"
|
||||
#BASEURI ?= "ftp://sourceware.org/pub/gcc/snapshots/6.2.0-RC-20160815/gcc-6.2.0-RC-20160815.tar.bz2"
|
||||
|
@ -86,10 +86,9 @@ SRC_URI = "\
|
|||
"
|
||||
BACKPORTS = "\
|
||||
file://CVE-2016-6131.patch \
|
||||
file://ubsan-fix-check-empty-string.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "677a7623c7ef6ab99881bc4e048debb6"
|
||||
SRC_URI[sha256sum] = "f06ae7f3f790fbf0f018f6d40e844451e6bc3b7bc96e128e63b09825c1f8b29f"
|
||||
SRC_URI[md5sum] = "11ba51a0cfb8471927f387c8895fe232"
|
||||
SRC_URI[sha256sum] = "850bf21eafdfe5cd5f6827148184c08c4a0852a37ccf36ce69855334d2c914d4"
|
||||
|
||||
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
|
||||
#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/git"
|
|
@ -31,7 +31,7 @@ gcc/Changelog:
|
|||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
Upstream-Status: Rejected
|
||||
Upstream-Status: Denied
|
||||
|
||||
gcc/config/i386/i386.c | 4 ++--
|
||||
libgcc/config/i386/cpuinfo.c | 6 +++---
|
|
@ -37,35 +37,10 @@ Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
|
|||
libiberty/testsuite/demangle-expected | 18 ++++++++
|
||||
3 files changed, 108 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
|
||||
index 240138f..adf1d72 100644
|
||||
--- a/libiberty/ChangeLog
|
||||
+++ b/libiberty/ChangeLog
|
||||
@@ -1,3 +1,20 @@
|
||||
+2016-08-04 Marcel Böhme <boehme.marcel@gmail.com>
|
||||
+
|
||||
+ PR c++/71696
|
||||
+ * cplus-dem.c: Prevent infinite recursion when there is a cycle
|
||||
+ in the referencing of remembered mangled types.
|
||||
+ (work_stuff): New stack to keep track of the remembered mangled
|
||||
+ types that are currently being processed.
|
||||
+ (push_processed_type): New method to push currently processed
|
||||
+ remembered type onto the stack.
|
||||
+ (pop_processed_type): New method to pop currently processed
|
||||
+ remembered type from the stack.
|
||||
+ (work_stuff_copy_to_from): Copy values of new variables.
|
||||
+ (delete_non_B_K_work_stuff): Free stack memory.
|
||||
+ (demangle_args): Push/Pop currently processed remembered type.
|
||||
+ (do_type): Do not demangle a cyclic reference and push/pop
|
||||
+ referenced remembered type.
|
||||
+
|
||||
2016-12-21 Release Manager
|
||||
|
||||
* GCC 6.3.0 released.
|
||||
diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c
|
||||
index 7514e57..f21e630 100644
|
||||
--- a/libiberty/cplus-dem.c
|
||||
+++ b/libiberty/cplus-dem.c
|
||||
Index: gcc-6.4.0/libiberty/cplus-dem.c
|
||||
===================================================================
|
||||
--- gcc-6.4.0.orig/libiberty/cplus-dem.c
|
||||
+++ gcc-6.4.0/libiberty/cplus-dem.c
|
||||
@@ -144,6 +144,9 @@ struct work_stuff
|
||||
string* previous_argument; /* The last function argument demangled. */
|
||||
int nrepeats; /* The number of times to repeat the previous
|
||||
|
@ -76,7 +51,7 @@ index 7514e57..f21e630 100644
|
|||
};
|
||||
|
||||
#define PRINT_ANSI_QUALIFIERS (work -> options & DMGL_ANSI)
|
||||
@@ -435,6 +438,10 @@ iterate_demangle_function (struct work_stuff *,
|
||||
@@ -435,6 +438,10 @@ iterate_demangle_function (struct work_s
|
||||
|
||||
static void remember_type (struct work_stuff *, const char *, int);
|
||||
|
||||
|
@ -87,7 +62,7 @@ index 7514e57..f21e630 100644
|
|||
static void remember_Btype (struct work_stuff *, const char *, int, int);
|
||||
|
||||
static int register_Btype (struct work_stuff *);
|
||||
@@ -1301,6 +1308,10 @@ work_stuff_copy_to_from (struct work_stuff *to, struct work_stuff *from)
|
||||
@@ -1301,6 +1308,10 @@ work_stuff_copy_to_from (struct work_stu
|
||||
memcpy (to->btypevec[i], from->btypevec[i], len);
|
||||
}
|
||||
|
||||
|
@ -98,7 +73,7 @@ index 7514e57..f21e630 100644
|
|||
if (from->ntmpl_args)
|
||||
to->tmpl_argvec = XNEWVEC (char *, from->ntmpl_args);
|
||||
|
||||
@@ -1329,11 +1340,17 @@ delete_non_B_K_work_stuff (struct work_stuff *work)
|
||||
@@ -1329,11 +1340,17 @@ delete_non_B_K_work_stuff (struct work_s
|
||||
/* Discard the remembered types, if any. */
|
||||
|
||||
forget_types (work);
|
||||
|
@ -129,7 +104,7 @@ index 7514e57..f21e630 100644
|
|||
int done;
|
||||
int success;
|
||||
string decl;
|
||||
@@ -3564,6 +3583,7 @@ do_type (struct work_stuff *work, const char **mangled, string *result)
|
||||
@@ -3564,6 +3583,7 @@ do_type (struct work_stuff *work, const
|
||||
|
||||
done = 0;
|
||||
success = 1;
|
||||
|
@ -137,7 +112,7 @@ index 7514e57..f21e630 100644
|
|||
while (success && !done)
|
||||
{
|
||||
int member;
|
||||
@@ -3616,8 +3636,15 @@ do_type (struct work_stuff *work, const char **mangled, string *result)
|
||||
@@ -3616,8 +3636,15 @@ do_type (struct work_stuff *work, const
|
||||
success = 0;
|
||||
}
|
||||
else
|
||||
|
@ -154,7 +129,7 @@ index 7514e57..f21e630 100644
|
|||
mangled = &remembered_type;
|
||||
}
|
||||
break;
|
||||
@@ -3840,6 +3867,9 @@ do_type (struct work_stuff *work, const char **mangled, string *result)
|
||||
@@ -3840,6 +3867,9 @@ do_type (struct work_stuff *work, const
|
||||
string_delete (result);
|
||||
string_delete (&decl);
|
||||
|
||||
|
@ -164,7 +139,7 @@ index 7514e57..f21e630 100644
|
|||
if (success)
|
||||
/* Assume an integral type, if we're not sure. */
|
||||
return (int) ((tk == tk_none) ? tk_integral : tk);
|
||||
@@ -4252,6 +4282,41 @@ do_arg (struct work_stuff *work, const char **mangled, string *result)
|
||||
@@ -4252,6 +4282,41 @@ do_arg (struct work_stuff *work, const c
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -206,7 +181,7 @@ index 7514e57..f21e630 100644
|
|||
remember_type (struct work_stuff *work, const char *start, int len)
|
||||
{
|
||||
char *tem;
|
||||
@@ -4515,10 +4580,13 @@ demangle_args (struct work_stuff *work, const char **mangled,
|
||||
@@ -4515,10 +4580,13 @@ demangle_args (struct work_stuff *work,
|
||||
{
|
||||
string_append (declp, ", ");
|
||||
}
|
||||
|
@ -220,11 +195,11 @@ index 7514e57..f21e630 100644
|
|||
if (PRINT_ARG_TYPES)
|
||||
{
|
||||
string_appends (declp, &arg);
|
||||
diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected
|
||||
index 157d2ee..8793a0b 100644
|
||||
--- a/libiberty/testsuite/demangle-expected
|
||||
+++ b/libiberty/testsuite/demangle-expected
|
||||
@@ -4491,3 +4491,21 @@ void eat<int*, Foo()::{lambda(auto:1*, auto:2*)#6}>(int*&, Foo()::{lambda(auto:1
|
||||
Index: gcc-6.4.0/libiberty/testsuite/demangle-expected
|
||||
===================================================================
|
||||
--- gcc-6.4.0.orig/libiberty/testsuite/demangle-expected
|
||||
+++ gcc-6.4.0/libiberty/testsuite/demangle-expected
|
||||
@@ -4491,3 +4491,21 @@ void eat<int*, Foo()::{lambda(auto:1*, a
|
||||
|
||||
_Z3eatIPiZ3BarIsEvvEUlPsPT_PT0_E0_EvRS3_RS5_
|
||||
void eat<int*, void Bar<short>()::{lambda(short*, auto:1*, auto:2*)#2}>(int*&, void Bar<short>()::{lambda(short*, auto:1*, auto:2*)#2}&)
|
||||
|
@ -246,6 +221,3 @@ index 157d2ee..8793a0b 100644
|
|||
+
|
||||
+__10%0__S4_0T0T0
|
||||
+%0<>::%0(%0<>)
|
||||
--
|
||||
2.9.3
|
||||
|
Loading…
Reference in New Issue