From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io0-x22d.google.com (mail-io0-x22d.google.com [IPv6:2607:f8b0:4001:c06::22d]) (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 173311A1DEC for ; Tue, 2 Aug 2016 04:13:28 -0700 (PDT) Received: by mail-io0-x22d.google.com with SMTP id b62so209180761iod.3 for ; Tue, 02 Aug 2016 04:13:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=yIwKY72Ze6IV4dOSV6VS8M9Ur85fLNspIJKf6XsbSmQ=; b=CDalCjMgkFQiioeHTQlg6JW4QwfVxnggNmduVAXSEf4OPXu4Ev0vzO8OX6e5N1aGxX WlEAiTZZPlJtmDYhyt96skSx3GW7BoE8nkIIDE82FP9wZIW5HKUKKANcvWJO/kV/FU7T 1+TpUlXt5yxzB5RoptS3e2nKzNvWoMJRNh9YE= 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=yIwKY72Ze6IV4dOSV6VS8M9Ur85fLNspIJKf6XsbSmQ=; b=OxvdJrB4IBjk+9A3Oplc0bt+QgduzF+hpyN9NWdhU+j8YFN096wegixeIByhIY2loK 7PcnjDVuTAqz8fK5UTMGnfvA75B8cvx0gp2x3cgNn2LGqst9KRTghVa8RjMGrbxXRt/s 2K3wRFVD3pxQPjB5Rqz7/D7czRrwnee7zHx+YmFl7effH8WCUxReioXShoaHE+jOZOBP XrkNBAhrlkNmfibd6lsxkIbcjmy1Z9g06ptIFA0GOucd5mWcUQzkagUnj7UhQe7WPWpI 7lnJktgMv0i2uL6ZC4NeNwpjbAAF/zB/biiHW7QqlvL7pr9Dnqwgz6wlYDDaGVgTELgp Yj4A== X-Gm-Message-State: AEkoouvb0wPbrG1RF9Zjhy1XQMz+UAAr6uZLHtv6UuN9ooH4EfgkT93rzPqCpj9OWSFjrL9WsREoWF0tjDX1mZAP X-Received: by 10.107.40.133 with SMTP id o127mr58673287ioo.183.1470136407280; Tue, 02 Aug 2016 04:13:27 -0700 (PDT) MIME-Version: 1.0 Received: by 10.36.204.195 with HTTP; Tue, 2 Aug 2016 04:13:26 -0700 (PDT) In-Reply-To: <77334356-ea43-0d09-250b-08385791382e@redhat.com> References: <1470038497-2536-1-git-send-email-ard.biesheuvel@linaro.org> <77334356-ea43-0d09-250b-08385791382e@redhat.com> From: Ard Biesheuvel Date: Tue, 2 Aug 2016 13:13:26 +0200 Message-ID: To: Laszlo Ersek Cc: Jordan Justen , "Shi, Steven" , "Zhu, Yonghong" , "Gao, Liming" , edk2-devel-01 , Leif Lindholm Subject: Re: [PATCH v5 0/8] BaseTools: add support for GCC5 in LTO mode 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: Tue, 02 Aug 2016 11:13:28 -0000 Content-Type: text/plain; charset=UTF-8 On 2 August 2016 at 12:57, Laszlo Ersek wrote: > On 08/02/16 11:03, Ard Biesheuvel wrote: >> On 1 August 2016 at 10:01, Ard Biesheuvel wrote: >>> This v5 to introduce GCC5 is now a 8 piece series, including some >>> preparatory cleanup patches that allow all GCC4x and CLANG35 toolchains >>> to switch to using 'gcc' as the linker. This allows us to get rid of >>> the wrapper script to marshall ld arguments in order to make them >>> understandable by gcc, which is fragile and likely to cause problems in >>> the future. >>> >>> Since there appears to be a natural split between the 'legacy' GCC >>> toolchains UNIXGCC, ELFGCC, and CYGGCC[xASL], both in term of supported >>> architectures [IA32, X64, IPF] vs [IA32, X64, ARM, AARCH64], and in >>> terms of maintenance, these toolchains are not moved to using 'gcc' as >>> the linker, and instead, a new BUILDRULEFAMILY is introduced called GCCLD >>> that will retain the old behavior. >>> >>> The result is that GCC5 can align much more closely with its predecessors, >>> making the expected maintenance burden of supporting GCC back to v4.4 >>> much lower. >>> >>> Changes since v4: >>> - added patch to use 'protected' visibility only for the libraries that >>> define the module entry points (_ModuleEntryPoint), to prevent them from >>> being optimized away by the LTO routines >>> - added Jordan's ack/RBs >>> - add some extra comments to tools_def.template (#8) >>> >> >> Thanks all. Committed as >> >> 1c63516075b3 BaseTools CLANG35: drop problematic use-movt and save-temps options >> ff54bcdf2e4e ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: ignore .hash >> and .note sections >> befb3ba51502 BaseTools UNIXGCC ELFGCC CYGGCC: clone GCC build rule >> family into GCCLD >> a1b8baccc30b BaseTools GCC: use 'gcc' as the linker command for GCC44 and later >> e1458aaded8e ArmPkg: add prebuilt glue binaries for GCC5 LTO support >> 7fd5d619806d BaseTools GCC: drop GNU notes section from EFI image >> 4a8466d4baba BaseTools GCC: introduce GCC5 toolchain to support GCC >> v5.x in LTO mode >> >> with Leif and Liming's R-b. I dropped patch #7, and instead made the >> visibility pragma conditional on whether LTO is disabled. > > Re gcc-5, do we need a patch for "OvmfPkg/build.sh" now? See also > . > Yes, I suppose so.