[OE-core] [PATCH] conf/machine/include: enable hardfloat by default for ARMv6 and above

Andre McCurdy armccurdy at gmail.com
Mon Mar 6 22:51:49 UTC 2017


On Mon, Mar 6, 2017 at 2:37 PM, Khem Raj <raj.khem at gmail.com> wrote:
> On Mon, Mar 6, 2017 at 1:47 PM, Andre McCurdy <armccurdy at gmail.com> wrote:
>> Defaulting to softfp probably isn't the best choice anymore,
>> especially as there are now ARM BSP layers which leave DEFAULTTUNE
>> entirely up to the distro:
>>
>>   https://lists.yoctoproject.org/pipermail/yocto/2017-February/034637.html
>>
>
> I like this patch and want to clarify that it changes the default ISA to thumb2
> which we should use anyway due to size reasons and other distros use it as
> default too.

No, it doesn't. The choice between ARM and Thumb(2) is made by the
ARM_INSTRUCTION_SET variable. Adding 't' to DEFAULTTUNE simply means
that the ARM_INSTRUCTION_SET variable will not be ignored (it's really
a long standing bug that we ever defined DEFAULTTUNE options for ARMv6
and above which ignore ARM_INSTRUCTION_SET, but that's a separate
topic).

> I am not sure of we should change it for armv6 though. since some armv6
> has t1 and some has t2 so lets leave that as it is.

I'm not aware of any ARMv6 cores which don't support Thumb2. Do you
have a reference?

(But again, to be clear, this commit doesn't change the default in
terms of instruction set - all builds will still use ARM).

>> Signed-off-by: Andre McCurdy <armccurdy at gmail.com>
>> ---
>>  meta/conf/machine/include/arm/arch-armv6.inc   | 2 +-
>>  meta/conf/machine/include/arm/arch-armv7a.inc  | 2 +-
>>  meta/conf/machine/include/arm/arch-armv7ve.inc | 2 +-
>>  meta/conf/machine/include/tune-arm1136jf-s.inc | 2 +-
>>  meta/conf/machine/include/tune-cortexa15.inc   | 2 +-
>>  meta/conf/machine/include/tune-cortexa17.inc   | 2 +-
>>  meta/conf/machine/include/tune-cortexa5.inc    | 2 +-
>>  meta/conf/machine/include/tune-cortexa7.inc    | 2 +-
>>  meta/conf/machine/include/tune-cortexa8.inc    | 2 +-
>>  meta/conf/machine/include/tune-cortexa9.inc    | 2 +-
>>  10 files changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/meta/conf/machine/include/arm/arch-armv6.inc b/meta/conf/machine/include/arm/arch-armv6.inc
>> index 91f0f07..5e1f973 100644
>> --- a/meta/conf/machine/include/arm/arch-armv6.inc
>> +++ b/meta/conf/machine/include/arm/arch-armv6.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv6"
>> +DEFAULTTUNE ?= "armv6thf"
>>
>>  TUNEVALID[armv6] = "Enable instructions for ARMv6"
>>  TUNECONFLICTS[armv6] = "armv4 armv5"
>> diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
>> index 5446048..bad1c27 100644
>> --- a/meta/conf/machine/include/arm/arch-armv7a.inc
>> +++ b/meta/conf/machine/include/arm/arch-armv7a.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7a"
>> +DEFAULTTUNE ?= "armv7athf"
>>
>>  TUNEVALID[armv7a] = "Enable instructions for ARMv7-a"
>>  TUNECONFLICTS[armv7a] = "armv4 armv5 armv6 armv7"
>> diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> index 42d8d04..4d9260f 100644
>> --- a/meta/conf/machine/include/arm/arch-armv7ve.inc
>> +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7ve"
>> +DEFAULTTUNE ?= "armv7vethf"
>>
>>  TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
>>  TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
>> diff --git a/meta/conf/machine/include/tune-arm1136jf-s.inc b/meta/conf/machine/include/tune-arm1136jf-s.inc
>> index 53994ef..2cadbee 100644
>> --- a/meta/conf/machine/include/tune-arm1136jf-s.inc
>> +++ b/meta/conf/machine/include/tune-arm1136jf-s.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv6"
>> +DEFAULTTUNE ?= "armv6thf"
>>
>>  require conf/machine/include/arm/arch-armv6.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
>> index 03de602..25e99f9 100644
>> --- a/meta/conf/machine/include/tune-cortexa15.inc
>> +++ b/meta/conf/machine/include/tune-cortexa15.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7ve-neon"
>> +DEFAULTTUNE ?= "armv7vethf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7ve.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
>> index f659a62..40392f9 100644
>> --- a/meta/conf/machine/include/tune-cortexa17.inc
>> +++ b/meta/conf/machine/include/tune-cortexa17.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7ve-neon"
>> +DEFAULTTUNE ?= "armv7vethf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7ve.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
>> index 93f9ca4..1f0cda6 100644
>> --- a/meta/conf/machine/include/tune-cortexa5.inc
>> +++ b/meta/conf/machine/include/tune-cortexa5.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7a-neon"
>> +DEFAULTTUNE ?= "armv7athf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7a.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
>> index 52e06b8..52415d9 100644
>> --- a/meta/conf/machine/include/tune-cortexa7.inc
>> +++ b/meta/conf/machine/include/tune-cortexa7.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7ve-neon"
>> +DEFAULTTUNE ?= "armv7vethf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7ve.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
>> index a831bd5..8ee8de9 100644
>> --- a/meta/conf/machine/include/tune-cortexa8.inc
>> +++ b/meta/conf/machine/include/tune-cortexa8.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7a-neon"
>> +DEFAULTTUNE ?= "armv7athf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7a.inc
>>
>> diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
>> index 8b84e60..0cf323c 100644
>> --- a/meta/conf/machine/include/tune-cortexa9.inc
>> +++ b/meta/conf/machine/include/tune-cortexa9.inc
>> @@ -1,4 +1,4 @@
>> -DEFAULTTUNE ?= "armv7a-neon"
>> +DEFAULTTUNE ?= "armv7athf-neon"
>>
>>  require conf/machine/include/arm/arch-armv7a.inc
>>
>> --
>> 1.9.1
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list