From: "Rebecca Cran" <rebecca@bsdio.com>
To: "Yao, Jiewen" <jiewen.yao@intel.com>,
"Gao, Liming" <gaoliming@byosoft.com.cn>,
"devel@edk2.groups.io" <devel@edk2.groups.io>,
"Wang, Jian J" <jian.j.wang@intel.com>,
"Lu, Xiaoyu1" <xiaoyu1.lu@intel.com>,
"Jiang, Guomin" <guomin.jiang@intel.com>,
'Andrew Fish' <afish@apple.com>, "Ni, Ray" <ray.ni@intel.com>,
"Chiu, Chasel" <chasel.chiu@intel.com>,
"Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>,
"Zeng, Star" <star.zeng@intel.com>
Subject: Re: [edk2-devel] [PATCH v6 08/16] Add GCC and GCCNOLTO toolchains to tools_def.txt and update packages
Date: Thu, 4 May 2023 20:11:46 -0600 [thread overview]
Message-ID: <d0746dc3-f6cd-7789-1c00-3d31298ce646@bsdio.com> (raw)
In-Reply-To: <MW4PR11MB5872039DAC6B32981E909BD38C729@MW4PR11MB5872.namprd11.prod.outlook.com>
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 <gaoliming@byosoft.com.cn>
>> Sent: Friday, May 5, 2023 10:00 AM
>> To: devel@edk2.groups.io; rebecca@bsdio.com; Yao, Jiewen
>> <jiewen.yao@intel.com>; Wang, Jian J <jian.j.wang@intel.com>; Lu, Xiaoyu1
>> <xiaoyu1.lu@intel.com>; Jiang, Guomin <guomin.jiang@intel.com>; 'Andrew
>> Fish' <afish@apple.com>; Ni, Ray <ray.ni@intel.com>; Chiu, Chasel
>> <chasel.chiu@intel.com>; Desimone, Nathaniel L
>> <nathaniel.l.desimone@intel.com>; Zeng, Star <star.zeng@intel.com>
>> 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 <devel@edk2.groups.io> 代表 Rebecca
>> Cran
>>> 发送时间: 2023年5月2日 22:23
>>> 收件人: Yao, Jiewen <jiewen.yao@intel.com>; devel@edk2.groups.io;
>> Wang,
>>> Jian J <jian.j.wang@intel.com>; Lu, Xiaoyu1 <xiaoyu1.lu@intel.com>; Jiang,
>>> Guomin <guomin.jiang@intel.com>; Andrew Fish <afish@apple.com>; Ni,
>> Ray
>>> <ray.ni@intel.com>; Chiu, Chasel <chasel.chiu@intel.com>; Desimone,
>>> Nathaniel L <nathaniel.l.desimone@intel.com>; Zeng, Star
>>> <star.zeng@intel.com>
>>> 主题: 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
>>>
>>>
>>>
>>>
>>>
>>
next prev parent reply other threads:[~2023-05-05 2:11 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-01 16:08 [PATCH v6 00/16] BaseTools,CryptoPkg,EmulatorPkg,MdePkg,others: Delete CLANG35,CLANG38,VS2008-2013,EBC, deprecate GCC48,GCC49,GCC5, add GCC and GCCNOLTO, update CLANGDWARF Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 01/16] BaseTools: Remove VS2008, 2010, 2012 and 2013 toolchain definitions Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 02/16] BaseTools: Remove VS2008-VS2013 remnants Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 03/16] MdePkg: " Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 04/16] edksetup.bat: " Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 05/16] BaseTools: Remove unused IPHONE_TOOLS and SOURCERY_CYGWIN_TOOLS defs Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 06/16] BaseTools: Remove EBC (EFI Byte Code) compiler definitions Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 07/16] BaseTools: Update VS toolchain descriptions in tools_def.txt.template Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 08/16] Add GCC and GCCNOLTO toolchains to tools_def.txt and update packages Rebecca Cran
2023-05-02 0:06 ` Rebecca Cran
2023-05-02 6:35 ` [edk2-devel] " Yao, Jiewen
2023-05-02 14:23 ` Rebecca Cran
2023-05-05 2:00 ` 回复: " gaoliming
2023-05-05 2:02 ` Yao, Jiewen
2023-05-05 2:11 ` Rebecca Cran [this message]
2023-05-05 7:41 ` 回复: " gaoliming
2023-05-05 9:14 ` Rebecca Cran
2023-05-05 2:05 ` 回复: " Rebecca Cran
[not found] ` <175B2AD2536192C7.26969@groups.io>
2023-05-02 0:08 ` Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 09/16] BaseTools/Conf/tools_def.template: Add section for deprecated toolchains Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 10/16] BaseTools: Add ARM and AARCH64 CLANGDWARF support in tools_def.template Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 11/16] BaseTools: As with CLANGDWARF IA32 and X64, use lld for ARM and AARCH64 Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 12/16] BaseTools: Remove CLANG35 toolchain from tools_def.template Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 13/16] BaseTools: Delete CLANG38 " Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 14/16] BaseTools/Conf/tools_def.template: Bump VERSION to 3.00 Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 15/16] CryptoPkg: Delete CLANG35 and CLANG38 build flags Rebecca Cran
2023-05-01 16:08 ` [PATCH v6 16/16] CryptoPkg: Copy CLANGPDB build flags to CLANGDWARF Rebecca Cran
2023-05-01 18:36 ` [edk2-devel] [PATCH v6 00/16] BaseTools,CryptoPkg,EmulatorPkg,MdePkg,others: Delete CLANG35,CLANG38,VS2008-2013,EBC, deprecate GCC48,GCC49,GCC5, add GCC and GCCNOLTO, update CLANGDWARF Michael D Kinney
2023-05-04 12:42 ` Rebecca Cran
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d0746dc3-f6cd-7789-1c00-3d31298ce646@bsdio.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox