All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] arm: -march for Cortex A7, A12 and A15 is armv7ve
Date: Sun, 28 Sep 2014 23:29:43 +0200	[thread overview]
Message-ID: <20140928212943.GF3994@free.fr> (raw)
In-Reply-To: <CAK0XTWcRzXZmst+zZ0VT=Jzb5P2qbFef3+0nP=jGvyo8qAUcHQ@mail.gmail.com>

Eddy, All,

On 2014-09-28 23:53 +0300, Eddy Petri?or spake thusly:
> Pe 28.09.2014 12:46, "Yann E. MORIN" <yann.morin.1998@free.fr> a scris:
[--SNIP--]
> > The status so far is:
> >
> >   - some combinations of -march, -mcpu, -mtune are not valid, some are
> >     just a warning;
> 
> This is why I wanted to fix this. The warning might seem harmless, but on
> cortex a7, a12 and a15 the compilation of fontconfig fails since the test
> for scandir uses -Werror. This means compiling Weston on these cpus is
> impossible without a patch.
> 
> Most likely this situation is true for other packages, so correcting the
> default march might make things generally better for anyone developing now
> for the armv7ve cores.
> 
> That's why I would like this patch in, even if later it is decided march
> and mtune are dropped or another fix is implemented.

I am still not sure we want that patch in the current state, see
below...

> >   - -mcpu is not always enough to fully specify the actual CPU;
> >
> >   - gcc-5 will no longer accept some combinations of -march, -mcpu, -mtune
> >     (not sure exactly which will still be valid.)
> >
> > So, we'd like to go one of those routes (first is the preferred one):
> >
> >   - drop -march and -mtune, only keep -mcpu;
> >
> >   - conditionally set either  (-mcpu)  or  (-march and -mtune) .
> >
> > So, there is a status-quo for now on this issue. I guess we'll be
> > discussing this at the upcoming Developpers Days in D?sseldorf:
> >     http://elinux.org/Buildroot:DeveloperDaysELCE2014
> 
> I see.
> 
> Would changing the default march as proposed in my patch break any
> defconfig-s?

The problem is tht armv7ve is a new thiung with gcc-4.9, and gcc-4.8 and
below still consider those Cortex (plural: cortices?) as armv7-a.

So, if we were to apply this patch, it would break:

  - for internal toolchains that use gcc 4.8 or below; we could fix it
    by conditionally setting -march to armv7-a or armv7-ve depending on
    the version of gcc being used for the toolchain;

  - for any external toolchain that use gcc-4.8 or below; for those, we
    have no way of knowing what gcc version is being used, so we can not
    ever set -march to armv7-ve.

The only sane solution would be to drop -march altogether, which we are
still pondering...

One way I can foresee is:

  - drop -march in favour of just -mcpu, right now: makes all identified
    cases work, but a few CPUs may get non-optimized code (like those
    arm1136jf-s);

  - later re-introduce -mtune for those CPUs that require it.

But this is touching core infra, and must be carefully analysed...

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

      parent reply	other threads:[~2014-09-28 21:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-28  1:10 [Buildroot] [PATCH 1/1] arm: -march for Cortex A7, A12 and A15 is armv7ve Eddy Petrisor
2014-09-28  9:46 ` Yann E. MORIN
     [not found]   ` <CAK0XTWcRzXZmst+zZ0VT=Jzb5P2qbFef3+0nP=jGvyo8qAUcHQ@mail.gmail.com>
2014-09-28 21:29     ` Yann E. MORIN [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140928212943.GF3994@free.fr \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.