[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Add flags for powerpc in order to avoid exceptions
From: |
Paulo Flabiano Smorigo |
Subject: |
Re: [PATCH] Add flags for powerpc in order to avoid exceptions |
Date: |
Wed, 8 Oct 2014 20:38:29 -0300 |
User-agent: |
Mutt/1.5.22.1 (2013-10-16) |
Mon, Sep 29, 2014 at 10:30:16PM +0400, Andrei Borzenkov wrote:
> В Sat, 27 Sep 2014 09:06:53 +0400
> Andrei Borzenkov <address@hidden> пишет:
>
> > В Fri, 26 Sep 2014 16:29:40 -0300
> > Paulo Flabiano Smorigo <address@hidden> пишет:
> >
> > > * conf/Makefile.common [COND_powerpc_ieee1275] (CFLAGS_PLATFORM): Add
> > > -msoft-float -mno-vsx -mno-altivec.
> > >
> > > Also-By: Adhemerval Zanella <address@hidden>
> > > ---
> > > ChangeLog | 7 +++++++
> > > conf/Makefile.common | 3 +++
> > > 2 files changed, 10 insertions(+)
> > >
> > > diff --git a/ChangeLog b/ChangeLog
> > > index 192e8bc..40eb90c 100644
> > > --- a/ChangeLog
> > > +++ b/ChangeLog
> > > @@ -1,3 +1,10 @@
> > > +2014-09-26 Paulo Flabiano Smorigo <address@hidden>
> > > +
> > > + Add flags for powerpc in order to avoid exceptions
> > > +
> > > + * conf/Makefile.common [COND_powerpc_ieee1275] (CFLAGS_PLATFORM): Add
> > > + -msoft-float -mno-vsx -mno-altivec.
> > > +
> > > 2014-09-25 Colin Watson <address@hidden>
> > >
> > > Fix in-tree --platform=none
> > > diff --git a/conf/Makefile.common b/conf/Makefile.common
> > > index 51fbaf9..57c491a 100644
> > > --- a/conf/Makefile.common
> > > +++ b/conf/Makefile.common
> > > @@ -22,6 +22,9 @@ endif
> > > if COND_arm64
> > > CFLAGS_PLATFORM += -mcmodel=large
> > > endif
> > > +if COND_powerpc_ieee1275
> > > + CFLAGS_PLATFORM += -msoft-float -mno-vsx -mno-altivec
> > > +endif
> > >
> > > #FIXME: discover and check XEN headers
> > > CPPFLAGS_XEN = -I/usr/include
> >
> > Thank you! I confirm that this patch works and does not break grub on
> > earlier CPU :)
> >
> > There are still differences in generated code, so we probably need to
> > tune some more flags.
>
> I looked at compiler options for PowerPC and I think instead of trying
> to catch individual flags which may change with every release we should
> simply force the most common platform by
>
> +if COND_powerpc_ieee1275
> + CFLAGS_PLATFORM += -mcpu=powerpc -mtune=powerpc
> +endif
>
>
> This makes sure result is identical on every platform and provides most
> generic code that is expected to run on every(?) system.
>
> WDYT?
Hi Andrei,
Sorry to take so long to answer your question.
After an internal discussion with some toolchain experts we found out
that your approach is good. It works and it's more generic but we think
that we should change it a little bit:
* skip -mtune, not really necessary
* add "-msoft-float" to be completly safe.
Something like:
+if COND_powerpc_ieee1275
+ CFLAGS_PLATFORM += -mcpu=powerpc -msoft-float
+endif
This approach is similar to what the linux kernel do.
In addition, they recomend to set FP MSR value to zero as well.
Andrei, Vladimir, agree?
>
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel
--
Paulo Flabiano Smorigo
IBM Linux Technology Center
- Re: [PATCH] Add flags for powerpc in order to avoid exceptions,
Paulo Flabiano Smorigo <=