Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
That's great. > -Original Message- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Ard > Biesheuvel > Sent: Monday, January 14, 2019 9:47 PM > To: Gao, Liming > Cc: edk2-devel@lists.01.org > Subject: Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for > ASLC invocations > > On Mon, 14 Jan 2019 at 14:38, Gao, Liming wrote: > > > > I see IA32 and X64 arch both have this option. I have no idea on AArch64. > > > > I think we should just add it for all LTO toolchains in the GCC > family. These are fixed size data structures so LTO is entirely > pointless here. > > > > > -Original Message- > > > From: Philippe Mathieu-Daudé [mailto:phi...@redhat.com] > > > Sent: Monday, January 14, 2019 9:36 PM > > > To: Gao, Liming ; Leif Lindholm > > > ; Ard Biesheuvel > > > Cc: edk2-devel@lists.01.org > > > Subject: Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for > > > ASLC invocations > > > > > > On 1/14/19 2:18 PM, Gao, Liming wrote: > > > > Ard: > > > > Could you consider the suggestion from > > > > https://lists.01.org/pipermail/edk2-devel/2019-January/034698.html? > > > > > > There might be a special case for Aarch64, but I'm not seeing it. > > > > > > > > > > > Thanks > > > > Liming > > > >> -Original Message- > > > >> From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > > > >> Sent: Monday, January 14, 2019 7:42 PM > > > >> To: Ard Biesheuvel > > > >> Cc: edk2-devel@lists.01.org; Gao, Liming ; Feng, > > > >> Bob C > > > >> Subject: Re: [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for > > > >> ASLC invocations > > > >> > > > >> On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: > > > >>> GCC for 32-bit ARM chokes on .aslc files when running with LTO > > > >>> enabled. Since LTO has no benefit whatsoever here, just disable > > > >>> it. > > > >>> > > > >>> Contributed-under: TianoCore Contribution Agreement 1.1 > > > >>> Signed-off-by: Ard Biesheuvel > > > >> > > > >> Looks sensible. > > > >> Reviewed-by: Leif Lindholm > > > >> > > > >>> --- > > > >>> BaseTools/Conf/tools_def.template | 2 +- > > > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > > > >>> > > > >>> diff --git a/BaseTools/Conf/tools_def.template > > > >>> b/BaseTools/Conf/tools_def.template > > > >>> index f7eb87af14c2..e68cfd9a4997 100755 > > > >>> --- a/BaseTools/Conf/tools_def.template > > > >>> +++ b/BaseTools/Conf/tools_def.template > > > >>> @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > > > >>> DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > > > >>> *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > > > >>> > > > >>> *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > > > >>> -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > > >>> +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > > > >>> *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > > > >>> *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > > > >>> *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > > > >>> -- > > > >>> 2.20.1 > > > >>> > > > > ___ > > > > edk2-devel mailing list > > > > edk2-devel@lists.01.org > > > > https://lists.01.org/mailman/listinfo/edk2-devel > > > > > ___ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
On Mon, 14 Jan 2019 at 14:38, Gao, Liming wrote: > > I see IA32 and X64 arch both have this option. I have no idea on AArch64. > I think we should just add it for all LTO toolchains in the GCC family. These are fixed size data structures so LTO is entirely pointless here. > > -Original Message- > > From: Philippe Mathieu-Daudé [mailto:phi...@redhat.com] > > Sent: Monday, January 14, 2019 9:36 PM > > To: Gao, Liming ; Leif Lindholm > > ; Ard Biesheuvel > > Cc: edk2-devel@lists.01.org > > Subject: Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for > > ASLC invocations > > > > On 1/14/19 2:18 PM, Gao, Liming wrote: > > > Ard: > > > Could you consider the suggestion from > > > https://lists.01.org/pipermail/edk2-devel/2019-January/034698.html? > > > > There might be a special case for Aarch64, but I'm not seeing it. > > > > > > > > Thanks > > > Liming > > >> -Original Message- > > >> From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > > >> Sent: Monday, January 14, 2019 7:42 PM > > >> To: Ard Biesheuvel > > >> Cc: edk2-devel@lists.01.org; Gao, Liming ; Feng, > > >> Bob C > > >> Subject: Re: [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC > > >> invocations > > >> > > >> On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: > > >>> GCC for 32-bit ARM chokes on .aslc files when running with LTO > > >>> enabled. Since LTO has no benefit whatsoever here, just disable > > >>> it. > > >>> > > >>> Contributed-under: TianoCore Contribution Agreement 1.1 > > >>> Signed-off-by: Ard Biesheuvel > > >> > > >> Looks sensible. > > >> Reviewed-by: Leif Lindholm > > >> > > >>> --- > > >>> BaseTools/Conf/tools_def.template | 2 +- > > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > > >>> > > >>> diff --git a/BaseTools/Conf/tools_def.template > > >>> b/BaseTools/Conf/tools_def.template > > >>> index f7eb87af14c2..e68cfd9a4997 100755 > > >>> --- a/BaseTools/Conf/tools_def.template > > >>> +++ b/BaseTools/Conf/tools_def.template > > >>> @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > > >>> DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > > >>> *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > > >>> > > >>> *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > > >>> -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > >>> +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > > >>> *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > > >>> *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > > >>> *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > > >>> -- > > >>> 2.20.1 > > >>> > > > ___ > > > edk2-devel mailing list > > > edk2-devel@lists.01.org > > > https://lists.01.org/mailman/listinfo/edk2-devel > > > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
I see IA32 and X64 arch both have this option. I have no idea on AArch64. > -Original Message- > From: Philippe Mathieu-Daudé [mailto:phi...@redhat.com] > Sent: Monday, January 14, 2019 9:36 PM > To: Gao, Liming ; Leif Lindholm > ; Ard Biesheuvel > Cc: edk2-devel@lists.01.org > Subject: Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for > ASLC invocations > > On 1/14/19 2:18 PM, Gao, Liming wrote: > > Ard: > > Could you consider the suggestion from > > https://lists.01.org/pipermail/edk2-devel/2019-January/034698.html? > > There might be a special case for Aarch64, but I'm not seeing it. > > > > > Thanks > > Liming > >> -Original Message- > >> From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > >> Sent: Monday, January 14, 2019 7:42 PM > >> To: Ard Biesheuvel > >> Cc: edk2-devel@lists.01.org; Gao, Liming ; Feng, Bob > >> C > >> Subject: Re: [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC > >> invocations > >> > >> On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: > >>> GCC for 32-bit ARM chokes on .aslc files when running with LTO > >>> enabled. Since LTO has no benefit whatsoever here, just disable > >>> it. > >>> > >>> Contributed-under: TianoCore Contribution Agreement 1.1 > >>> Signed-off-by: Ard Biesheuvel > >> > >> Looks sensible. > >> Reviewed-by: Leif Lindholm > >> > >>> --- > >>> BaseTools/Conf/tools_def.template | 2 +- > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>> > >>> diff --git a/BaseTools/Conf/tools_def.template > >>> b/BaseTools/Conf/tools_def.template > >>> index f7eb87af14c2..e68cfd9a4997 100755 > >>> --- a/BaseTools/Conf/tools_def.template > >>> +++ b/BaseTools/Conf/tools_def.template > >>> @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > >>> DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > >>> *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > >>> > >>> *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > >>> -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > >>> +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > >>> *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > >>> *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > >>> *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > >>> -- > >>> 2.20.1 > >>> > > ___ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://lists.01.org/mailman/listinfo/edk2-devel > > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
On 1/14/19 2:18 PM, Gao, Liming wrote: > Ard: > Could you consider the suggestion from > https://lists.01.org/pipermail/edk2-devel/2019-January/034698.html? There might be a special case for Aarch64, but I'm not seeing it. > > Thanks > Liming >> -Original Message- >> From: Leif Lindholm [mailto:leif.lindh...@linaro.org] >> Sent: Monday, January 14, 2019 7:42 PM >> To: Ard Biesheuvel >> Cc: edk2-devel@lists.01.org; Gao, Liming ; Feng, Bob C >> >> Subject: Re: [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC >> invocations >> >> On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: >>> GCC for 32-bit ARM chokes on .aslc files when running with LTO >>> enabled. Since LTO has no benefit whatsoever here, just disable >>> it. >>> >>> Contributed-under: TianoCore Contribution Agreement 1.1 >>> Signed-off-by: Ard Biesheuvel >> >> Looks sensible. >> Reviewed-by: Leif Lindholm >> >>> --- >>> BaseTools/Conf/tools_def.template | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/BaseTools/Conf/tools_def.template >>> b/BaseTools/Conf/tools_def.template >>> index f7eb87af14c2..e68cfd9a4997 100755 >>> --- a/BaseTools/Conf/tools_def.template >>> +++ b/BaseTools/Conf/tools_def.template >>> @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = >>> DEF(GCC5_X64_DLINK_FLAGS) -flto -Os >>> *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy >>> >>> *_GCC5_ARM_ARCHCC_FLAGS = -mthumb >>> -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) >>> +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto >>> *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) >>> *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) >>> *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) >>> -- >>> 2.20.1 >>> > ___ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
Ard: Could you consider the suggestion from https://lists.01.org/pipermail/edk2-devel/2019-January/034698.html? Thanks Liming > -Original Message- > From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > Sent: Monday, January 14, 2019 7:42 PM > To: Ard Biesheuvel > Cc: edk2-devel@lists.01.org; Gao, Liming ; Feng, Bob C > > Subject: Re: [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC > invocations > > On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: > > GCC for 32-bit ARM chokes on .aslc files when running with LTO > > enabled. Since LTO has no benefit whatsoever here, just disable > > it. > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > Signed-off-by: Ard Biesheuvel > > Looks sensible. > Reviewed-by: Leif Lindholm > > > --- > > BaseTools/Conf/tools_def.template | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/BaseTools/Conf/tools_def.template > > b/BaseTools/Conf/tools_def.template > > index f7eb87af14c2..e68cfd9a4997 100755 > > --- a/BaseTools/Conf/tools_def.template > > +++ b/BaseTools/Conf/tools_def.template > > @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > > DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > > *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > > > > *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > > -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > > *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > > *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > > *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > > -- > > 2.20.1 > > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
On Mon, Jan 07, 2019 at 07:55:41AM +0100, Ard Biesheuvel wrote: > GCC for 32-bit ARM chokes on .aslc files when running with LTO > enabled. Since LTO has no benefit whatsoever here, just disable > it. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel Looks sensible. Reviewed-by: Leif Lindholm > --- > BaseTools/Conf/tools_def.template | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/BaseTools/Conf/tools_def.template > b/BaseTools/Conf/tools_def.template > index f7eb87af14c2..e68cfd9a4997 100755 > --- a/BaseTools/Conf/tools_def.template > +++ b/BaseTools/Conf/tools_def.template > @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > > *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto > *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > -- > 2.20.1 > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
Hi Ard, On 1/7/19 7:55 AM, Ard Biesheuvel wrote: > GCC for 32-bit ARM chokes on .aslc files when running with LTO > enabled. Since LTO has no benefit whatsoever here, just disable > it. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel > --- > BaseTools/Conf/tools_def.template | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/BaseTools/Conf/tools_def.template > b/BaseTools/Conf/tools_def.template > index f7eb87af14c2..e68cfd9a4997 100755 > --- a/BaseTools/Conf/tools_def.template > +++ b/BaseTools/Conf/tools_def.template > @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = > DEF(GCC5_X64_DLINK_FLAGS) -flto -Os > *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy > > *_GCC5_ARM_ARCHCC_FLAGS = -mthumb > -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto Why not add it globally to GCC5_ASLCC_FLAGS? > *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) > *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) > *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) > ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
[edk2] [PATCH] BaseTools/tools_def ARM GCC5: disable LTO for ASLC invocations
GCC for 32-bit ARM chokes on .aslc files when running with LTO enabled. Since LTO has no benefit whatsoever here, just disable it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel --- BaseTools/Conf/tools_def.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index f7eb87af14c2..e68cfd9a4997 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -5145,7 +5145,7 @@ RELEASE_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -flto -Os *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy *_GCC5_ARM_ARCHCC_FLAGS = -mthumb -*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) +*_GCC5_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto *_GCC5_ARM_ASLDLINK_FLAGS= DEF(GCC5_ARM_ASLDLINK_FLAGS) *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS) *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS) -- 2.20.1 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel