public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Rebecca Cran" <rebecca@bsdio.com>
To: "Yao, Jiewen" <jiewen.yao@intel.com>,
	"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: Tue, 2 May 2023 08:23:00 -0600	[thread overview]
Message-ID: <86788472-2e1d-fa5d-30f1-9b2a7f139339@bsdio.com> (raw)
In-Reply-To: <PH0PR11MB5879CFA73300BBBBA09470778C6F9@PH0PR11MB5879.namprd11.prod.outlook.com>

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


  reply	other threads:[~2023-05-02 14:23 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 [this message]
2023-05-05  2:00         ` 回复: " gaoliming
2023-05-05  2:02           ` Yao, Jiewen
2023-05-05  2:11             ` Rebecca Cran
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=86788472-2e1d-fa5d-30f1-9b2a7f139339@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