From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by mx.groups.io with SMTP id smtpd.web10.18050.1683252709291335544 for ; Thu, 04 May 2023 19:11:49 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=@bsdio.com header.s=fm1 header.b=YQYP/VrG; spf=pass (domain: bsdio.com, ip: 66.111.4.28, mailfrom: rebecca@bsdio.com) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 3168F5C0284; Thu, 4 May 2023 22:11:48 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Thu, 04 May 2023 22:11:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdio.com; h=cc :content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm1; t= 1683252708; x=1683339108; bh=EOl9fefuCpTmgWu9OQrRV8GOPymjm+/Yc6x OHhbTI4Q=; b=YQYP/VrGAgSFJxHaHvOzRkz+AB2VMJHugZNZlqEgA8EbjofoXey 4Tq1YvdHTGpcxM0ots+dz8J7xNq3WXhOKAUOCFUhKpYxQ15TmX4NnYVTMxlnxlsj +o8Ue9bS4GCwahvsCY4PTcAv1Ful62SKLCIPgEPGJHqIlq8NDNm8EFf08vPa7Fug Vrl5Kbdmk1BVG7iLQHq24sAly7PUlJgyKMmr6Utpnj08y7KmCswM/6fBv0szYpXm cjAGrN6IjY9XPcAgiAfKHeriaC/bz93waKmNpeyORNQ3YbJoy0OauPlpeRHCdCcN qAHb63EahEwYn7YSs0KHaOs39UY7i2acUQA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1683252708; x= 1683339108; bh=EOl9fefuCpTmgWu9OQrRV8GOPymjm+/Yc6xOHhbTI4Q=; b=H dsb+CJTsCyE1B0ke7isL+a4LyQ7T812bhApoYcaIYCzsOGovZt1jlb0WP51cXW1o EiKsxNH7+rYFR47rA0W0I5GE2n4UhTSw5XfXe+SDXANKc4YDiC8HFov4n8oSQlXj zjH/fBeauNAYwSTTuRQwnX6h6ji+lMO0B3oEBJ442vcOC775PY7Coe6T7KjJwcNz UbgO+awM1y2gTyih7dRQOQLqIJApXunikjT9y90JispHyrjFo6HOjXYqL4rO6V1f J4vlQ0utuJ3idubq3ORsprhBI7IHVyLa+yziy6NfzVwOJiqSeK/QaQBAAUYDoHA0 2DV41VKF52JXNbNXjqwWg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeefuddgheejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvfhfhjggtgfesthekredttdefjeenucfhrhhomheptfgvsggv tggtrgcuvehrrghnuceorhgvsggvtggtrgessghsughiohdrtghomheqnecuggftrfgrth htvghrnhepkeeikeeiueffhfetheeuueetvdfgfeefgffgieeujedvhfevfefftdeihfet tedunecuffhomhgrihhnpehgrhhouhhpshdrihhonecuvehluhhsthgvrhfuihiivgeptd enucfrrghrrghmpehmrghilhhfrhhomheprhgvsggvtggtrgessghsughiohdrtghomh X-ME-Proxy: Feedback-ID: i5b994698:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 4 May 2023 22:11:46 -0400 (EDT) Message-ID: Date: Thu, 4 May 2023 20:11:46 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [edk2-devel] [PATCH v6 08/16] Add GCC and GCCNOLTO toolchains to tools_def.txt and update packages To: "Yao, Jiewen" , "Gao, Liming" , "devel@edk2.groups.io" , "Wang, Jian J" , "Lu, Xiaoyu1" , "Jiang, Guomin" , 'Andrew Fish' , "Ni, Ray" , "Chiu, Chasel" , "Desimone, Nathaniel L" , "Zeng, Star" References: <20230501160839.884391-1-rebecca@bsdio.com> <20230501160839.884391-9-rebecca@bsdio.com> <8387e266-9e03-38ea-340b-2db994971bd0@bsdio.com> <86788472-2e1d-fa5d-30f1-9b2a7f139339@bsdio.com> <001d01d97ef5$4d941d20$e8bc5760$@byosoft.com.cn> From: "Rebecca Cran" In-Reply-To: Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit If you look at the entire block, GCC49 also has -flto, so since GCCNOLTO is a copy of GCC49, that's why it has -flto: # Append build options for EDK and EDKII drivers (= is Append, == is Replace)   # Enable link-time optimization when building with GCC49 or GCCNOLTO   *_GCC49_IA32_CC_FLAGS = -flto   *_GCC49_IA32_DLINK_FLAGS = -flto   *_GCCNOLTO_IA32_CC_FLAGS = -flto   *_GCCNOLTO_IA32_DLINK_FLAGS = -flto   *_GCC5_IA32_CC_FLAGS = -fno-pic   *_GCC5_IA32_DLINK_FLAGS = -no-pie   *_GCC5_IA32_ASLCC_FLAGS = -fno-pic   *_GCC5_IA32_ASLDLINK_FLAGS = -no-pie   *_GCC_IA32_CC_FLAGS = -fno-pic   *_GCC_IA32_DLINK_FLAGS = -no-pie   *_GCC_IA32_ASLCC_FLAGS = -fno-pic   *_GCC_IA32_ASLDLINK_FLAGS = -no-pie Hopefully we can remove the flag in future, but since it's in IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc and not a main .dsc file I'm not sure it's very important. -- Rebecca Cran On 5/4/23 20:02, Yao, Jiewen wrote: > Thanks Liming. > > I am not sure below change is expected or not. Please feedback if possible. Thank you! > >> Why we add "-flto" for "NOLTO" ? >>>> + *_GCCNOLTO_IA32_CC_FLAGS = -flto >>>> + *_GCCNOLTO_IA32_DLINK_FLAGS = -flto > >> -----Original Message----- >> From: gaoliming >> Sent: Friday, May 5, 2023 10:00 AM >> To: devel@edk2.groups.io; rebecca@bsdio.com; Yao, Jiewen >> ; Wang, Jian J ; Lu, Xiaoyu1 >> ; Jiang, Guomin ; 'Andrew >> Fish' ; Ni, Ray ; Chiu, Chasel >> ; Desimone, Nathaniel L >> ; Zeng, Star >> Subject: 回复: [edk2-devel] [PATCH v6 08/16] Add GCC and GCCNOLTO >> toolchains to tools_def.txt and update packages >> >> Rebecca: >> I understand this change is to add GCC and GCCNOLTO toolchain. GCC is >> same to GCC5, GCCNOLTO is same to GCC49. So, new tool chain copies the >> same changes from origin one. Right? >> >> Thanks >> Liming >>> -----邮件原件----- >>> 发件人: devel@edk2.groups.io 代表 Rebecca >> Cran >>> 发送时间: 2023年5月2日 22:23 >>> 收件人: Yao, Jiewen ; devel@edk2.groups.io; >> Wang, >>> Jian J ; Lu, Xiaoyu1 ; Jiang, >>> Guomin ; Andrew Fish ; Ni, >> Ray >>> ; Chiu, Chasel ; Desimone, >>> Nathaniel L ; Zeng, Star >>> >>> 主题: Re: [edk2-devel] [PATCH v6 08/16] Add GCC and GCCNOLTO >> toolchains >>> to tools_def.txt and update packages >>> >>> On 5/2/23 00:35, Yao, Jiewen wrote: >>>> Have you evaluated size impact with this new compiler option? Especially >>> crypto library. >>>> Bigger? Smaller? >>> The increase in size when we disable LTO doesn't seem too bad: >>> >>> With LTO: >>> >>> -rwxrwxr-x 1 bcran bcran 13M May 2 08:11 >>> CryptoDxe_41A491D1-A972-468B-A299-DABF415A43B7.debug >>> -rwxrwxr-x 1 bcran bcran 13M May 2 08:11 >>> CryptoDxe_AA83B296-F6EA-447F-B013-E80E98629CF8.debug >>> -rwxrwxr-x 1 bcran bcran 11M May 2 08:11 >>> CryptoDxe_9FBDAD27-910C-4229-9EFF-A93BB5FE18C6.debug >>> -rwxrwxr-x 1 bcran bcran 11M May 2 08:11 >>> CryptoDxe_ADD6D05A-52A2-437B-98E7-DBFDA89352CD.debug >>> -rwxrwxr-x 1 bcran bcran 8.5M May 2 08:11 >>> CryptoSmm_C1760694-AB3A-4532-8C6D-52D8F86EB1AA.debug >>> -rwxrwxr-x 1 bcran bcran 8.3M May 2 08:11 >>> CryptoSmm_1930CE7E-6598-48ED-8AB1-EBE7E85EC254.debug >>> -rwxrwxr-x 1 bcran bcran 8.0M May 2 08:11 >>> CryptoPei_A10827AD-7598-4955-B661-52EE2B62B057.debug >>> -rwxrwxr-x 1 bcran bcran 7.8M May 2 08:11 >>> CryptoPei_D51FCE59-6860-49C0-9B35-984470735D17.debug >>> -rwxrwxr-x 1 bcran bcran 7.0M May 2 08:11 >>> BaseCryptLibUnitTestShell.debug >>> -rwxrwxr-x 1 bcran bcran 7.0M May 2 08:11 >>> CryptoSmm_828959D3-CEA6-4B79-B1FC-5AFA0D7F2144.debug >>> -rwxrwxr-x 1 bcran bcran 6.9M May 2 08:11 >>> CryptoDxe_31C17C54-325D-47D5-8622-888098F10E44.debug >>> -rwxrwxr-x 1 bcran bcran 6.7M May 2 08:11 >>> CryptoSmm_E4D7D1E3-E886-4412-A442-EFD6F2502DD3.debug >>> -rwxrwxr-x 1 bcran bcran 6.7M May 2 08:11 >>> CryptoSmm_1A1C9E13-5722-4636-AB73-31328EDE8BAF.debug >>> -rwxrwxr-x 1 bcran bcran 6.5M May 2 08:11 >>> CryptoPei_DCC9CB49-7BE2-47C6-864E-6DCC932360F9.debug >>> -rwxrwxr-x 1 bcran bcran 6.2M May 2 08:11 >>> CryptoPei_EBD49F5C-6D8B-40D1-A56D-9AFA485A8661.debug >>> -rwxrwxr-x 1 bcran bcran 6.2M May 2 08:11 >>> CryptoPei_C693A250-6B36-49B9-B7F3-7283F8136A72.debug >>> -rw-rw-r-- 1 bcran bcran 1005K May 2 08:11 >>> CryptoDxe_41A491D1-A972-468B-A299-DABF415A43B7.efi >>> -rw-rw-r-- 1 bcran bcran 903K May 2 08:11 >>> CryptoDxe_AA83B296-F6EA-447F-B013-E80E98629CF8.efi >>> -rw-rw-r-- 1 bcran bcran 811K May 2 08:11 >>> CryptoDxe_9FBDAD27-910C-4229-9EFF-A93BB5FE18C6.efi >>> -rw-rw-r-- 1 bcran bcran 755K May 2 08:11 >>> CryptoSmm_C1760694-AB3A-4532-8C6D-52D8F86EB1AA.efi >>> -rw-rw-r-- 1 bcran bcran 724K May 2 08:11 >>> CryptoPei_A10827AD-7598-4955-B661-52EE2B62B057.efi >>> -rw-rw-r-- 1 bcran bcran 710K May 2 08:11 >>> CryptoDxe_ADD6D05A-52A2-437B-98E7-DBFDA89352CD.efi >>> -rw-rw-r-- 1 bcran bcran 654K May 2 08:11 >>> CryptoSmm_1930CE7E-6598-48ED-8AB1-EBE7E85EC254.efi >>> -rw-rw-r-- 1 bcran bcran 623K May 2 08:11 >>> CryptoPei_D51FCE59-6860-49C0-9B35-984470735D17.efi >>> -rw-rw-r-- 1 bcran bcran 585K May 2 08:11 >>> CryptoSmm_828959D3-CEA6-4B79-B1FC-5AFA0D7F2144.efi >>> -rw-rw-r-- 1 bcran bcran 560K May 2 08:11 BaseCryptLibUnitTestShell.efi >>> -rw-rw-r-- 1 bcran bcran 555K May 2 08:11 >>> CryptoPei_DCC9CB49-7BE2-47C6-864E-6DCC932360F9.efi >>> -rw-rw-r-- 1 bcran bcran 500K May 2 08:11 >>> CryptoDxe_31C17C54-325D-47D5-8622-888098F10E44.efi >>> -rw-rw-r-- 1 bcran bcran 485K May 2 08:11 >>> CryptoSmm_1A1C9E13-5722-4636-AB73-31328EDE8BAF.efi >>> -rw-rw-r-- 1 bcran bcran 485K May 2 08:11 >>> CryptoSmm_E4D7D1E3-E886-4412-A442-EFD6F2502DD3.efi >>> -rw-rw-r-- 1 bcran bcran 454K May 2 08:11 >>> CryptoPei_C693A250-6B36-49B9-B7F3-7283F8136A72.efi >>> -rw-rw-r-- 1 bcran bcran 454K May 2 08:11 >>> CryptoPei_EBD49F5C-6D8B-40D1-A56D-9AFA485A8661.efi >>> >>> Without LTO: >>> -rwxrwxr-x 1 bcran bcran 14M May 2 08:13 >>> CryptoDxe_41A491D1-A972-468B-A299-DABF415A43B7.debug >>> -rwxrwxr-x 1 bcran bcran 14M May 2 08:13 >>> CryptoDxe_AA83B296-F6EA-447F-B013-E80E98629CF8.debug >>> -rwxrwxr-x 1 bcran bcran 12M May 2 08:13 >>> CryptoDxe_9FBDAD27-910C-4229-9EFF-A93BB5FE18C6.debug >>> -rwxrwxr-x 1 bcran bcran 12M May 2 08:13 >>> CryptoDxe_ADD6D05A-52A2-437B-98E7-DBFDA89352CD.debug >>> -rwxrwxr-x 1 bcran bcran 9.5M May 2 08:13 >>> CryptoSmm_C1760694-AB3A-4532-8C6D-52D8F86EB1AA.debug >>> -rwxrwxr-x 1 bcran bcran 9.2M May 2 08:13 >>> CryptoSmm_1930CE7E-6598-48ED-8AB1-EBE7E85EC254.debug >>> -rwxrwxr-x 1 bcran bcran 8.9M May 2 08:13 >>> CryptoPei_A10827AD-7598-4955-B661-52EE2B62B057.debug >>> -rwxrwxr-x 1 bcran bcran 8.7M May 2 08:13 >>> CryptoPei_D51FCE59-6860-49C0-9B35-984470735D17.debug >>> -rwxrwxr-x 1 bcran bcran 8.0M May 2 08:13 >>> CryptoSmm_828959D3-CEA6-4B79-B1FC-5AFA0D7F2144.debug >>> -rwxrwxr-x 1 bcran bcran 7.9M May 2 08:13 >>> BaseCryptLibUnitTestShell.debug >>> -rwxrwxr-x 1 bcran bcran 7.9M May 2 08:12 >>> CryptoDxe_31C17C54-325D-47D5-8622-888098F10E44.debug >>> -rwxrwxr-x 1 bcran bcran 7.7M May 2 08:12 >>> CryptoSmm_1A1C9E13-5722-4636-AB73-31328EDE8BAF.debug >>> -rwxrwxr-x 1 bcran bcran 7.7M May 2 08:13 >>> CryptoSmm_E4D7D1E3-E886-4412-A442-EFD6F2502DD3.debug >>> -rwxrwxr-x 1 bcran bcran 7.4M May 2 08:13 >>> CryptoPei_DCC9CB49-7BE2-47C6-864E-6DCC932360F9.debug >>> -rwxrwxr-x 1 bcran bcran 7.2M May 2 08:12 >>> CryptoPei_C693A250-6B36-49B9-B7F3-7283F8136A72.debug >>> -rwxrwxr-x 1 bcran bcran 7.2M May 2 08:13 >>> CryptoPei_EBD49F5C-6D8B-40D1-A56D-9AFA485A8661.debug >>> -rw-rw-r-- 1 bcran bcran 1.1M May 2 08:13 >>> CryptoDxe_41A491D1-A972-468B-A299-DABF415A43B7.efi >>> -rw-rw-r-- 1 bcran bcran 1011K May 2 08:13 >>> CryptoDxe_AA83B296-F6EA-447F-B013-E80E98629CF8.efi >>> -rw-rw-r-- 1 bcran bcran 914K May 2 08:13 >>> CryptoDxe_9FBDAD27-910C-4229-9EFF-A93BB5FE18C6.efi >>> -rw-rw-r-- 1 bcran bcran 823K May 2 08:13 >>> CryptoSmm_C1760694-AB3A-4532-8C6D-52D8F86EB1AA.efi >>> -rw-rw-r-- 1 bcran bcran 813K May 2 08:13 >>> CryptoDxe_ADD6D05A-52A2-437B-98E7-DBFDA89352CD.efi >>> -rw-rw-r-- 1 bcran bcran 789K May 2 08:13 >>> CryptoPei_A10827AD-7598-4955-B661-52EE2B62B057.efi >>> -rw-rw-r-- 1 bcran bcran 722K May 2 08:13 >>> CryptoSmm_1930CE7E-6598-48ED-8AB1-EBE7E85EC254.efi >>> -rw-rw-r-- 1 bcran bcran 687K May 2 08:13 >>> CryptoPei_D51FCE59-6860-49C0-9B35-984470735D17.efi >>> -rw-rw-r-- 1 bcran bcran 644K May 2 08:13 >>> CryptoSmm_828959D3-CEA6-4B79-B1FC-5AFA0D7F2144.efi >>> -rw-rw-r-- 1 bcran bcran 632K May 2 08:13 BaseCryptLibUnitTestShell.efi >>> -rw-rw-r-- 1 bcran bcran 610K May 2 08:13 >>> CryptoPei_DCC9CB49-7BE2-47C6-864E-6DCC932360F9.efi >>> -rw-rw-r-- 1 bcran bcran 567K May 2 08:12 >>> CryptoDxe_31C17C54-325D-47D5-8622-888098F10E44.efi >>> -rw-rw-r-- 1 bcran bcran 543K May 2 08:12 >>> CryptoSmm_1A1C9E13-5722-4636-AB73-31328EDE8BAF.efi >>> -rw-rw-r-- 1 bcran bcran 543K May 2 08:13 >>> CryptoSmm_E4D7D1E3-E886-4412-A442-EFD6F2502DD3.efi >>> -rw-rw-r-- 1 bcran bcran 508K May 2 08:12 >>> CryptoPei_C693A250-6B36-49B9-B7F3-7283F8136A72.efi >>> -rw-rw-r-- 1 bcran bcran 508K May 2 08:13 >>> CryptoPei_EBD49F5C-6D8B-40D1-A56D-9AFA485A8661.efi >>> >>>> Why we add "-flto" for "NOLTO" ? >>>>>> + *_GCCNOLTO_IA32_CC_FLAGS = -flto >>>>>> + *_GCCNOLTO_IA32_DLINK_FLAGS = -flto >>> I don't know why -flto was added for the GCC49 flags, but when I created >>> the GCCNOLTO flags I copied it because I presume there's a reason this >>> specific test package requires it. >>> >>> >>> -- >>> >>> Rebecca Cran >>> >>> >>> >>> >>> >>