Hi Andrew,
Good news! After enhance the GenFw tool, I finally enable the clang LTO build 
on edk2 and pass test on the OVMF three platforms (OvmfPkgIa32.dsc, 
OvmfPkgX64.dsc, OvmfPkgIa32X64.dsc) in my side . Below is the code size 
comparing data between VS2015x86 and CLANGLTO38. You can see they are quite 
close and their gap is almost less than 10%.


I’ve push all my enhancement in edk2 llvm branch:  
https://github.com/shijunjing/edk2/tree/llvm, and please use “git diff master 
--name-only” to see all my updated from master.

Thank you again for the valuable advices during the enabling.

Image
toolchain

RELEASE IA32 PeiCore.efi

DEBUG IA32 PeiCore.efi

RELEASE X64 PeiCore.efi

DEBUG X64 PeiCore.efi

RELEASE X64 DxeCore.efi

DEBUG X64 DxeCore.efi

RELEASE IA32 StatusCodePei.efi

DEBUG IA32 StatusCodePei.efi

RELEASE X64 Timer.efi

DEBUG X64 Timer.efi

VS2015x86

20,512

40,832

25,440

47,808

97,600

141,216

1,408

8,736

1,888

9,920

CLANGLTO38

22,656

42,176

27,200

46,912

103,616

142,080

1,344

7,872

1,664

8,576

(CLANGLTO38 - VS2015x86)/ VS2015x86

10.45%

3.29%

6.9%

-1.8%

6.1%

0.6%

-4.5%

-9.8%

-11.8%

-13.5%


Image build commands:

VS2015x86:
build -a IA32 -t VS2015x86-p OvmfPkg\OvmfPkgIa32.dsc -n 5 -b RELEASE
build -a IA32 -t VS2015x86-p OvmfPkg\OvmfPkgIa32.dsc -n 5 -b DEBUG 
-DDEBUG_ON_SERIAL_PORT
build -a X64 -t VS2015x86-p OvmfPkg\OvmfPkgX64.dsc -n 5 -b RELEASE
build -a X64 -t VS2015x86-p OvmfPkg\OvmfPkgX64.dsc -n 5 -b DEBUG 
-DDEBUG_ON_SERIAL_PORT

CLANGLTO38:
build -a IA32 -t CLANGLTO38 -p OvmfPkg/OvmfPkgIa32.dsc -n 5 -b RELEASE
build -a IA32 -t CLANGLTO38 -p OvmfPkg/OvmfPkgIa32.dsc -n 5 -b DEBUG 
-DDEBUG_ON_SERIAL_PORT
build -a X64 -t CLANGLTO38 -p OvmfPkg/OvmfPkgX64.dsc -n 5 -b RELEASE
build -a X64 -t CLANGLTO38 -p OvmfPkg/OvmfPkgX64.dsc -n 5  -b DEBUG 
-DDEBUG_ON_SERIAL_PORT


Steven Shi
Intel\SSG\STO\UEFI Firmware

Tel: +86 021-61166522
iNet: 821-6522
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to