From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id E448D1A1E20 for ; Sun, 7 Aug 2016 02:28:07 -0700 (PDT) Received: by mail-wm0-x241.google.com with SMTP id o80so10269079wme.0 for ; Sun, 07 Aug 2016 02:28:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=PDqtBHq2t8sCLEKzrbt4VZ3aUF0KXKSM7O80Ccv0Iwk=; b=K0cBrPploZvQHhxVMarBFrBgrIlNYAN5ZL56xbeG7USAIvIsXhqjNNaxjlAX6XyARq 6TqR9Wmi5Xc0LR4fc7VkcVEM6qUwmsFcKOdyx0kJZR5cj7dBuWQg9JHwIyoMzh3MS+5J TwKajSsALoezTq7LAsuUPS78FBBbjpxygNfTa+G6qjeaF0gkjE0UiySmh1gyLEEPBlY9 ukiljJmWJI4qhx+KCi9AdITHs5dE+G3jTfF4LVLZlbZWxzzaMdVn9SmenTUL4mZXFrLI lLw0Pf35G2JtL7aL8apDQnv5xMRNP1CI4H+663hs3UJobcODCPD2u4bI1GjXvGCII6Uc ZOeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=PDqtBHq2t8sCLEKzrbt4VZ3aUF0KXKSM7O80Ccv0Iwk=; b=gier/pdcjqNnFfAxVGKsMWVZVq6icXstXwJF5gwaSvvYBmcefbvNaAcT2zf17kT5sj ICrUfmmYalgHp6JE7e2rL5t3AU3p/+3dk0Ab1uTpigiat9Esi5VsNJ8f5e6Nhrjc9Iem VLqI159WXs1T8YSgBTouUcv147Se44mwbwAZlKMWTcFcLjKdlbtj+kl/rRsICbwJWRmf AtwwJU7JgKxFHHM1mOtJezbIH9d5+CfLD9DcJzq8LZsNBeUrTA/0JceEBCIEiwHYnyRq UgSemmlYWkbeFDxnmvIP649DP7cYK0NkWXV2c+sjSivz5KGRZ1Hvy4QLnIz9ylgMFG0v 8okg== X-Gm-Message-State: AEkoouv/NvIGGlWz4Ocuvb91NuyeEsnD9kOmp8klqJ4E/xOm1qNBsE66Iqtv75o544h6fw1uF+l/rkytT8X1xA== X-Received: by 10.28.63.21 with SMTP id m21mr11408673wma.77.1470562086142; Sun, 07 Aug 2016 02:28:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.28.238.198 with HTTP; Sun, 7 Aug 2016 02:28:05 -0700 (PDT) In-Reply-To: References: <1470321767-26921-1-git-send-email-ard.biesheuvel@linaro.org> <1470321767-26921-2-git-send-email-ard.biesheuvel@linaro.org> From: Michael Zimmermann Date: Sun, 7 Aug 2016 11:28:05 +0200 Message-ID: To: Ard Biesheuvel Cc: Yonghong Zhu , "Gao, Liming" , "edk2-devel@lists.01.org" , Leif Lindholm , "Cohen, Eugene" X-Content-Filtered-By: Mailman/MimeDel 2.1.21 Subject: Re: [PATCH 1/3] ArmPkg/ArmSoftFloatLib: disable LTO build for GCC X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Aug 2016 09:28:08 -0000 Content-Type: text/plain; charset=UTF-8 Hi, I researched a little bit on this topic and it seems that you have to add fuse-linker-plugin to the build options to enable lto plugins. I did that and unfortunately it had no effect. After running gcc through strace I could see that liblto_plugin.so does get loaded from the cross-toolchains libexec directory though. Does that mean that the toolchain I use (GCC5 from releases.linaro.org and GCC6 from git.linaro.org) generates lto objects which it can't process with the shipped plugin? btw, if I compile using my hosts native GCC(x64) but for IA32 I get lto errors even for MdePkg. It looks like the fno-lto option is a very bad workaround and can break any time using specific configurations. Thanks Michael On Sat, Aug 6, 2016 at 4:53 PM, Michael Zimmermann wrote: > not sure since I only tested it for ARM this time. > these are the failing objects: > SoftFloat: > ld: __aeabi_dcmpeq.obj: plugin needed to handle lto object > ld: __aeabi_fcmpeq.obj: plugin needed to handle lto object > ld: __aeabi_dcmpge.obj: plugin needed to handle lto object > ld: __aeabi_fcmpge.obj: plugin needed to handle lto object > ld: __aeabi_dcmpgt.obj: plugin needed to handle lto object > ld: __aeabi_fcmpgt.obj: plugin needed to handle lto object > ld: __aeabi_dcmple.obj: plugin needed to handle lto object > ld: __aeabi_fcmple.obj: plugin needed to handle lto object > ld: __aeabi_dcmplt.obj: plugin needed to handle lto object > ld: __aeabi_fcmplt.obj: plugin needed to handle lto object > > LibC: > ld: fixunsdfsi.obj: plugin needed to handle lto object > ld: fixunssfsi.obj: plugin needed to handle lto object > ld: floatunsidf.obj: plugin needed to handle lto object > ld: floatunsisf.obj: plugin needed to handle lto object > > Thanks > Michael > > On Sat, Aug 6, 2016 at 4:42 PM, Ard Biesheuvel > wrote: > >> On 6 August 2016 at 16:18, Michael Zimmermann >> wrote: >> > StdLib/LibC/Softfloat/Softfloat.inf and StdLib/LibC/LibC.inf need this >> flags >> > too. >> > >> >> Just for ARM? >> > >