CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
Attached to Project: CRUX-ARM
Opened by Victor Martinez - 2011-05-12
Last edited by Victor Martinez - 2011-11-21

FS#3 - Create a toolchain with hardfp support.

We can create a new toolchain with hardfp and thumb support.

It can be created with the same triplet used in the toolchain with a minor change (arm-cruxhf-linux-gnueabi) but the point could be to use another one: arm-crux-linux-gnueabihf

There are problems with this triplet which should be fixed before we start adopting it.

There are some checks which can be done to verify hardfp/thumb support.

readelf -e test:
The elf header should change (not implemented atm)

readelf -A test:
Tag_THUMB_ISA_use: Thumb-2
Tag_ABI_HardFP_use: SP and DP
These told us that this toolchain has thumb support and it’s built with hardfp

size test:
we can compare file’s sizes and verify that the thumb one it’s smaller.

Closed by  Victor Martinez
Monday, 21 November 2011, 14:16 GMT
Reason for closing:  Implemented
Additional comments about closing:  

Done in https://crux -arm.nu/gitweb?p=toolchain-hardfp.git;a= summary

acrux commented on Tuesday, 07 June 2011, 16:14 GMT

CRUX ARM (on Genesi EfikaMX)

e.g.
# readelf -a /usr/bin/ar

– with-float=soft

File Attributes

Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3-D16
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754
Tag_ABI_align_needed: 8-byte
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_enum_size: int
Tag_DIV_use: Not allowed

– with-float=softfp

File Attributes

Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3-D16
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754
Tag_ABI_align_needed: 8-byte
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_enum_size: int
Tag_ABI_HardFP_use: SP and DP
Tag_DIV_use: Not allowed

– with-float=hard

File Attributes

Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3-D16
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754
Tag_ABI_align_needed: 8-byte
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_enum_size: int
Tag_ABI_HardFP_use: SP and DP
Tag_ABI_VFP_args: VFP registers
Tag_DIV_use: Not allowed

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing