Liu, Thanks for explanation, it does make sense now. As for no need to -DNO_MSABI_VA_FUNCS I agree, but it will not make much difference, because from what I understand the VA_ARG implementation is chosen based on EFIAPI presence when generic __builtin’s are used. Best, Vitaly > 12 февр. 2020 г., в 04:38, Liu, Zhiguang написал(а): > > Hi Vitaly, > After your patch to Switch to GNU mode for CLANGPDB, the build option -DNO_MSABI_VA_FUNCS is not required. I will send another patch to remove it. > And for you question, this is a patch set that resolves BZ 2415, and the second patch 21821933aea284cd3dfea6994bd4b83bd9739fc9 has direct influence to CLANG38. > > Thanks > Zhiguang > > From: devel@edk2.groups.io > On Behalf Of Vitaly Cheptsov via Groups.Io > Sent: Tuesday, February 11, 2020 3:09 PM > To: Gao, Liming >; Liu, Zhiguang >; Shi, Steven > > Cc: devel@edk2.groups.io > Subject: Re: [edk2-devel] [PATCH 1/1] BaseTools: Switch to GNU mode for CLANGPDB > > Liming, > > Done. As a side note, I am not positive how can 7990438f1437f47990a8890dee51978cb8dbc25c[1] resolve BZ 2415[2]. The bug was about CLANG38, and the toolchain updated was CLANGPDB. While it makes sense to update CLANGPDB with this flag to stay clean (it will not make a difference for clang in GNU mode), CLANGPDB has nothing to do to CLANG38. > > Best wishes, > Vitaly > > [1] https://bugzilla.tianocore.org/show_bug.cgi?id=2415 > [2] https://github.com/tianocore/edk2/commit/7990438f1437f47990a8890dee51978cb8dbc25c > > > > 11 февр. 2020 г., в 09:02, Gao, Liming > написал(а): > > Vitaly: > Can you update this patch based on the latest edk2 trunk? I will catch it for edk2 Q1 stable tag. > > Thanks > Liming > From: devel@edk2.groups.io > On Behalf Of Liming Gao > Sent: Tuesday, February 11, 2020 1:34 PM > To: vit9696 >; devel@edk2.groups.io > Subject: Re: [edk2-devel] [PATCH 1/1] BaseTools: Switch to GNU mode for CLANGPDB > > Reviewed-by: Liming Gao > > > From: vit9696 > > Sent: Tuesday, February 11, 2020 3:23 AM > To: Gao, Liming >; devel@edk2.groups.io > Subject: RE: [edk2-devel] [PATCH 1/1] BaseTools: Switch to GNU mode for CLANGPDB > > Liming, > > We did run several of our projects based on EDK II in X64 mode, DEBUG, RELEASE, NOOPT. Noticed no change from XCODE5. > > We also tried building several EDK builtin packages like CryptoPkg, MdePkg, MdeModulePkg. > > Best wishes, > Vitaly > > В пн, февр. 10, 2020 в 16:47, Gao, Liming > пишет: > Vitaly: > This change is good. Can you your test for it? I verify this patch for Ovmf platform on Windows. It can make ovmf pass build with CLANGPDB. > > Thanks > Liming > > -----Original Message----- > > From: devel@edk2.groups.io > On Behalf Of Vitaly Cheptsov via Groups.Io > > Sent: Monday, February 10, 2020 6:59 PM > > To: devel@edk2.groups.io > > Subject: [edk2-devel] [PATCH 1/1] BaseTools: Switch to GNU mode for CLANGPDB > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2397 > > > > Signed-off-by: Vitaly Cheptsov > > > --- > > 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 feee2bbf16..6bf6c5768e 100755 > > --- a/BaseTools/Conf/tools_def.template > > +++ b/BaseTools/Conf/tools_def.template > > @@ -2755,11 +2755,11 @@ RELEASE_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl > > DEFINE CLANGPDB_IA32_PREFIX = ENV(CLANG_BIN) > > DEFINE CLANGPDB_X64_PREFIX = ENV(CLANG_BIN) > > > > -DEFINE CLANGPDB_IA32_TARGET = -target i686-unknown-windows > > -DEFINE CLANGPDB_X64_TARGET = -target x86_64-unknown-windows > > +DEFINE CLANGPDB_IA32_TARGET = -target i686-unknown-windows-gnu > > +DEFINE CLANGPDB_X64_TARGET = -target x86_64-unknown-windows-gnu > > > > DEFINE CLANGPDB_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out- > > of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-microsoft-enum- > > forward-reference > > -DEFINE CLANGPDB_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARNING_OVERRIDES) -fno-stack-protector - > > mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno- > > asynchronous-unwind-tables -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang - > > funsigned-char -fno-ms-extensions -Wno-null-dereference -fms-compatibility -mno-stack-arg-probe > > +DEFINE CLANGPDB_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARNING_OVERRIDES) -fno-stack-protector - > > fno-asynchronous-unwind-tables -funsigned-char -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -Wno- > > address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -Wno-null-dereference -mno- > > implicit-float -mms-bitfields -mno-stack-arg-probe -nostdlib -nostdlibinc > > > > ########################### > > # CLANGPDB IA32 definitions > > -- > > 2.21.1 (Apple Git-122.3) > > > > > > -=-=-=-=-=-= > > Groups.io Links: You receive all messages sent to this group. > > > > View/Reply Online (#54130): https://edk2.groups.io/g/devel/message/54130 > > Mute This Topic: https://groups.io/mt/71134286/1759384 > > Group Owner: devel+owner@edk2.groups.io > > Unsubscribe: https://edk2.groups.io/g/devel/unsub [liming.gao@intel.com ] > > -=-=-=-=-=-= > > > > >