toolchain: bump ARC tools to arc-2019.09-rc1

This commit bumps ARC toolchain to arc-2019.09-rc1.
We want to test how new toolchain-rc1 builds packages,
so we can make fixes before release of toolcain.

ARC GNU tools of version arc-2019.09-rc1 bring some quite significant changes like:
* Binutils v2_33.20191002 with additional ARC patches
* GCC 9.2.0 with additional ARC patches
* glibc 2.30 with additional ARC patches

Please note that it is a release candidate and it might contain some breakages,
please don't use it for production builds.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Evgeniy Didin
2019-11-06 16:03:09 +03:00
committed by Peter Korsgaard
parent ef17e5a15e
commit 6a1e1ee9bc
13 changed files with 10 additions and 306 deletions

View File

@@ -37,7 +37,7 @@ endchoice
config BR2_BINUTILS_VERSION
string
default "arc-2019.09-eng002" if BR2_BINUTILS_VERSION_ARC
default "arc-2019.09-rc1" if BR2_BINUTILS_VERSION_ARC
default "c66d8bbcebfddf713b2b436e1b135e6b125a55a5" if BR2_BINUTILS_VERSION_CSKY
default "2.30" if BR2_BINUTILS_VERSION_2_30_X
default "2.31.1" if BR2_BINUTILS_VERSION_2_31_X

View File

