From owner-freebsd-toolchain@freebsd.org Wed Jan 11 19:51:20 2017 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 62E15CAB9A0 for ; Wed, 11 Jan 2017 19:51:20 +0000 (UTC) (envelope-from rdivacky@vlakno.cz) Received: from vlakno.cz (mail.vlakno.cz [91.217.96.224]) by mx1.freebsd.org (Postfix) with ESMTP id 2AACB15B0; Wed, 11 Jan 2017 19:51:19 +0000 (UTC) (envelope-from rdivacky@vlakno.cz) Received: by vlakno.cz (Postfix, from userid 1002) id 4547412CB9F; Wed, 11 Jan 2017 20:48:44 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=vlakno.cz; s=mail; t=1484164124; bh=bdbTvatiYlUH1uv41TCfIAYixFtSemR+za9NJPPChcc=; h=Date:From:To:Cc:Subject:References:In-Reply-To; b=gsViBZNjg3Ske/jDAiB7utVjxT5PsAIU2A7fCYy8es6yrhu01quSHA/5BEkeX2mO3 bMckSu8c7xFw4eFULCpzikN9sv070tcwu7ZCJyaEsRTaxMrj02XexisMSzBYJPegNh EVcAhzoecBlRkJb3pNaBbwmlgiCfTn65nJW+uo2Y= Date: Wed, 11 Jan 2017 20:48:44 +0100 From: Roman Divacky To: Mark Millard Cc: Ed Maste , FreeBSD Toolchain Subject: Re: /usr/bin/ld.lld on powerpc64: produces a.out for which: ld-elf.so.1: assert failed: /usr/src/libexec/rtld-elf/powerpc64/reloc.c:374 Message-ID: <20170111194844.GA16135@vlakno.cz> References: <7139F615-8F18-4EDC-9051-5FFEC0C4057F@dsl-only.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.2 (2016-11-26) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Jan 2017 19:51:20 -0000 Can you try this patch? Index: tools/lld/ELF/Target.cpp =================================================================== --- tools/lld/ELF/Target.cpp (revision 291691) +++ tools/lld/ELF/Target.cpp (working copy) @@ -1062,7 +1062,8 @@ } PPC64TargetInfo::PPC64TargetInfo() { - PltRel = GotRel = R_PPC64_GLOB_DAT; + GotRel = R_PPC64_GLOB_DAT; + PltRel = R_PPC64_JMP_SLOT; RelativeRel = R_PPC64_RELATIVE; GotEntrySize = 8; GotPltEntrySize = 8; On Wed, Jan 11, 2017 at 09:47:34AM -0800, Mark Millard wrote: > > On 2017-Jan-11, at 8:07 AM, Ed Maste wrote: > > > On 11 January 2017 at 04:15, Mark Millard wrote: > >> > >> # ./a.out > >> ld-elf.so.1: assert failed: /usr/src/libexec/rtld-elf/powerpc64/reloc.c:374 > >> Abort trap (core dumped) > > > > Would you paste the output of `readelf -r a.out`? > > Here you go, for ld.lld and for ld.bfd . . . > > For -fuse-ld=lld : > > # readelf -r a.out > > Relocation section with addend (.rela.plt): > r_offset r_info r_type st_value st_name + r_addend > 000010030038 000300000014 0000000000000000 atexit + 0 > 000010030040 000200000014 0000000000000000 _init_tls + 0 > 000010030048 000500000014 0000000000000000 exit + 0 > > For -fuse-ld=bfd : > > # readelf -r a.out > > Relocation section with addend (.rela.plt): > r_offset r_info r_type st_value st_name + r_addend > 000010010cb8 000300000015 0000000000000000 atexit + 0 > 000010010cd0 000400000015 0000000000000000 _init_tls + 0 > 000010010ce8 000600000015 0000000000000000 exit + 0 > > These were done on the powerpc64 machine (native). > > > === > Mark Millard > markmi at dsl-only.net > _______________________________________________ > freebsd-toolchain@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain > To unsubscribe, send any mail to "freebsd-toolchain-unsubscribe@freebsd.org"