[edk2-devel] 回复: [PATCH v6 02/11] BaseTools: add -fdirect-access-external-data to clang pie builds

gaoliming via groups.io gaoliming=byosoft.com.cn at groups.io
Thu Jun 1 08:00:42 UTC 2023


Gerd and Ard:
  I want to confirm whether this option should also be added into CLANGPDB_X64_CC_FLAGS.

Thanks
Liming
> -----邮件原件-----
> 发件人: Gerd Hoffmann <kraxel at redhat.com>
> 发送时间: 2023年5月24日 22:06
> 收件人: devel at edk2.groups.io
> 抄送: Daniel Schaefer <git at danielschaefer.me>; Marvin Häuser
> <mhaeuser at posteo.de>; Rebecca Cran <rebecca at bsdio.com>; Oliver Steffen
> <osteffen at redhat.com>; Liming Gao <gaoliming at byosoft.com.cn>; Pawel
> Polawski <ppolawsk at redhat.com>; Chao Li <lichao at loongson.cn>; Ard
> Biesheuvel <ardb+tianocore at kernel.org>; Bob Feng <bob.c.feng at intel.com>;
> Sunil V L <sunilvl at ventanamicro.com>; Michael D Kinney
> <michael.d.kinney at intel.com>; Leif Lindholm <quic_llindhol at quicinc.com>;
> Dongyan Qian <qiandongyan at loongson.cn>; Yuwei Chen
> <yuwei.chen at intel.com>; Baoqi Zhang <zhangbaoqi at loongson.cn>; Zhiguang
> Liu <zhiguang.liu at intel.com>; Gerd Hoffmann <kraxel at redhat.com>; Ard
> Biesheuvel <ardb at kernel.org>
> 主题: [PATCH v6 02/11] BaseTools: add -fdirect-access-external-data to clang
> pie builds
> 
> Tell clang to not use external (via got) references for data access.
> 
> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
> Reviewed-by: Ard Biesheuvel <ardb at kernel.org>
> ---
>  BaseTools/Conf/tools_def.template | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/BaseTools/Conf/tools_def.template
> b/BaseTools/Conf/tools_def.template
> index 503a6687c1f0..92421e3d0118 100755
> --- a/BaseTools/Conf/tools_def.template
> +++ b/BaseTools/Conf/tools_def.template
> @@ -1921,15 +1921,15 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS
> = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -
>  *_CLANGDWARF_X64_ASLPP_FLAGS          = DEF(GCC_ASLPP_FLAGS)
> DEF(CLANGDWARF_X64_TARGET)
>  *_CLANGDWARF_X64_VFRPP_FLAGS          = DEF(GCC_VFRPP_FLAGS)
> DEF(CLANGDWARF_X64_TARGET)
> 
> -DEBUG_CLANGDWARF_X64_CC_FLAGS         =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz
> -flto DEF(CLANGDWARF_X64_TARGET) -g
> +DEBUG_CLANGDWARF_X64_CC_FLAGS         =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie
> -fdirect-access-external-data -Oz -flto DEF(CLANGDWARF_X64_TARGET) -g
>  DEBUG_CLANGDWARF_X64_DLINK_FLAGS      =
> DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64
> -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small
> -Wl,--apply-dynamic-relocs
>  DEBUG_CLANGDWARF_X64_DLINK2_FLAGS     =
> DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld
> 
> -RELEASE_CLANGDWARF_X64_CC_FLAGS       =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz
> -flto DEF(CLANGDWARF_X64_TARGET)
> +RELEASE_CLANGDWARF_X64_CC_FLAGS       =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie
> -fdirect-access-external-data -Oz -flto DEF(CLANGDWARF_X64_TARGET)
>  RELEASE_CLANGDWARF_X64_DLINK_FLAGS    =
> DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64
> -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small
> -Wl,--apply-dynamic-relocs
>  RELEASE_CLANGDWARF_X64_DLINK2_FLAGS   =
> DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld
> 
> -NOOPT_CLANGDWARF_X64_CC_FLAGS         =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0
> DEF(CLANGDWARF_X64_TARGET) -g
> +NOOPT_CLANGDWARF_X64_CC_FLAGS         =
> DEF(CLANGDWARF_ALL_CC_FLAGS) -m64
> "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie
> -fdirect-access-external-data -O0 DEF(CLANGDWARF_X64_TARGET) -g
>  NOOPT_CLANGDWARF_X64_DLINK_FLAGS      =
> DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64
> -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small
> -Wl,--apply-dynamic-relocs
>  NOOPT_CLANGDWARF_X64_DLINK2_FLAGS     =
> DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld
> 
> --
> 2.40.1






-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#105537): https://edk2.groups.io/g/devel/message/105537
Mute This Topic: https://groups.io/mt/99259531/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list