@@ -1,244 +0,0 @@
From 0bd0ecc386b82ce4b61dc64fe6cdd6a851acc866 Mon Sep 17 00:00:00 2001
From: Claudiu Zissulescu <claziss@gmail.com>
Date: Thu, 31 Oct 2019 10:39:07 +0100
Subject: [PATCH] Revert "[ARC] Check UNDEFWEAK_NO_DYNAMIC_RELOC"
Gives errors when -fPIE used.
Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
This reverts commit 1823527532407648f3061b130c55f2138496b2aa.
---
bfd/elf32-arc.c | 120 +++++++++++++------------------
ld/testsuite/ld-arc/weakhid.s | 13 ----
ld/testsuite/ld-arc/weakhiddso.d | 29 --------
3 files changed, 50 insertions(+), 112 deletions(-)
delete mode 100644 ld/testsuite/ld-arc/weakhid.s
delete mode 100644 ld/testsuite/ld-arc/weakhiddso.d
diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
index b92b0b7501a..e9463bea04f 100644
--- a/bfd/elf32-arc.c
+++ b/bfd/elf32-arc.c
@@ -1462,7 +1462,6 @@ elf_arc_relocate_section (bfd * output_bfd,
struct elf_link_hash_entry * h2;
const char * msg;
bfd_boolean unresolved_reloc = FALSE;
- bfd_boolean resolved_to_zero;
struct arc_relocation_data reloc_data =
{
@@ -1604,8 +1603,6 @@ elf_arc_relocate_section (bfd * output_bfd,
continue;
}
- resolved_to_zero = (h != NULL && UNDEFWEAK_NO_DYNAMIC_RELOC (info, h));
-
if (r_symndx < symtab_hdr->sh_info) /* A local symbol. */
{
reloc_data.sym_value = sym->st_value;
@@ -1714,8 +1711,7 @@ elf_arc_relocate_section (bfd * output_bfd,
reloc_data.sym_section = htab->splt;
reloc_data.should_relocate = TRUE;
}
- /* See pr22269. */
- else if (!resolved_to_zero)
+ else
continue;
}
else
@@ -1787,26 +1783,24 @@ elf_arc_relocate_section (bfd * output_bfd,
switch (r_type)
{
- case R_ARC_32:
- case R_ARC_32_ME:
- case R_ARC_PC32:
- case R_ARC_32_PCREL:
- if (bfd_link_pic (info)
- && !resolved_to_zero
- && (input_section->flags & SEC_ALLOC) != 0
- && (!IS_ARC_PCREL_TYPE (r_type)
- || (h != NULL
- && h->dynindx != -1
- && !h->def_regular
- && (!info->symbolic || !h->def_regular))))
- {
- Elf_Internal_Rela outrel;
- bfd_byte *loc;
- bfd_boolean skip = FALSE;
- bfd_boolean relocate = FALSE;
- asection *sreloc = _bfd_elf_get_dynamic_reloc_section
- (input_bfd, input_section,
- /*RELA*/ TRUE);
+ case R_ARC_32:
+ case R_ARC_32_ME:
+ case R_ARC_PC32:
+ case R_ARC_32_PCREL:
+ if (bfd_link_pic (info)
+ && (!IS_ARC_PCREL_TYPE (r_type)
+ || (h != NULL
+ && h->dynindx != -1
+ && !h->def_regular
+ && (!info->symbolic || !h->def_regular))))
+ {
+ Elf_Internal_Rela outrel;
+ bfd_byte *loc;
+ bfd_boolean skip = FALSE;
+ bfd_boolean relocate = FALSE;
+ asection *sreloc = _bfd_elf_get_dynamic_reloc_section
+ (input_bfd, input_section,
+ /*RELA*/ TRUE);
BFD_ASSERT (sreloc != NULL);
@@ -2009,8 +2003,6 @@ elf_arc_check_relocs (bfd * abfd,
switch (r_type)
{
- case R_ARC_8:
- case R_ARC_16:
case R_ARC_32:
case R_ARC_32_ME:
/* During shared library creation, these relocs should not
@@ -2041,51 +2033,39 @@ elf_arc_check_relocs (bfd * abfd,
return FALSE;
}
- /* In some cases we are not setting the 'non_got_ref' flag,
- even though the relocations don't require a GOT access.
- We should extend the testing in this area to ensure that
- no significant cases are being missed. */
- if (h)
- h->non_got_ref = 1;
-
- /* We don't need to handle relocs into sections not going
- into the "real" output. */
- if ((sec->flags & SEC_ALLOC) == 0)
- break;
+ /* In some cases we are not setting the 'non_got_ref'
+ flag, even though the relocations don't require a GOT
+ access. We should extend the testing in this area to
+ ensure that no significant cases are being missed. */
+ if (h)
+ h->non_got_ref = 1;
+ /* FALLTHROUGH */
+ case R_ARC_PC32:
+ case R_ARC_32_PCREL:
+ if ((bfd_link_pic (info))
+ && ((r_type != R_ARC_PC32 && r_type != R_ARC_32_PCREL)
+ || (h != NULL
+ && (!info->symbolic || !h->def_regular))))
+ {
+ if (sreloc == NULL)
+ {
+ if (info->dynamic
+ && ! htab->dynamic_sections_created
+ && ! _bfd_elf_link_create_dynamic_sections (abfd, info))
+ return FALSE;
+ sreloc = _bfd_elf_make_dynamic_reloc_section (sec, dynobj,
+ 2, abfd,
+ /*rela*/
+ TRUE);
+
+ if (sreloc == NULL)
+ return FALSE;
+ }
+ sreloc->size += sizeof (Elf32_External_Rela);
- /* No need to do anything if we're not creating a shared
- object. */
- if (!bfd_link_pic (info)
- || (h != NULL
- && UNDEFWEAK_NO_DYNAMIC_RELOC (info, h)))
+ }
+ default:
break;
-
- /* FALLTHROUGH */
- case R_ARC_PC32:
- case R_ARC_32_PCREL:
- if ((bfd_link_pic (info))
- && ((r_type != R_ARC_PC32 && r_type != R_ARC_32_PCREL)
- || (h != NULL
- && (!info->symbolic || !h->def_regular))))
- {
- if (sreloc == NULL)
- {
- if (info->dynamic
- && ! htab->dynamic_sections_created
- && ! _bfd_elf_link_create_dynamic_sections (abfd, info))
- return FALSE;
- sreloc = _bfd_elf_make_dynamic_reloc_section (sec, dynobj,
- 2, abfd,
- /*rela*/
- TRUE);
-
- if (sreloc == NULL)
- return FALSE;
- }
- sreloc->size += sizeof (Elf32_External_Rela);
- }
- default:
- break;
}
if (is_reloc_for_PLT (howto))
diff --git a/ld/testsuite/ld-arc/weakhid.s b/ld/testsuite/ld-arc/weakhid.s
deleted file mode 100644
index a8c87da1a2d..00000000000
--- a/ld/testsuite/ld-arc/weakhid.s
+++ /dev/null
@@ -1,13 +0,0 @@
- .weak xweakobj
- .weak xweakhidobj
- .hidden xweakhidobj
-
- .data
- .global x
- .type x,@object
-x:
- .word xweakhidobj
- .word xweakobj
- .word xregobj
-.Lfe1:
- .size x,.Lfe1-x
diff --git a/ld/testsuite/ld-arc/weakhiddso.d b/ld/testsuite/ld-arc/weakhiddso.d
deleted file mode 100644
index f52f27fc048..00000000000
--- a/ld/testsuite/ld-arc/weakhiddso.d
+++ /dev/null
@@ -1,29 +0,0 @@
-#source: weakhid.s
-#ld: --shared -m arclinux -z nocombreloc --hash-style=sysv
-#objdump: -s -R -T
-
-# Check that .weak and .weak .hidden object references are handled
-# correctly when generating a DSO. Copied from CRIS port.
-
-.*: +file format .*arc.*
-
-DYNAMIC SYMBOL TABLE:
-0+2208 l d \.data 0+ \.data
-0+2208 g DO \.data 0+c x
-0+ D \*UND\* 0+ xregobj
-0+2214 g D \.data 0+ __bss_start
-0+ w D \*UND\* 0+ xweakobj
-0+2214 g D \.data 0+ _edata
-0+2214 g D \.data 0+ _end
-
-
-DYNAMIC RELOCATION RECORDS
-OFFSET TYPE VALUE
-0+2210 R_ARC_32 +xregobj
-0+ R_ARC_NONE +\*ABS\*
-
-Contents of section \.hash:
-#...
-Contents of section \.data:
- 2208 00000000 00000000 00000000 .*
-#...
\ No newline at end of file
--
2.17.2

View File

@@ -4,7 +4,7 @@ sha512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe13
sha512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a binutils-2.32.tar.xz
# Locally calculated (fetched from Github)
sha512 db6a0a855733a79ec71127b94981e6be63c4852dee5aed2bc9738da7d3c3796d88974e86ae9dc20cf28ea5e31897ddf8d68f695fcadfbdec1a8406b437d73df6 binutils-gdb-arc-2019.09-eng002.tar.gz
sha512 3840770da5ede0248f6a6605e3f1743210acd9f4da7de48720ef566cc2aae52ea9e84c285a0a6d39eb15bd7ad197d543b6e407ec9e1a00739989e574d4e04384 binutils-gdb-arc-2019.09-rc1.tar.gz
# Locally calculated (fetched from https://github.com/c-sky/binutils-gdb)
sha512 979552d4b3a4f31e9f3b9a7027321bd4eb3ac6c2d8deac1720e94e54f81d736db09c53c5d87c301010e307b64127e14400a036c7a35e5d63a954a4edd9cc8e2c binutils-c66d8bbcebfddf713b2b436e1b135e6b125a55a5.tar.gz

View File

@@ -9,13 +9,13 @@
BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION))
ifeq ($(BINUTILS_VERSION),)
ifeq ($(BR2_arc),y)
BINUTILS_VERSION = arc-2019.09-eng002
BINUTILS_VERSION = arc-2019.09-rc1
else
BINUTILS_VERSION = 2.31.1
endif
endif # BINUTILS_VERSION
ifeq ($(BINUTILS_VERSION),arc-2019.09-eng002)
ifeq ($(BINUTILS_VERSION),arc-2019.09-rc1)
BINUTILS_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(BINUTILS_VERSION))
BINUTILS_SOURCE = binutils-gdb-$(BINUTILS_VERSION).tar.gz
BINUTILS_FROM_GIT = y