[OE-core] [PATCH] arch-armv7a.inc: default to Thumb2 instruction set for armv7a and above

Martin Jansa martin.jansa at gmail.com
Sat May 19 07:41:49 UTC 2018


On Sat, May 19, 2018 at 12:31:51AM -0700, Andre McCurdy wrote:
> On Sat, May 19, 2018 at 12:11 AM, Martin Jansa <martin.jansa at gmail.com> wrote:
> > On Fri, May 18, 2018 at 11:48:45PM -0700, Andre McCurdy wrote:
> >> On Fri, May 18, 2018 at 10:42 PM, Martin Jansa <martin.jansa at gmail.com> wrote:
> >> > This variable was always meant to be used from DISTRO config
> >>
> >> I'm not sure if that's true. Do you have a reference?
> >
> > http://git.openembedded.org/openembedded-core/commit/?id=951200673af27538beaef647a33308b4f15d1fb0
> > "in case we have MACHINE without "thumb" in TUNE_FEATURES and distro setting ARM_INSTRUCTION_SET to "thumb""
> >
> > https://github.com/Angstrom-distribution/meta-angstrom/blob/master/conf/distro/include/angstrom.inc#L39
> > https://github.com/shr-distribution/meta-smartphone/blob/fido/meta-shr-distro/conf/distro/shr.conf#L150
> 
> Certainly there are distros which force ARM_INSTRUCTION_SET. I'm not
> sure if that's evidence that machines shouldn't set a default though?

It's still more evidence then what you've shown that it should be in
machine config.

> >> >, why not add it
> >> > to:
> >> > oe-core/meta/conf/distro/include/default-distrovars.inc
> >> > or
> >> > oe-core/meta/conf/distro/include/tcmode-default.inc
> >> >
> >> > ?
> >>
> >> Because then it would either apply to all ARM machines, including
> >> those which only support Thumb1, which isn't ideal. Keeping it as part
> >> of the machine config makes it easy to apply selectively to armv7a and
> >> above where we know it's safe and desirable. Distros can of course
> >> still over-ride (ie the machine only sets a weak default).
> >
> > You can still enable it with weak assignment only for some architectures
> > like Angstrom does. But I don't see any reason why not enable it for all
> > architectures? Yes Thumb1 isn't as good as Thumb2 but still many people
> > are using it
> 
> I'm not sure if there are "many people" still trying to persevere with
> Thumb1. Maybe there are a few masochists left, but I guess they
> probably have their own distros and don't rely on the oe-core
> defaults.
> 
> My approach is to try to make small, safe, incremental improvements
> and doing anything which might change the default instruction set to
> Thumb for CPUs which can only support Thumb1 doesn't fit that
> approach.

You can still apply it only for some architectures as mentioned before.

> >, why shouldn't oe-core be tested with thumb enabled (with
> > armv5te qemuarm?), see:
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=9213
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=1709
> >
> >> Is there a specific problem you see with the current patch?
> >
> > DISTROs doing multi machine builds already need to select the right
> > DEFAULTTUNEs to find good compromise with common denominator of the
> > MACHINEs they want to support (or groups of MACHINEs they want to
> > support). Supporting or not supporting thumb at all is part of that
> > question so DISTRO should decide that, tune files already have the thumb
> > knob in TUNE_FEATURES to say which MACHINE is capable of supporting it.
> 
> Setting a weak default for armv7a and above from the machine config
> doesn't change any of that. Distros still have full control.

If it's in distros control, then it should be in distros default config.

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180519/19960f25/attachment-0002.sig>


More information about the Openembedded-core mailing list