diff --git a/extra/chromium/0001-widevine-support-for-arm.patch b/extra/chromium/0001-widevine-support-for-arm.patch index fc0d16179..08a05d3fd 100644 --- a/extra/chromium/0001-widevine-support-for-arm.patch +++ b/extra/chromium/0001-widevine-support-for-arm.patch @@ -1,4 +1,4 @@ -From bf98ba5c122134948dd5da3bb18cdc7e7761023d Mon Sep 17 00:00:00 2001 +From 2c9098974b0be2d79c86faada645bbffbba2d989 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Thu, 18 Feb 2021 19:35:58 -0700 Subject: [PATCH 1/3] widevine support for arm @@ -21,5 +21,5 @@ index 1a833ae57589c..42164ca5416eb 100644 (target_os == "win" && (target_cpu == "x86" || target_cpu == "x64")) -- -2.32.0 +2.35.1 diff --git a/extra/chromium/0002-Run-blink-bindings-generation-single-threaded.patch b/extra/chromium/0002-Run-blink-bindings-generation-single-threaded.patch index 5a543730e..1edec45d6 100644 --- a/extra/chromium/0002-Run-blink-bindings-generation-single-threaded.patch +++ b/extra/chromium/0002-Run-blink-bindings-generation-single-threaded.patch @@ -1,4 +1,4 @@ -From 4165b45646bca0977b80e0aa7b7645fbb70e654f Mon Sep 17 00:00:00 2001 +From d4bc35d92065cbd407e061ecaca7c5daed71e7b6 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Tue, 2 Feb 2021 13:58:59 -0700 Subject: [PATCH 2/3] Run blink bindings generation single threaded @@ -9,7 +9,7 @@ When not single threaded this process will eat all the RAM. 1 file changed, 1 insertion(+) diff --git a/third_party/blink/renderer/bindings/BUILD.gn b/third_party/blink/renderer/bindings/BUILD.gn -index 30017570a1391..f88e5906f23f4 100644 +index 3b474c47dc7ce..e7787535882f9 100644 --- a/third_party/blink/renderer/bindings/BUILD.gn +++ b/third_party/blink/renderer/bindings/BUILD.gn @@ -148,6 +148,7 @@ template("generate_bindings") { @@ -21,5 +21,5 @@ index 30017570a1391..f88e5906f23f4 100644 rebase_path(web_idl_database, root_build_dir), "--root_src_dir", -- -2.32.0 +2.35.1 diff --git a/extra/chromium/0003-Fix-eu-strip-build-for-newer-GCC.patch b/extra/chromium/0003-Fix-eu-strip-build-for-newer-GCC.patch index 3da2badea..09904396a 100644 --- a/extra/chromium/0003-Fix-eu-strip-build-for-newer-GCC.patch +++ b/extra/chromium/0003-Fix-eu-strip-build-for-newer-GCC.patch @@ -1,41 +1,157 @@ -From 7e18463de3934080ab42a764b453cca010fb929f Mon Sep 17 00:00:00 2001 +From 9f77fc4f9b6a7b205d8522422f0d43c72a6390ea Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 21 Jul 2021 21:37:31 -0600 Subject: [PATCH 3/3] Fix eu-strip build for newer GCC --- + .../third_party/eu-strip/0001-gcc-fixes.patch | 642 ++++++++++++++++++ buildtools/third_party/eu-strip/build.sh | 3 +- - .../third_party/eu-strip/gcc-fixes.patch | 171 ++++++++++++++++++ - 2 files changed, 173 insertions(+), 1 deletion(-) - create mode 100644 buildtools/third_party/eu-strip/gcc-fixes.patch + 2 files changed, 644 insertions(+), 1 deletion(-) + create mode 100644 buildtools/third_party/eu-strip/0001-gcc-fixes.patch -diff --git a/buildtools/third_party/eu-strip/build.sh b/buildtools/third_party/eu-strip/build.sh -index 86f2b67f6bbd1..722ebcf46f061 100755 ---- a/buildtools/third_party/eu-strip/build.sh -+++ b/buildtools/third_party/eu-strip/build.sh -@@ -1,7 +1,7 @@ - #!/bin/sh -xe - - rm -rf elfutils --git clone git://sourceware.org/git/elfutils.git -+git clone https://sourceware.org/git/elfutils.git - cd elfutils - git checkout elfutils-0.170 - autoheader -@@ -9,6 +9,7 @@ aclocal - autoconf - automake --add-missing - patch -p1 < ../fix-elf-size.patch -+patch -p1 < ../gcc-fixes.patch - mkdir build - cd build - ../configure --enable-maintainer-mode -diff --git a/buildtools/third_party/eu-strip/gcc-fixes.patch b/buildtools/third_party/eu-strip/gcc-fixes.patch +diff --git a/buildtools/third_party/eu-strip/0001-gcc-fixes.patch b/buildtools/third_party/eu-strip/0001-gcc-fixes.patch new file mode 100644 -index 0000000000000..fdb84dffd9364 +index 0000000000000..d6e49fc5260e6 --- /dev/null -+++ b/buildtools/third_party/eu-strip/gcc-fixes.patch -@@ -0,0 +1,171 @@ ++++ b/buildtools/third_party/eu-strip/0001-gcc-fixes.patch +@@ -0,0 +1,642 @@ ++From 9402a72cccb52ec4b24d8ec3221ab2de39d40ab4 Mon Sep 17 00:00:00 2001 ++From: Kevin Mihelich ++Date: Thu, 17 Feb 2022 19:58:58 -0700 ++Subject: [PATCH] gcc fixes ++ ++--- ++ backends/Makefile.am | 8 ++--- ++ backends/i386_init.c | 1 - ++ backends/i386_syscall.c | 50 --------------------------- ++ backends/linux-core-note.c | 2 +- ++ backends/ppc64_init.c | 1 - ++ backends/ppc_init.c | 1 - ++ backends/ppc_syscall.c | 53 ----------------------------- ++ backends/x86_64_init.c | 1 - ++ backends/x86_64_syscall.c | 50 --------------------------- ++ libdw/dwarf_frame_register.c | 2 +- ++ libdw/libdw.h | 8 +++-- ++ libebl/Makefile.am | 2 +- ++ libebl/ebl-hooks.h | 4 --- ++ libebl/ebl_syscall_abi.c | 40 ---------------------- ++ libebl/eblopenbackend.c | 17 ---------- ++ libebl/libebl.h | 8 ----- ++ libelf/libelfP.h | 4 +-- ++ src/ar.c | 66 +++++++++++++++++++++++++----------- ++ tests/addrcfi.c | 2 +- ++ 19 files changed, 61 insertions(+), 259 deletions(-) ++ delete mode 100644 backends/i386_syscall.c ++ delete mode 100644 backends/ppc_syscall.c ++ delete mode 100644 backends/x86_64_syscall.c ++ delete mode 100644 libebl/ebl_syscall_abi.c ++ ++diff --git a/backends/Makefile.am b/backends/Makefile.am ++index 37dc2d20..b554894d 100644 ++--- a/backends/Makefile.am +++++ b/backends/Makefile.am ++@@ -48,7 +48,7 @@ libdw = ../libdw/libdw.so ++ libeu = ../lib/libeu.a ++ ++ i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \ ++- i386_retval.c i386_regs.c i386_auxv.c i386_syscall.c \ +++ i386_retval.c i386_regs.c i386_auxv.c \ ++ i386_initreg.c i386_unwind.c ++ cpu_i386 = ../libcpu/libcpu_i386.a ++ libebl_i386_pic_a_SOURCES = $(i386_SRCS) ++@@ -59,7 +59,7 @@ libebl_sh_pic_a_SOURCES = $(sh_SRCS) ++ am_libebl_sh_pic_a_OBJECTS = $(sh_SRCS:.c=.os) ++ ++ x86_64_SRCS = x86_64_init.c x86_64_symbol.c x86_64_corenote.c x86_64_cfi.c \ ++- x86_64_retval.c x86_64_regs.c i386_auxv.c x86_64_syscall.c \ +++ x86_64_retval.c x86_64_regs.c i386_auxv.c \ ++ x86_64_initreg.c x86_64_unwind.c x32_corenote.c ++ cpu_x86_64 = ../libcpu/libcpu_x86_64.a ++ libebl_x86_64_pic_a_SOURCES = $(x86_64_SRCS) ++@@ -92,13 +92,13 @@ libebl_sparc_pic_a_SOURCES = $(sparc_SRCS) ++ am_libebl_sparc_pic_a_OBJECTS = $(sparc_SRCS:.c=.os) ++ ++ ppc_SRCS = ppc_init.c ppc_symbol.c ppc_retval.c ppc_regs.c \ ++- ppc_corenote.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \ +++ ppc_corenote.c ppc_auxv.c ppc_attrs.c \ ++ ppc_cfi.c ppc_initreg.c ++ libebl_ppc_pic_a_SOURCES = $(ppc_SRCS) ++ am_libebl_ppc_pic_a_OBJECTS = $(ppc_SRCS:.c=.os) ++ ++ ppc64_SRCS = ppc64_init.c ppc64_symbol.c ppc64_retval.c \ ++- ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c ppc_syscall.c \ +++ ppc64_corenote.c ppc_regs.c ppc_auxv.c ppc_attrs.c \ ++ ppc_cfi.c ppc_initreg.c ppc64_unwind.c ppc64_resolve_sym.c ++ libebl_ppc64_pic_a_SOURCES = $(ppc64_SRCS) ++ am_libebl_ppc64_pic_a_OBJECTS = $(ppc64_SRCS:.c=.os) ++diff --git a/backends/i386_init.c b/backends/i386_init.c ++index fc1587a9..847a11c0 100644 ++--- a/backends/i386_init.c +++++ b/backends/i386_init.c ++@@ -58,7 +58,6 @@ i386_init (Elf *elf __attribute__ ((unused)), ++ HOOK (eh, debugscn_p); ++ HOOK (eh, return_value_location); ++ HOOK (eh, register_info); ++- HOOK (eh, syscall_abi); ++ HOOK (eh, auxv_info); ++ HOOK (eh, disasm); ++ HOOK (eh, abi_cfi); ++diff --git a/backends/i386_syscall.c b/backends/i386_syscall.c ++deleted file mode 100644 ++index 535dcd86..00000000 ++--- a/backends/i386_syscall.c +++++ /dev/null ++@@ -1,50 +0,0 @@ ++-/* Linux/i386 system call ABI in DWARF register numbers. ++- Copyright (C) 2008 Red Hat, Inc. ++- This file is part of elfutils. ++- ++- This file is free software; you can redistribute it and/or modify ++- it under the terms of either ++- ++- * the GNU Lesser General Public License as published by the Free ++- Software Foundation; either version 3 of the License, or (at ++- your option) any later version ++- ++- or ++- ++- * the GNU General Public License as published by the Free ++- Software Foundation; either version 2 of the License, or (at ++- your option) any later version ++- ++- or both in parallel, as here. ++- ++- elfutils is distributed in the hope that it will be useful, but ++- WITHOUT ANY WARRANTY; without even the implied warranty of ++- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++- General Public License for more details. ++- ++- You should have received copies of the GNU General Public License and ++- the GNU Lesser General Public License along with this program. If ++- not, see . */ ++- ++-#ifdef HAVE_CONFIG_H ++-# include ++-#endif ++- ++-#define BACKEND i386_ ++-#include "libebl_CPU.h" ++- ++-int ++-i386_syscall_abi (Ebl *ebl __attribute__ ((unused)), ++- int *sp, int *pc, int *callno, int args[6]) ++-{ ++- *sp = 4; /* %esp */ ++- *pc = 8; /* %eip */ ++- *callno = 0; /* %eax */ ++- args[0] = 3; /* %ebx */ ++- args[1] = 1; /* %ecx */ ++- args[2] = 2; /* %edx */ ++- args[3] = 6; /* %esi */ ++- args[4] = 7; /* %edi */ ++- args[5] = 5; /* %ebp */ ++- return 0; ++-} +diff --git a/backends/linux-core-note.c b/backends/linux-core-note.c +index 67638d70..08282ba4 100644 +--- a/backends/linux-core-note.c @@ -49,6 +165,324 @@ index 0000000000000..fdb84dffd9364 + #endif + ; + ++diff --git a/backends/ppc64_init.c b/backends/ppc64_init.c ++index e5670338..ec36498c 100644 ++--- a/backends/ppc64_init.c +++++ b/backends/ppc64_init.c ++@@ -64,7 +64,6 @@ ppc64_init (Elf *elf __attribute__ ((unused)), ++ HOOK (eh, bss_plt_p); ++ HOOK (eh, return_value_location); ++ HOOK (eh, register_info); ++- HOOK (eh, syscall_abi); ++ HOOK (eh, core_note); ++ HOOK (eh, auxv_info); ++ HOOK (eh, check_object_attribute); ++diff --git a/backends/ppc_init.c b/backends/ppc_init.c ++index aea9f2d7..ab0a00c7 100644 ++--- a/backends/ppc_init.c +++++ b/backends/ppc_init.c ++@@ -60,7 +60,6 @@ ppc_init (Elf *elf __attribute__ ((unused)), ++ HOOK (eh, bss_plt_p); ++ HOOK (eh, return_value_location); ++ HOOK (eh, register_info); ++- HOOK (eh, syscall_abi); ++ HOOK (eh, core_note); ++ HOOK (eh, auxv_info); ++ HOOK (eh, check_object_attribute); ++diff --git a/backends/ppc_syscall.c b/backends/ppc_syscall.c ++deleted file mode 100644 ++index b1b9c52b..00000000 ++--- a/backends/ppc_syscall.c +++++ /dev/null ++@@ -1,53 +0,0 @@ ++-/* Linux/PPC system call ABI in DWARF register numbers. ++- Copyright (C) 2008 Red Hat, Inc. ++- This file is part of elfutils. ++- ++- This file is free software; you can redistribute it and/or modify ++- it under the terms of either ++- ++- * the GNU Lesser General Public License as published by the Free ++- Software Foundation; either version 3 of the License, or (at ++- your option) any later version ++- ++- or ++- ++- * the GNU General Public License as published by the Free ++- Software Foundation; either version 2 of the License, or (at ++- your option) any later version ++- ++- or both in parallel, as here. ++- ++- elfutils is distributed in the hope that it will be useful, but ++- WITHOUT ANY WARRANTY; without even the implied warranty of ++- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++- General Public License for more details. ++- ++- You should have received copies of the GNU General Public License and ++- the GNU Lesser General Public License along with this program. If ++- not, see . */ ++- ++-#ifdef HAVE_CONFIG_H ++-# include ++-#endif ++- ++-#define BACKEND ppc_ ++-#include "libebl_CPU.h" ++- ++-int ++-ppc_syscall_abi (Ebl *ebl __attribute__ ((unused)), ++- int *sp, int *pc, int *callno, int args[6]) ++-{ ++- *sp = 1; ++- *pc = -1; ++- *callno = 0; ++- args[0] = 3; ++- args[1] = 4; ++- args[2] = 5; ++- args[3] = 6; ++- args[4] = 7; ++- args[5] = 8; ++- return 0; ++-} ++- ++-__typeof (ppc_syscall_abi) ++-ppc64_syscall_abi __attribute__ ((alias ("ppc_syscall_abi"))); ++diff --git a/backends/x86_64_init.c b/backends/x86_64_init.c ++index adfa4791..a3838b69 100644 ++--- a/backends/x86_64_init.c +++++ b/backends/x86_64_init.c ++@@ -61,7 +61,6 @@ x86_64_init (Elf *elf __attribute__ ((unused)), ++ HOOK (eh, core_note); ++ HOOK (eh, return_value_location); ++ HOOK (eh, register_info); ++- HOOK (eh, syscall_abi); ++ HOOK (eh, auxv_info); ++ HOOK (eh, disasm); ++ HOOK (eh, abi_cfi); ++diff --git a/backends/x86_64_syscall.c b/backends/x86_64_syscall.c ++deleted file mode 100644 ++index 0deb8bad..00000000 ++--- a/backends/x86_64_syscall.c +++++ /dev/null ++@@ -1,50 +0,0 @@ ++-/* Linux/x86-64 system call ABI in DWARF register numbers. ++- Copyright (C) 2008 Red Hat, Inc. ++- This file is part of elfutils. ++- ++- This file is free software; you can redistribute it and/or modify ++- it under the terms of either ++- ++- * the GNU Lesser General Public License as published by the Free ++- Software Foundation; either version 3 of the License, or (at ++- your option) any later version ++- ++- or ++- ++- * the GNU General Public License as published by the Free ++- Software Foundation; either version 2 of the License, or (at ++- your option) any later version ++- ++- or both in parallel, as here. ++- ++- elfutils is distributed in the hope that it will be useful, but ++- WITHOUT ANY WARRANTY; without even the implied warranty of ++- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++- General Public License for more details. ++- ++- You should have received copies of the GNU General Public License and ++- the GNU Lesser General Public License along with this program. If ++- not, see . */ ++- ++-#ifdef HAVE_CONFIG_H ++-# include ++-#endif ++- ++-#define BACKEND x86_64_ ++-#include "libebl_CPU.h" ++- ++-int ++-x86_64_syscall_abi (Ebl *ebl __attribute__ ((unused)), ++- int *sp, int *pc, int *callno, int args[6]) ++-{ ++- *sp = 7; /* %rsp */ ++- *pc = 16; /* %rip */ ++- *callno = 0; /* %rax */ ++- args[0] = 5; /* %rdi */ ++- args[1] = 4; /* %rsi */ ++- args[2] = 1; /* %rdx */ ++- args[3] = 10; /* %r10 */ ++- args[4] = 8; /* %r8 */ ++- args[5] = 9; /* %r9 */ ++- return 0; ++-} ++diff --git a/libdw/dwarf_frame_register.c b/libdw/dwarf_frame_register.c ++index 37e8e917..5b5b1e33 100644 ++--- a/libdw/dwarf_frame_register.c +++++ b/libdw/dwarf_frame_register.c ++@@ -34,7 +34,7 @@ ++ #include ++ ++ int ++-dwarf_frame_register (Dwarf_Frame *fs, int regno, Dwarf_Op *ops_mem, +++dwarf_frame_register (Dwarf_Frame *fs, int regno, Dwarf_Op ops_mem[3], ++ Dwarf_Op **ops, size_t *nops) ++ { ++ /* Maybe there was a previous error. */ ++diff --git a/libdw/libdw.h b/libdw/libdw.h ++index 63a38ff9..75fcbd9d 100644 ++--- a/libdw/libdw.h +++++ b/libdw/libdw.h ++@@ -977,9 +977,11 @@ extern int dwarf_frame_cfa (Dwarf_Frame *frame, Dwarf_Op **ops, size_t *nops) ++ caller's REGNO is "same_value", i.e. this frame did not change it; ++ ask the caller frame where to find it. ++ ++- For common simple expressions *OPS is OPS_MEM. For arbitrary DWARF ++- expressions in the CFI, *OPS is an internal pointer that can be used as ++- long as the Dwarf_CFI used to create FRAME remains alive. */ +++ For common simple expressions *OPS is OPS_MEM (which is a caller +++ owned array for at least 3 Dwarf_Ops). For arbitrary DWARF +++ expressions in the CFI, *OPS is an internal pointer that can be +++ used as long as the Dwarf_CFI used to create FRAME remains +++ alive. */ ++ extern int dwarf_frame_register (Dwarf_Frame *frame, int regno, ++ Dwarf_Op ops_mem[3], ++ Dwarf_Op **ops, size_t *nops) ++diff --git a/libebl/Makefile.am b/libebl/Makefile.am ++index 2491df80..b58ec11a 100644 ++--- a/libebl/Makefile.am +++++ b/libebl/Makefile.am ++@@ -51,7 +51,7 @@ gen_SOURCES = eblopenbackend.c eblclosebackend.c \ ++ ebl_check_special_symbol.c eblbsspltp.c eblretval.c \ ++ eblreginfo.c eblnonerelocp.c eblrelativerelocp.c \ ++ eblsysvhashentrysize.c eblauxvinfo.c eblcheckobjattr.c \ ++- ebl_check_special_section.c ebl_syscall_abi.c eblabicfi.c \ +++ ebl_check_special_section.c eblabicfi.c \ ++ eblstother.c eblinitreg.c ebldwarftoregno.c eblnormalizepc.c \ ++ eblunwind.c eblresolvesym.c eblcheckreloctargettype.c \ ++ ebl_data_marker_symbol.c ++diff --git a/libebl/ebl-hooks.h b/libebl/ebl-hooks.h ++index f3a0e64a..5c85289d 100644 ++--- a/libebl/ebl-hooks.h +++++ b/libebl/ebl-hooks.h ++@@ -142,10 +142,6 @@ ssize_t EBLHOOK(register_info) (Ebl *ebl, ++ const char **prefix, const char **setname, ++ int *bits, int *type); ++ ++-/* Return system call ABI registers. */ ++-int EBLHOOK(syscall_abi) (Ebl *ebl, int *sp, int *pc, ++- int *callno, int args[6]); ++- ++ /* Disassembler function. */ ++ int EBLHOOK(disasm) (Ebl *ebl, const uint8_t **startp, const uint8_t *end, ++ GElf_Addr addr, const char *fmt, DisasmOutputCB_t outcb, ++diff --git a/libebl/ebl_syscall_abi.c b/libebl/ebl_syscall_abi.c ++deleted file mode 100644 ++index a25369d2..00000000 ++--- a/libebl/ebl_syscall_abi.c +++++ /dev/null ++@@ -1,40 +0,0 @@ ++-/* Return system call ABI mapped to DWARF register numbers. ++- Copyright (C) 2008 Red Hat, Inc. ++- This file is part of elfutils. ++- ++- This file is free software; you can redistribute it and/or modify ++- it under the terms of either ++- ++- * the GNU Lesser General Public License as published by the Free ++- Software Foundation; either version 3 of the License, or (at ++- your option) any later version ++- ++- or ++- ++- * the GNU General Public License as published by the Free ++- Software Foundation; either version 2 of the License, or (at ++- your option) any later version ++- ++- or both in parallel, as here. ++- ++- elfutils is distributed in the hope that it will be useful, but ++- WITHOUT ANY WARRANTY; without even the implied warranty of ++- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++- General Public License for more details. ++- ++- You should have received copies of the GNU General Public License and ++- the GNU Lesser General Public License along with this program. If ++- not, see . */ ++- ++-#ifdef HAVE_CONFIG_H ++-# include ++-#endif ++- ++-#include ++- ++- ++-int ++-ebl_syscall_abi (Ebl *ebl, int *sp, int *pc, int *callno, int *args) ++-{ ++- return ebl != NULL ? ebl->syscall_abi (ebl, sp, pc, callno, args) : -1; ++-} ++diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c ++index 1f814776..fbd78e8a 100644 ++--- a/libebl/eblopenbackend.c +++++ b/libebl/eblopenbackend.c ++@@ -196,8 +196,6 @@ static ssize_t default_register_info (Ebl *ebl, ++ const char **prefix, ++ const char **setname, ++ int *bits, int *type); ++-static int default_syscall_abi (Ebl *ebl, int *sp, int *pc, ++- int *callno, int args[6]); ++ static bool default_check_object_attribute (Ebl *ebl, const char *vendor, ++ int tag, uint64_t value, ++ const char **tag_name, ++@@ -241,7 +239,6 @@ fill_defaults (Ebl *result) ++ result->bss_plt_p = default_bss_plt_p; ++ result->return_value_location = default_return_value_location; ++ result->register_info = default_register_info; ++- result->syscall_abi = default_syscall_abi; ++ result->check_object_attribute = default_check_object_attribute; ++ result->check_reloc_target_type = default_check_reloc_target_type; ++ result->disasm = NULL; ++@@ -717,20 +714,6 @@ default_register_info (Ebl *ebl __attribute__ ((unused)), ++ return snprintf (name, namelen, "reg%d", regno); ++ } ++ ++-static int ++-default_syscall_abi (Ebl *ebl __attribute__ ((unused)), ++- int *sp, int *pc, int *callno, int args[6]) ++-{ ++- *sp = *pc = *callno = -1; ++- args[0] = -1; ++- args[1] = -1; ++- args[2] = -1; ++- args[3] = -1; ++- args[4] = -1; ++- args[5] = -1; ++- return -1; ++-} ++- ++ static bool ++ default_check_object_attribute (Ebl *ebl __attribute__ ((unused)), ++ const char *vendor __attribute__ ((unused)), ++diff --git a/libebl/libebl.h b/libebl/libebl.h ++index 882bdb99..5200b934 100644 ++--- a/libebl/libebl.h +++++ b/libebl/libebl.h ++@@ -243,14 +243,6 @@ extern ssize_t ebl_register_info (Ebl *ebl, ++ const char **prefix, const char **setname, ++ int *bits, int *type); ++ ++-/* Fill in the DWARF register numbers for the registers used in system calls. ++- The SP and PC are what kernel reports call the user stack pointer and PC. ++- The CALLNO and ARGS are the system call number and incoming arguments. ++- Each of these is filled with the DWARF register number corresponding, ++- or -1 if there is none. Returns zero when the information is available. */ ++-extern int ebl_syscall_abi (Ebl *ebl, int *sp, int *pc, ++- int *callno, int args[6]); ++- ++ /* Supply the ABI-specified state of DWARF CFI before CIE initial programs. ++ ++ The DWARF 3.0 spec says that the default initial states of all registers +diff --git a/libelf/libelfP.h b/libelf/libelfP.h +index 7ee6625a..4007301b 100644 +--- a/libelf/libelfP.h @@ -66,7 +500,7 @@ index 0000000000000..fdb84dffd9364 + + /* Create Elf descriptor from memory image. */ +diff --git a/src/ar.c b/src/ar.c -+index ec32cee59..818115bd9 100644 ++index ec32cee5..818115bd 100644 +--- a/src/ar.c ++++ b/src/ar.c +@@ -1,5 +1,5 @@ @@ -207,6 +641,43 @@ index 0000000000000..fdb84dffd9364 + + return status; + } ++diff --git a/tests/addrcfi.c b/tests/addrcfi.c ++index 589b8513..2b7d7bd0 100644 ++--- a/tests/addrcfi.c +++++ b/tests/addrcfi.c ++@@ -92,7 +92,7 @@ print_register (void *arg, ++ ++ printf ("\t%s reg%u (%s%s): ", setname, regno, prefix, regname); ++ ++- Dwarf_Op ops_mem[2]; +++ Dwarf_Op ops_mem[3]; ++ Dwarf_Op *ops; ++ size_t nops; ++ int result = dwarf_frame_register (stuff->frame, regno, ops_mem, &ops, &nops); ++-- ++2.35.1 ++ +diff --git a/buildtools/third_party/eu-strip/build.sh b/buildtools/third_party/eu-strip/build.sh +index 86f2b67f6bbd1..c073e9a15827a 100755 +--- a/buildtools/third_party/eu-strip/build.sh ++++ b/buildtools/third_party/eu-strip/build.sh +@@ -1,7 +1,7 @@ + #!/bin/sh -xe + + rm -rf elfutils +-git clone git://sourceware.org/git/elfutils.git ++git clone https://sourceware.org/git/elfutils.git + cd elfutils + git checkout elfutils-0.170 + autoheader +@@ -9,6 +9,7 @@ aclocal + autoconf + automake --add-missing + patch -p1 < ../fix-elf-size.patch ++patch -p1 < ../0001-gcc-fixes.patch + mkdir build + cd build + ../configure --enable-maintainer-mode -- -2.32.0 +2.35.1 diff --git a/extra/chromium/PKGBUILD b/extra/chromium/PKGBUILD index ad0fe5580..6b5e39f76 100644 --- a/extra/chromium/PKGBUILD +++ b/extra/chromium/PKGBUILD @@ -56,9 +56,9 @@ sha256sums=('415b47e912766cd07f9f52e95bc6470b835acf1d6f566ae32e66ba8be608f33e' '9c9c280be968f06d269167943680fb72a26fbb05d8c15f60507e316e8a9075d5' 'b94b2e88f63cfb7087486508b8139599c89f96d7a4181c61fec4b4e250ca327a' 'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711' - 'fa20edc66efbb4d172a028a1851bcbb635372ce56c81c0b434bf4e211a6ca728' - '85c7fd0fc70d3bce1a6949fd1062c6d5bc62507636e50200432cfb7b22cbef47' - '30f670b9ca3e5783aa5029f4d0407cec5f6d5bef7c41303b50b6fb312559bc65') + '717d167a72837361f016bbe2ef50b42defc28a095f0c0daadcfce56545bf9677' + 'c533c64de6c0c3d7675c96e032093255893305ab337394bf814da58342328b3f' + '7b14049f77b7f4f112f82eea3570e2e0d3bce4cc075466f699564f2795afbd2f') # Possible replacements are listed in build/linux/unbundle/replace_gn_files.py # Keys are the names in the above script; values are the dependencies in Arch