From patchwork Wed Aug 14 16:46:13 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Romain Naour X-Patchwork-Id: 1147120 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="pLkP3BGJ"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 467wTS1kpqz9sBF for ; Thu, 15 Aug 2019 02:46:33 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 4E77286E1D; Wed, 14 Aug 2019 16:46:30 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8oUXAnMCSoOD; Wed, 14 Aug 2019 16:46:28 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 7D91486F3F; Wed, 14 Aug 2019 16:46:28 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 333B11BF290 for ; Wed, 14 Aug 2019 16:46:27 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 3039E85C62 for ; Wed, 14 Aug 2019 16:46:27 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PZmKmkKnEN96 for ; Wed, 14 Aug 2019 16:46:25 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr1-f68.google.com (mail-wr1-f68.google.com [209.85.221.68]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 5804285B11 for ; Wed, 14 Aug 2019 16:46:25 +0000 (UTC) Received: by mail-wr1-f68.google.com with SMTP id u16so718540wrr.0 for ; Wed, 14 Aug 2019 09:46:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=lznT0x+wx9TR3nFZSFUlRfVkaPFwx7rXpX7irCCiHcM=; b=pLkP3BGJhbdNg4aDYvxsWuhiHyrtZ1qvkE+c8K8wCG6ZidX4KkgFyVLVSeF1BzZonm jfyUCooYmPf0ykU07r54nIJoyZZyc1aBsaslWEzO3NCPvqe1zymPJjR3vHLvo+sJyf5C uJTD4pGZW//z0zXFIM/+CE949pPwe3jb0EiCvISFNwS7udOjiR4Wi3fQkltJrp/2UDqK m2vwrn78XTp6qIJPO7YjotO9kFSsfMruCUDmxRcBLsimD2ail6n1jNiEdms61XYcHI2/ ZrSoQzYcfEaHPdzciDAWsa1519u7gSbWlQ+0UoqzR5SAj9VU5tPEQxGumBiv9+DwKKwV ejcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=lznT0x+wx9TR3nFZSFUlRfVkaPFwx7rXpX7irCCiHcM=; b=Xc0hAcEQX9C31krLkdrXnonW+HJYQregXbDhnPqe9ujt/GUz+bWl2O7Gc1EVctL2Hs /3VPlQNospP0c/UjPVWoolrGqOlxcgdypBlHNoJQW3IQLKi7Eo9H304m/81mb1GQalJ6 vhTtDVBc59bcGq5NxtVhjrnI12TTFUTlk4hdbizUNjkw2QkBbrOrroHIkkFg382H4tVn 830Ck0ULLDsXnsw6Q/UGAf9Dz9AU74MTpWBAwSDqifwtuLql8bK5gE/E+yd18ByCuzFj wyfh9656pJdOwovy9+HduyDVr91rlP09lVyfBx3ifmLoc1HwasdKz+qYOT7XWdjm0iRD z8HQ== X-Gm-Message-State: APjAAAV3G735mFoiUT6iJ4+YSUZLVHs09bj4ZsclK+T0GHXWQNyhTNwM /eHLUYn6Sj1kq0jVFF4S14eLXhhF X-Google-Smtp-Source: APXvYqxg6bXkgCvyq4FjKBmXT2qOzkx+PBRmLXuU/PEzZWXAcKpAcbz/o7JNAFy1tThP+e3giV081Q== X-Received: by 2002:adf:efd2:: with SMTP id i18mr660886wrp.145.1565801183268; Wed, 14 Aug 2019 09:46:23 -0700 (PDT) Received: from atlas.localdomain ([37.164.166.110]) by smtp.gmail.com with ESMTPSA id t198sm297382wmt.39.2019.08.14.09.46.18 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Wed, 14 Aug 2019 09:46:22 -0700 (PDT) From: Romain Naour To: buildroot@buildroot.org Date: Wed, 14 Aug 2019 18:46:13 +0200 Message-Id: <20190814164613.12509-1-romain.naour@gmail.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Subject: [Buildroot] [PATCH: for-next] package/gcc: bump to version 9.2.0 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Romain Naour , Evgeniy Didin , Alexey Brodkin , Claudiu Zissulescu Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Remove upstream patches https://github.com/gcc-mirror/gcc/commit/472bac30e63ffacecfa5eda813054555f2cc7def https://github.com/gcc-mirror/gcc/commit/869e468112244b6a3812ab181642fcd9df8838d4 Signed-off-by: Romain Naour Cc: Alexey Brodkin Cc: Evgeniy Didin --- Tested using Toolchain-builder: https://gitlab.com/kubu93/toolchains-builder/pipelines/75997744 1) Existing issue with gdb 8.x on aarch64 + musl + kernel headers 4.19. Fixed with kernel headers 5.1. 2) PowerPC issue with Qemu 2.11 from Ubuntu Bionic Fixed by using Qemu 2.12+ 3) New issue on openrisc with uClibc and gcc 9.1 or 9.2. To be invesitgated. --- .../9.1.0/0001-ARC-Backport-fix-PR89838.patch | 367 ------------------ .../0002-ARC-Fix-emitting-TLS-symbols.patch | 61 --- package/gcc/Config.in.host | 2 +- package/gcc/gcc.hash | 4 +- 4 files changed, 3 insertions(+), 431 deletions(-) delete mode 100644 package/gcc/9.1.0/0001-ARC-Backport-fix-PR89838.patch delete mode 100644 package/gcc/9.1.0/0002-ARC-Fix-emitting-TLS-symbols.patch diff --git a/package/gcc/9.1.0/0001-ARC-Backport-fix-PR89838.patch b/package/gcc/9.1.0/0001-ARC-Backport-fix-PR89838.patch deleted file mode 100644 index 3e8b86d709..0000000000 --- a/package/gcc/9.1.0/0001-ARC-Backport-fix-PR89838.patch +++ /dev/null @@ -1,367 +0,0 @@ -From e5398fbcaa1dc35422958acfdb13074bf4a797a3 Mon Sep 17 00:00:00 2001 -From: claziss -Date: Tue, 25 Jun 2019 11:02:21 +0000 -Subject: [PATCH 1/2] [ARC] Backport fix PR89838 - -Fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89838 -Similar to https://git.buildroot.org/buildroot/commit/?h=dbf7fffb37e25c40fd5c03d0a64e50a1bba86424 -but rebased on upstream stable "gcc-9-branch". - -gcc/ -xxxx-xx-xx Claudiu Zissulescu - - * config/arc/arc.c (arc_symbol_binds_local_p): New function. - (arc_legitimize_pic_address): Simplify and cleanup the function. - (SYMBOLIC_CONST): Remove. - (prepare_pic_move): Likewise. - (prepare_move_operands): Handle complex mov cases here. - (arc_legitimize_address_0): Remove call to - arc_legitimize_pic_address. - (arc_legitimize_address): Remove call to - arc_legitimize_tls_address. - * config/arc/arc.md (movqi_insn): Allow Cm3 match. - (movhi_insn): Likewise. - -/gcc/testsuite -xxxx-xx-xx Claudiu Zissulescu -Signed-off-by: Alexey Brodkin ---- - gcc/config/arc/arc.c | 238 ++++++++++++-------------------------------------- - gcc/config/arc/arc.md | 8 +- - 2 files changed, 60 insertions(+), 186 deletions(-) - -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index 2f5753b02fa..daacc79d0cb 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -5971,130 +5971,47 @@ arc_legitimize_tls_address (rtx addr, enum tls_model model) - } - } - --/* Legitimize a pic address reference in ORIG. -- The return value is the legitimated address. -- If OLDX is non-zero, it is the target to assign the address to first. */ -+/* Return true if SYMBOL_REF X binds locally. */ - --static rtx --arc_legitimize_pic_address (rtx orig, rtx oldx) -+static bool -+arc_symbol_binds_local_p (const_rtx x) - { -- rtx addr = orig; -- rtx pat = orig; -- rtx base; -+ return (SYMBOL_REF_DECL (x) -+ ? targetm.binds_local_p (SYMBOL_REF_DECL (x)) -+ : SYMBOL_REF_LOCAL_P (x)); -+} - -- if (oldx == orig) -- oldx = NULL; -+/* Legitimize a pic address reference in ADDR. The return value is -+ the legitimated address. */ - -- if (GET_CODE (addr) == LABEL_REF) -- ; /* Do nothing. */ -- else if (GET_CODE (addr) == SYMBOL_REF) -+static rtx -+arc_legitimize_pic_address (rtx addr) -+{ -+ if (!flag_pic) -+ return addr; -+ -+ switch (GET_CODE (addr)) - { -- enum tls_model model = SYMBOL_REF_TLS_MODEL (addr); -- if (model != 0) -- return arc_legitimize_tls_address (addr, model); -- else if (!flag_pic) -- return orig; -- else if (CONSTANT_POOL_ADDRESS_P (addr) || SYMBOL_REF_LOCAL_P (addr)) -- return arc_unspec_offset (addr, ARC_UNSPEC_GOTOFFPC); -+ case SYMBOL_REF: -+ /* TLS symbols are handled in different place. */ -+ if (SYMBOL_REF_TLS_MODEL (addr)) -+ return addr; - - /* This symbol must be referenced via a load from the Global - Offset Table (@GOTPC). */ -- pat = arc_unspec_offset (addr, ARC_UNSPEC_GOT); -- pat = gen_const_mem (Pmode, pat); -- -- if (oldx == NULL) -- oldx = gen_reg_rtx (Pmode); -- -- emit_move_insn (oldx, pat); -- pat = oldx; -- } -- else -- { -- if (GET_CODE (addr) == CONST) -- { -- addr = XEXP (addr, 0); -- if (GET_CODE (addr) == UNSPEC) -- { -- /* Check that the unspec is one of the ones we generate? */ -- return orig; -- } -- /* fwprop is placing in the REG_EQUIV notes constant pic -- unspecs expressions. Then, loop may use these notes for -- optimizations resulting in complex patterns that are not -- supported by the current implementation. The following -- two if-cases are simplifying the complex patters to -- simpler ones. */ -- else if (GET_CODE (addr) == MINUS) -- { -- rtx op0 = XEXP (addr, 0); -- rtx op1 = XEXP (addr, 1); -- gcc_assert (oldx); -- gcc_assert (GET_CODE (op1) == UNSPEC); -- -- emit_move_insn (oldx, -- gen_rtx_CONST (SImode, -- arc_legitimize_pic_address (op1, -- NULL_RTX))); -- emit_insn (gen_rtx_SET (oldx, gen_rtx_MINUS (SImode, op0, oldx))); -- return oldx; -- -- } -- else if (GET_CODE (addr) != PLUS) -- { -- rtx tmp = XEXP (addr, 0); -- enum rtx_code code = GET_CODE (addr); -- -- /* It only works for UNARY operations. */ -- gcc_assert (UNARY_P (addr)); -- gcc_assert (GET_CODE (tmp) == UNSPEC); -- gcc_assert (oldx); -- -- emit_move_insn -- (oldx, -- gen_rtx_CONST (SImode, -- arc_legitimize_pic_address (tmp, -- NULL_RTX))); -- -- emit_insn (gen_rtx_SET (oldx, -- gen_rtx_fmt_ee (code, SImode, -- oldx, const0_rtx))); -- -- return oldx; -- } -- else -- { -- gcc_assert (GET_CODE (addr) == PLUS); -- if (GET_CODE (XEXP (addr, 0)) == UNSPEC) -- return orig; -- } -- } -- -- if (GET_CODE (addr) == PLUS) -- { -- rtx op0 = XEXP (addr, 0), op1 = XEXP (addr, 1); -+ if (!arc_symbol_binds_local_p (addr)) -+ return gen_const_mem (Pmode, arc_unspec_offset (addr, ARC_UNSPEC_GOT)); - -- base = arc_legitimize_pic_address (op0, oldx); -- pat = arc_legitimize_pic_address (op1, -- base == oldx ? NULL_RTX : oldx); -- -- if (base == op0 && pat == op1) -- return orig; -+ /* Local symb: use @pcl to access it. */ -+ /* Fall through. */ -+ case LABEL_REF: -+ return arc_unspec_offset (addr, ARC_UNSPEC_GOTOFFPC); - -- if (GET_CODE (pat) == CONST_INT) -- pat = plus_constant (Pmode, base, INTVAL (pat)); -- else -- { -- if (GET_CODE (pat) == PLUS && CONSTANT_P (XEXP (pat, 1))) -- { -- base = gen_rtx_PLUS (Pmode, base, XEXP (pat, 0)); -- pat = XEXP (pat, 1); -- } -- pat = gen_rtx_PLUS (Pmode, base, pat); -- } -- } -+ default: -+ break; - } - -- return pat; -+ return addr; - } - - /* Output address constant X to FILE, taking PIC into account. */ -@@ -6256,28 +6173,6 @@ arc_output_pic_addr_const (FILE * file, rtx x, int code) - } - } - --#define SYMBOLIC_CONST(X) \ --(GET_CODE (X) == SYMBOL_REF \ -- || GET_CODE (X) == LABEL_REF \ -- || (GET_CODE (X) == CONST && symbolic_reference_mentioned_p (X))) -- --/* Emit insns to move operands[1] into operands[0]. */ -- --static void --prepare_pic_move (rtx *operands, machine_mode) --{ -- if (GET_CODE (operands[0]) == MEM && SYMBOLIC_CONST (operands[1]) -- && flag_pic) -- operands[1] = force_reg (Pmode, operands[1]); -- else -- { -- rtx temp = (reload_in_progress ? operands[0] -- : flag_pic? gen_reg_rtx (Pmode) : NULL_RTX); -- operands[1] = arc_legitimize_pic_address (operands[1], temp); -- } --} -- -- - /* The function returning the number of words, at the beginning of an - argument, must be put in registers. The returned value must be - zero for arguments that are passed entirely in registers or that -@@ -9053,54 +8948,37 @@ prepare_move_operands (rtx *operands, machine_mode mode) - } - } - -- if (mode == SImode && SYMBOLIC_CONST (operands[1])) -+ if (GET_CODE (operands[1]) == SYMBOL_REF) - { -- prepare_pic_move (operands, SImode); -- -- /* Disable any REG_EQUALs associated with the symref -- otherwise the optimization pass undoes the work done -- here and references the variable directly. */ -+ enum tls_model model = SYMBOL_REF_TLS_MODEL (operands[1]); -+ if (MEM_P (operands[0]) && flag_pic) -+ operands[1] = force_reg (mode, operands[1]); -+ else if (model) -+ operands[1] = arc_legitimize_tls_address (operands[1], model); - } - -+ operands[1] = arc_legitimize_pic_address (operands[1]); -+ -+ /* Store instructions are limited, they only accept as address an -+ immediate, a register or a register plus a small immediate. */ - if (MEM_P (operands[0]) -- && !(reload_in_progress || reload_completed)) -+ && !move_dest_operand (operands[0], mode)) - { -- operands[1] = force_reg (mode, operands[1]); -- if (!move_dest_operand (operands[0], mode)) -- { -- rtx addr = copy_to_mode_reg (Pmode, XEXP (operands[0], 0)); -- /* This is like change_address_1 (operands[0], mode, 0, 1) , -- except that we can't use that function because it is static. */ -- rtx pat = change_address (operands[0], mode, addr); -- MEM_COPY_ATTRIBUTES (pat, operands[0]); -- operands[0] = pat; -- } -- if (!cse_not_expected) -- { -- rtx pat = XEXP (operands[0], 0); -- -- pat = arc_legitimize_address_0 (pat, pat, mode); -- if (pat) -- { -- pat = change_address (operands[0], mode, pat); -- MEM_COPY_ATTRIBUTES (pat, operands[0]); -- operands[0] = pat; -- } -- } -+ rtx tmp0 = copy_to_mode_reg (Pmode, XEXP (operands[0], 0)); -+ rtx tmp1 = change_address (operands[0], mode, tmp0); -+ MEM_COPY_ATTRIBUTES (tmp1, operands[0]); -+ operands[0] = tmp1; - } - -- if (MEM_P (operands[1]) && !cse_not_expected) -- { -- rtx pat = XEXP (operands[1], 0); -- -- pat = arc_legitimize_address_0 (pat, pat, mode); -- if (pat) -- { -- pat = change_address (operands[1], mode, pat); -- MEM_COPY_ATTRIBUTES (pat, operands[1]); -- operands[1] = pat; -- } -- } -+ /* Check if it is constant but it is not legitimized. */ -+ if (CONSTANT_P (operands[1]) -+ && !arc_legitimate_constant_p (mode, operands[1])) -+ operands[1] = force_reg (mode, XEXP (operands[1], 0)); -+ else if (MEM_P (operands[0]) -+ && ((CONSTANT_P (operands[1]) -+ && !satisfies_constraint_Cm3 (operands[1])) -+ || MEM_P (operands[1]))) -+ operands[1] = force_reg (mode, operands[1]); - - return false; - } -@@ -9572,11 +9450,10 @@ arc_legitimize_address_0 (rtx x, rtx oldx ATTRIBUTE_UNUSED, - { - rtx addr, inner; - -- if (flag_pic && SYMBOLIC_CONST (x)) -- (x) = arc_legitimize_pic_address (x, 0); - addr = x; - if (GET_CODE (addr) == CONST) - addr = XEXP (addr, 0); -+ - if (GET_CODE (addr) == PLUS - && CONST_INT_P (XEXP (addr, 1)) - && ((GET_CODE (XEXP (addr, 0)) == SYMBOL_REF -@@ -9607,13 +9484,6 @@ arc_legitimize_address_0 (rtx x, rtx oldx ATTRIBUTE_UNUSED, - static rtx - arc_legitimize_address (rtx orig_x, rtx oldx, machine_mode mode) - { -- if (GET_CODE (orig_x) == SYMBOL_REF) -- { -- enum tls_model model = SYMBOL_REF_TLS_MODEL (orig_x); -- if (model != 0) -- return arc_legitimize_tls_address (orig_x, model); -- } -- - rtx new_x = arc_legitimize_address_0 (orig_x, oldx, mode); - - if (new_x) -diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md -index ce1004c1b56..78e304d4c71 100644 ---- a/gcc/config/arc/arc.md -+++ b/gcc/config/arc/arc.md -@@ -671,7 +671,9 @@ core_3, archs4x, archs4xd, archs4xd_slow" - [(set (match_operand:QI 0 "move_dest_operand" "=Rcq,Rcq#q, w,Rcq#q, h, w, w,???w,h, w,Rcq, S,!*x, r,r, Ucm,m,???m, m,Usc") - (match_operand:QI 1 "move_src_operand" " cL, cP,Rcq#q, P,hCm1,cL, I,?Rac,i,?i, T,Rcq,Usd,Ucm,m,?Rac,c,?Rac,Cm3,i"))] - "register_operand (operands[0], QImode) -- || register_operand (operands[1], QImode)" -+ || register_operand (operands[1], QImode) -+ || (satisfies_constraint_Cm3 (operands[1]) -+ && memory_operand (operands[0], QImode))" - "@ - mov%? %0,%1%& - mov%? %0,%1%& -@@ -713,7 +715,9 @@ core_3, archs4x, archs4xd, archs4xd_slow" - /* Don't use a LIMM that we could load with a single insn - we loose - delay-slot filling opportunities. */ - && !satisfies_constraint_I (operands[1]) -- && satisfies_constraint_Usc (operands[0]))" -+ && satisfies_constraint_Usc (operands[0])) -+ || (satisfies_constraint_Cm3 (operands[1]) -+ && memory_operand (operands[0], HImode))" - "@ - mov%? %0,%1%& - mov%? %0,%1%& --- -2.16.2 - diff --git a/package/gcc/9.1.0/0002-ARC-Fix-emitting-TLS-symbols.patch b/package/gcc/9.1.0/0002-ARC-Fix-emitting-TLS-symbols.patch deleted file mode 100644 index 15df921290..0000000000 --- a/package/gcc/9.1.0/0002-ARC-Fix-emitting-TLS-symbols.patch +++ /dev/null @@ -1,61 +0,0 @@ -From d17cd0f88ed986be4046b2eb70240dc95b2958cd Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Wed, 26 Jun 2019 17:53:51 +0300 -Subject: [PATCH 2/2] [ARC] Fix emitting TLS symbols. - -When storing a TLS symbol to memory, always use an intermediate register -to load it. Otherwise compiler generates instruction which couldn't be -encoded and we see: ------------------------------>8--------------------------- -In file included from gethstent_r.c:34: -../nss/getXXent_r.c: In function '__gethostent_r': -../nss/getXXent_r.c:168:1: error: unrecognizable insn: - } - ^ -(insn 25 24 26 5 (set (mem:SI (plus:SI (reg/f:SI 149 virtual-outgoing-args) - (const_int 16 [0x10])) [0 S4 A32]) - (plus:SI (reg:SI 25 r25) - (reg:SI 174))) "../nss/getXXent_r.c":160 -1 - (nil)) -during RTL pass: vregs -../nss/getXXent_r.c:168:1: internal compiler error: in extract_insn, at recog.c:2304 -In file included from getnetent_r.c:34: -../nss/getXXent_r.c: In function '__getnetent_r': -../nss/getXXent_r.c:168:1: error: unrecognizable insn: - } - ^ -(insn 25 24 26 5 (set (mem:SI (plus:SI (reg/f:SI 149 virtual-outgoing-args) - (const_int 16 [0x10])) [0 S4 A32]) - (plus:SI (reg:SI 25 r25) - (reg:SI 174))) "../nss/getXXent_r.c":160 -1 - (nil)) -during RTL pass: vregs -../nss/getXXent_r.c:168:1: internal compiler error: in extract_insn, at recog.c:2304 ------------------------------>8--------------------------- - -Note this patch is not yet submitted to the GCC's master and gcc-9-branch but -will be submitted soon. That said with bump of GCC this patch won't be -needed any longer. - -Signed-off-by: Claudiu Zissulescu -Signed-off-by: Alexey Brodkin ---- - gcc/config/arc/arc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index daacc79d0cb..ee1f70bbb51 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -8951,7 +8951,7 @@ prepare_move_operands (rtx *operands, machine_mode mode) - if (GET_CODE (operands[1]) == SYMBOL_REF) - { - enum tls_model model = SYMBOL_REF_TLS_MODEL (operands[1]); -- if (MEM_P (operands[0]) && flag_pic) -+ if (MEM_P (operands[0])) - operands[1] = force_reg (mode, operands[1]); - else if (model) - operands[1] = arc_legitimize_tls_address (operands[1], model); --- -2.16.2 - diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host index cff8134333..990b7964c6 100644 --- a/package/gcc/Config.in.host +++ b/package/gcc/Config.in.host @@ -79,7 +79,7 @@ config BR2_GCC_VERSION default "5.5.0" if BR2_GCC_VERSION_5_X default "7.4.0" if BR2_GCC_VERSION_7_X default "8.3.0" if BR2_GCC_VERSION_8_X - default "9.1.0" if BR2_GCC_VERSION_9_X + default "9.2.0" if BR2_GCC_VERSION_9_X default "arc-2019.03-release" if BR2_GCC_VERSION_ARC default "or1k-musl-5.4.0-20170218" if BR2_GCC_VERSION_OR1K default "48152afb96c59733d5bc79e3399bb7b3d4b44266" if BR2_GCC_VERSION_CSKY diff --git a/package/gcc/gcc.hash b/package/gcc/gcc.hash index 20f5145be6..5be1ec1a1d 100644 --- a/package/gcc/gcc.hash +++ b/package/gcc/gcc.hash @@ -4,8 +4,8 @@ sha512 670ff52c2ae12c7852c12987e91798c5aa8bd6daf21f0d6e0cd57a4aa59cc4f06a837fe7 sha512 8864d8e4b97c2e1a4f17422f6e68120172ebefeab97b1757734f7185ca68a6b9a89011c6833c03fa454c17b0ac35b15e1d284881e6971035948ac6100f3aa45e gcc-7.4.0.tar.xz # From ftp://gcc.gnu.org/pub/gcc/releases/gcc-8.3.0/sha512.sum sha512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802 gcc-8.3.0.tar.xz -# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.1.0/sha512.sum -sha512 b6134df027e734cee5395afd739fcfa4ea319a6017d662e54e89df927dea19d3fff7a6e35d676685383034e3db01c9d0b653f63574c274eeb15a2cb0bc7a1f28 gcc-9.1.0.tar.xz +# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.2.0/sha512.sum +sha512 a12dff52af876aee0fd89a8d09cdc455f35ec46845e154023202392adc164848faf8ee881b59b681b696e27c69fd143a214014db4214db62f9891a1c8365c040 gcc-9.2.0.tar.xz # Locally calculated (fetched from Github) sha512 c3f63fb601140f92d2dbef96b2dcc025ef754d2f049bfcc3d33e746c7b218b5138f2d8768cd580134858a8d347d234cf3ead276638f6de409f8f07c986e136b6 gcc-arc-2019.03-release.tar.gz