* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
@ 2015-05-07 6:07 Prabhakar Kushwaha
2015-05-20 17:10 ` York Sun
0 siblings, 1 reply; 7+ messages in thread
From: Prabhakar Kushwaha @ 2015-05-07 6:07 UTC (permalink / raw)
To: u-boot
-fdelete-null-pointer-checks flag controls global dataflow analyses and
eliminate useless checks for null pointers; It assume that if a pointer is
checked after it has already been dereferenced, it cannot be null.
This flag is enabled by default.
gcc v4.9 has more optimizations added to this option. Hence it is very
aggressive with GCC v4.9 series. Add -fno-delete-null-pointer-checks to
disable the optimization
Signed-off-by: Rohit Dharmakan <rohitarulraj@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
---
arch/powerpc/cpu/mpc85xx/config.mk | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/cpu/mpc85xx/config.mk b/arch/powerpc/cpu/mpc85xx/config.mk
index 72c964c..2aedd24 100644
--- a/arch/powerpc/cpu/mpc85xx/config.mk
+++ b/arch/powerpc/cpu/mpc85xx/config.mk
@@ -5,7 +5,8 @@
# SPDX-License-Identifier: GPL-2.0+
#
-PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string
+PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string \
+ -fno-delete-null-pointer-checks
# -mspe=yes is needed to have -mno-spe accepted by a buggy GCC;
# see "[PATCH,rs6000] make -mno-spe work as expected" on
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-05-07 6:07 [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks Prabhakar Kushwaha
@ 2015-05-20 17:10 ` York Sun
2015-05-20 17:33 ` Scott Wood
0 siblings, 1 reply; 7+ messages in thread
From: York Sun @ 2015-05-20 17:10 UTC (permalink / raw)
To: u-boot
Scott,
Please comment on this patch.
York
On 05/06/2015 11:07 PM, Prabhakar Kushwaha wrote:
> -fdelete-null-pointer-checks flag controls global dataflow analyses and
> eliminate useless checks for null pointers; It assume that if a pointer is
> checked after it has already been dereferenced, it cannot be null.
> This flag is enabled by default.
>
> gcc v4.9 has more optimizations added to this option. Hence it is very
> aggressive with GCC v4.9 series. Add -fno-delete-null-pointer-checks to
> disable the optimization
>
> Signed-off-by: Rohit Dharmakan <rohitarulraj@freescale.com>
> Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
> ---
> arch/powerpc/cpu/mpc85xx/config.mk | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/cpu/mpc85xx/config.mk b/arch/powerpc/cpu/mpc85xx/config.mk
> index 72c964c..2aedd24 100644
> --- a/arch/powerpc/cpu/mpc85xx/config.mk
> +++ b/arch/powerpc/cpu/mpc85xx/config.mk
> @@ -5,7 +5,8 @@
> # SPDX-License-Identifier: GPL-2.0+
> #
>
> -PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string
> +PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string \
> + -fno-delete-null-pointer-checks
>
> # -mspe=yes is needed to have -mno-spe accepted by a buggy GCC;
> # see "[PATCH,rs6000] make -mno-spe work as expected" on
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-05-20 17:10 ` York Sun
@ 2015-05-20 17:33 ` Scott Wood
2015-06-30 4:18 ` Kushwaha Prabhakar
0 siblings, 1 reply; 7+ messages in thread
From: Scott Wood @ 2015-05-20 17:33 UTC (permalink / raw)
To: u-boot
On Wed, 2015-05-20 at 10:10 -0700, York Sun wrote:
> Scott,
>
> Please comment on this patch.
>
> York
I think this should be set treewide (as Linux does), not just for
mpc85xx. But use cc-option to make sure that the compiler supports the
option.
-Scott
>
> On 05/06/2015 11:07 PM, Prabhakar Kushwaha wrote:
> > -fdelete-null-pointer-checks flag controls global dataflow analyses and
> > eliminate useless checks for null pointers; It assume that if a pointer is
> > checked after it has already been dereferenced, it cannot be null.
> > This flag is enabled by default.
> >
> > gcc v4.9 has more optimizations added to this option. Hence it is very
> > aggressive with GCC v4.9 series. Add -fno-delete-null-pointer-checks to
> > disable the optimization
> >
> > Signed-off-by: Rohit Dharmakan <rohitarulraj@freescale.com>
> > Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
> > ---
> > arch/powerpc/cpu/mpc85xx/config.mk | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/powerpc/cpu/mpc85xx/config.mk b/arch/powerpc/cpu/mpc85xx/config.mk
> > index 72c964c..2aedd24 100644
> > --- a/arch/powerpc/cpu/mpc85xx/config.mk
> > +++ b/arch/powerpc/cpu/mpc85xx/config.mk
> > @@ -5,7 +5,8 @@
> > # SPDX-License-Identifier: GPL-2.0+
> > #
> >
> > -PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string
> > +PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string \
> > + -fno-delete-null-pointer-checks
> >
> > # -mspe=yes is needed to have -mno-spe accepted by a buggy GCC;
> > # see "[PATCH,rs6000] make -mno-spe work as expected" on
> >
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-05-20 17:33 ` Scott Wood
@ 2015-06-30 4:18 ` Kushwaha Prabhakar
2015-06-30 14:58 ` Simon Glass
0 siblings, 1 reply; 7+ messages in thread
From: Kushwaha Prabhakar @ 2015-06-30 4:18 UTC (permalink / raw)
To: u-boot
Hi Simon, Tom,
-fdelete-null-pointer-checks flag controls global dataflow analyses and eliminate useless checks for null pointers; It assume that if a pointer is checked after it has already been dereferenced, it cannot be null. This flag is enabled by default.
gcc v4.9 has more optimizations added to this option. Hence it is very aggressive with GCC v4.9 series. It is also well documented in the GCC v4.9 release notes:
https://gcc.gnu.org/gcc-4.9/porting_to.html
There is possibility after moving to gcc-4.9 some platform may/may not work properly.
I tested this patch for freescale powerpc platforms.
But It may needs be taken care by all architecture like ARM, powerpc. If this is the case; this flag should be in top level Makefile (not sure)
Regards,
Prabhakar
> -----Original Message-----
> From: Wood Scott-B07421
> Sent: Wednesday, May 20, 2015 11:04 PM
> To: Sun York-R58495
> Cc: Kushwaha Prabhakar-B32579; u-boot at lists.denx.de; Dharmakan Rohit-
> B30502
> Subject: Re: [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-
> pointer-checks
>
> On Wed, 2015-05-20 at 10:10 -0700, York Sun wrote:
> > Scott,
> >
> > Please comment on this patch.
> >
> > York
>
> I think this should be set treewide (as Linux does), not just for mpc85xx. But
> use cc-option to make sure that the compiler supports the option.
>
> -Scott
>
> >
> > On 05/06/2015 11:07 PM, Prabhakar Kushwaha wrote:
> > > -fdelete-null-pointer-checks flag controls global dataflow analyses
> > > and eliminate useless checks for null pointers; It assume that if a
> > > pointer is checked after it has already been dereferenced, it cannot be
> null.
> > > This flag is enabled by default.
> > >
> > > gcc v4.9 has more optimizations added to this option. Hence it is
> > > very aggressive with GCC v4.9 series. Add
> > > -fno-delete-null-pointer-checks to disable the optimization
> > >
> > > Signed-off-by: Rohit Dharmakan <rohitarulraj@freescale.com>
> > > Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
> > > ---
> > > arch/powerpc/cpu/mpc85xx/config.mk | 3 ++-
> > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/arch/powerpc/cpu/mpc85xx/config.mk
> > > b/arch/powerpc/cpu/mpc85xx/config.mk
> > > index 72c964c..2aedd24 100644
> > > --- a/arch/powerpc/cpu/mpc85xx/config.mk
> > > +++ b/arch/powerpc/cpu/mpc85xx/config.mk
> > > @@ -5,7 +5,8 @@
> > > # SPDX-License-Identifier: GPL-2.0+
> > > #
> > >
> > > -PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string
> > > +PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string \
> > > + -fno-delete-null-pointer-checks
> > >
> > > # -mspe=yes is needed to have -mno-spe accepted by a buggy GCC; #
> > > see "[PATCH,rs6000] make -mno-spe work as expected" on
> > >
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-06-30 4:18 ` Kushwaha Prabhakar
@ 2015-06-30 14:58 ` Simon Glass
2015-06-30 18:22 ` Tom Rini
2015-07-01 3:10 ` Kushwaha Prabhakar
0 siblings, 2 replies; 7+ messages in thread
From: Simon Glass @ 2015-06-30 14:58 UTC (permalink / raw)
To: u-boot
Hi,
On 29 June 2015 at 22:18, Kushwaha Prabhakar <prabhakar@freescale.com> wrote:
> Hi Simon, Tom,
>
> -fdelete-null-pointer-checks flag controls global dataflow analyses and eliminate useless checks for null pointers; It assume that if a pointer is checked after it has already been dereferenced, it cannot be null. This flag is enabled by default.
> gcc v4.9 has more optimizations added to this option. Hence it is very aggressive with GCC v4.9 series. It is also well documented in the GCC v4.9 release notes:
> https://gcc.gnu.org/gcc-4.9/porting_to.html
>
> There is possibility after moving to gcc-4.9 some platform may/may not work properly.
> I tested this patch for freescale powerpc platforms.
> But It may needs be taken care by all architecture like ARM, powerpc. If this is the case; this flag should be in top level Makefile (not sure)
>
I suspect a top-level option would be best, perhaps near this one in Makefile:
KBUILD_CFLAGS += $(call cc-option,-fno-stack-protector)
Regards,
Simon
> Regards,
> Prabhakar
>
>> -----Original Message-----
>> From: Wood Scott-B07421
>> Sent: Wednesday, May 20, 2015 11:04 PM
>> To: Sun York-R58495
>> Cc: Kushwaha Prabhakar-B32579; u-boot at lists.denx.de; Dharmakan Rohit-
>> B30502
>> Subject: Re: [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-
>> pointer-checks
>>
>> On Wed, 2015-05-20 at 10:10 -0700, York Sun wrote:
>> > Scott,
>> >
>> > Please comment on this patch.
>> >
>> > York
>>
>> I think this should be set treewide (as Linux does), not just for mpc85xx. But
>> use cc-option to make sure that the compiler supports the option.
>>
>> -Scott
>>
>> >
>> > On 05/06/2015 11:07 PM, Prabhakar Kushwaha wrote:
>> > > -fdelete-null-pointer-checks flag controls global dataflow analyses
>> > > and eliminate useless checks for null pointers; It assume that if a
>> > > pointer is checked after it has already been dereferenced, it cannot be
>> null.
>> > > This flag is enabled by default.
>> > >
>> > > gcc v4.9 has more optimizations added to this option. Hence it is
>> > > very aggressive with GCC v4.9 series. Add
>> > > -fno-delete-null-pointer-checks to disable the optimization
>> > >
>> > > Signed-off-by: Rohit Dharmakan <rohitarulraj@freescale.com>
>> > > Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
>> > > ---
>> > > arch/powerpc/cpu/mpc85xx/config.mk | 3 ++-
>> > > 1 file changed, 2 insertions(+), 1 deletion(-)
>> > >
>> > > diff --git a/arch/powerpc/cpu/mpc85xx/config.mk
>> > > b/arch/powerpc/cpu/mpc85xx/config.mk
>> > > index 72c964c..2aedd24 100644
>> > > --- a/arch/powerpc/cpu/mpc85xx/config.mk
>> > > +++ b/arch/powerpc/cpu/mpc85xx/config.mk
>> > > @@ -5,7 +5,8 @@
>> > > # SPDX-License-Identifier: GPL-2.0+
>> > > #
>> > >
>> > > -PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string
>> > > +PLATFORM_CPPFLAGS += -Wa,-me500 -msoft-float -mno-string \
>> > > + -fno-delete-null-pointer-checks
>> > >
>> > > # -mspe=yes is needed to have -mno-spe accepted by a buggy GCC; #
>> > > see "[PATCH,rs6000] make -mno-spe work as expected" on
>> > >
>>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-06-30 14:58 ` Simon Glass
@ 2015-06-30 18:22 ` Tom Rini
2015-07-01 3:10 ` Kushwaha Prabhakar
1 sibling, 0 replies; 7+ messages in thread
From: Tom Rini @ 2015-06-30 18:22 UTC (permalink / raw)
To: u-boot
On Tue, Jun 30, 2015 at 08:58:26AM -0600, Simon Glass wrote:
> Hi,
>
> On 29 June 2015 at 22:18, Kushwaha Prabhakar <prabhakar@freescale.com> wrote:
> > Hi Simon, Tom,
> >
> > -fdelete-null-pointer-checks flag controls global dataflow analyses and eliminate useless checks for null pointers; It assume that if a pointer is checked after it has already been dereferenced, it cannot be null. This flag is enabled by default.
> > gcc v4.9 has more optimizations added to this option. Hence it is very aggressive with GCC v4.9 series. It is also well documented in the GCC v4.9 release notes:
> > https://gcc.gnu.org/gcc-4.9/porting_to.html
> >
> > There is possibility after moving to gcc-4.9 some platform may/may not work properly.
> > I tested this patch for freescale powerpc platforms.
> > But It may needs be taken care by all architecture like ARM, powerpc. If this is the case; this flag should be in top level Makefile (not sure)
> >
>
> I suspect a top-level option would be best, perhaps near this one in Makefile:
>
> KBUILD_CFLAGS += $(call cc-option,-fno-stack-protector)
I also agree with Scott and Simon, default, top level, using cc-option
just like the Linux kernel please, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150630/02bb2b87/attachment.sig>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks
2015-06-30 14:58 ` Simon Glass
2015-06-30 18:22 ` Tom Rini
@ 2015-07-01 3:10 ` Kushwaha Prabhakar
1 sibling, 0 replies; 7+ messages in thread
From: Kushwaha Prabhakar @ 2015-07-01 3:10 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: sjg at google.com [mailto:sjg at google.com] On Behalf Of Simon Glass
> Sent: Tuesday, June 30, 2015 8:28 PM
> To: Kushwaha Prabhakar-B32579
> Cc: Wood Scott-B07421; Sun York-R58495; trini at konsulko.com; u-
> boot at lists.denx.de; Dharmakan Rohit-B30502
> Subject: Re: [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-
> pointer-checks
>
> Hi,
>
> On 29 June 2015 at 22:18, Kushwaha Prabhakar <prabhakar@freescale.com>
> wrote:
> > Hi Simon, Tom,
> >
> > -fdelete-null-pointer-checks flag controls global dataflow analyses and
> eliminate useless checks for null pointers; It assume that if a pointer is
> checked after it has already been dereferenced, it cannot be null. This flag is
> enabled by default.
> > gcc v4.9 has more optimizations added to this option. Hence it is very
> aggressive with GCC v4.9 series. It is also well documented in the GCC v4.9
> release notes:
> > https://gcc.gnu.org/gcc-4.9/porting_to.html
> >
> > There is possibility after moving to gcc-4.9 some platform may/may not
> work properly.
> > I tested this patch for freescale powerpc platforms.
> > But It may needs be taken care by all architecture like ARM, powerpc.
> > If this is the case; this flag should be in top level Makefile (not
> > sure)
> >
>
> I suspect a top-level option would be best, perhaps near this one in Makefile:
>
> KBUILD_CFLAGS += $(call cc-option,-fno-stack-protector)
>
I agree to put it here.
But how to test it against different platform supported by u-boot.
--prabhakar
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-07-01 3:10 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-07 6:07 [U-Boot] [PATCH] powerpc/mpc85xx:Add GCC flag -fno-delete-null-pointer-checks Prabhakar Kushwaha
2015-05-20 17:10 ` York Sun
2015-05-20 17:33 ` Scott Wood
2015-06-30 4:18 ` Kushwaha Prabhakar
2015-06-30 14:58 ` Simon Glass
2015-06-30 18:22 ` Tom Rini
2015-07-01 3:10 ` Kushwaha Prabhakar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox