On 9 Jul 2019, at 04:54, Tom Stellard <tstel...@redhat.com> wrote: > > On 07/08/2019 11:51 AM, Dimitry Andric wrote: >> On 24 Jun 2019, at 20:40, Tom Stellard via cfe-commits >> <cfe-commits@lists.llvm.org> wrote: >>> >>> Author: tstellar >>> Date: Mon Jun 24 11:40:58 2019 >>> New Revision: 364217 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=364217&view=rev >>> Log: >>> Merging r360861: >>> >>> ------------------------------------------------------------------------ >>> r360861 | mstorsjo | 2019-05-15 23:49:13 -0700 (Wed, 15 May 2019) | 13 lines >>> >>> [PPC64][libunwind] Fix r2 not properly restored >> .... >>> Modified: libunwind/branches/release_80/src/assembly.h >>> URL: >>> http://llvm.org/viewvc/llvm-project/libunwind/branches/release_80/src/assembly.h?rev=364217&r1=364216&r2=364217&view=diff >>> ============================================================================== >>> --- libunwind/branches/release_80/src/assembly.h (original) >>> +++ libunwind/branches/release_80/src/assembly.h Mon Jun 24 11:40:58 2019 >>> @@ -35,6 +35,20 @@ >>> #define SEPARATOR ; >>> #endif >>> >>> +#if defined(__powerpc64__) && (!defined(_CALL_ELF) || _CALL_ELF == 1) >>> +#define PPC64_OPD1 .section .opd,"aw",@progbits SEPARATOR >>> +#define PPC64_OPD2 SEPARATOR \ >>> + .p2align 3 SEPARATOR \ >>> + .quad .Lfunc_begin0 SEPARATOR \ >>> + .quad .TOC.@tocbase SEPARATOR \ >>> + .quad 0 SEPARATOR \ >>> + .text SEPARATOR \ >>> +.Lfunc_begin0: >>> +#else >>> +#define PPC64_OPD1 >>> +#define PPC64_OPD2 >>> +#endif >>> + >>> #define GLUE2(a, b) a ## b >>> #define GLUE(a, b) GLUE2(a, b) >>> #define SYMBOL_NAME(name) GLUE(__USER_LABEL_PREFIX__, name) >>> @@ -95,7 +109,9 @@ >>> .globl SYMBOL_NAME(name) SEPARATOR \ >>> EXPORT_SYMBOL(name) SEPARATOR \ >>> SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \ >>> - SYMBOL_NAME(name): >>> + PPC64_OPD1 \ >>> + SYMBOL_NAME(name): \ >>> + PPC64_OPD2 >>> >>> #define DEFINE_LIBUNWIND_PRIVATE_FUNCTION(name) \ >>> .globl SYMBOL_NAME(name) SEPARATOR \ >>> >> >> I think this merge missed that the DEFINE_LIBUNWIND_PRIVATE_FUNCTION >> macro went away in r357640 ("[libunwind] Export the unw_* symbols as >> weak symbols"). >> >> It looks like the PPC64_OPD1 and PPC64_OPD2 lines should also be added >> to the expansion of DEFINE_LIBUNWIND_PRIVATE_FUNCTION? >> > > Is someone else able to try to remerge and fix this up? I don't have > a good way to test this. If we can't get this resolved by Wednesday, > I am going to revert it, because it's the only thing blocking the release > at this point.
I reverted the merge in https://reviews.llvm.org/rL365539, and reapplied it with the additional lines in https://reviews.llvm.org/rL365542. I hope you don't mind. This is also going to end up in the next merge to FreeBSD's libunwind. -Dimitry
signature.asc
Description: Message signed with OpenPGP
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits