[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/17212] New: Tag_CPU_name merging produces wrong tag.
From: |
m.ostapenko at partner dot samsung.com |
Subject: |
[Bug ld/17212] New: Tag_CPU_name merging produces wrong tag. |
Date: |
Tue, 29 Jul 2014 13:04:33 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=17212
Bug ID: 17212
Summary: Tag_CPU_name merging produces wrong tag.
Product: binutils
Version: 2.24
Status: NEW
Severity: minor
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: m.ostapenko at partner dot samsung.com
Created attachment 7731
--> https://sourceware.org/bugzilla/attachment.cgi?id=7731&action=edit
Small reprocase
I tried to compile a binary optimized for ARM Cortex-A15 with ARM Cortex-A8
cross-toolchain (host is x86_64-pc-inux-gnu), but Tag_CPU_name appears to be
"Cortex-A8" for the binary instead of "Cortex-A15". The example session
follows:
$ arm-v7a8-linux-gnueabi-gcc -O2 -mcpu=cortex-a15 divtest.c -o divtest.a15
$ readelf -A divtest.a15
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "Cortex-A8"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3
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_MPextension_use: Allowed
Tag_DIV_use: Allowed in v7-A with integer division extension
Tag_Virtualization_use: TrustZone and Virtualization Extensions
After some investigation I found out, that Tag_CPU_name merging based on
Tag_CPU_arch, not the name itself. Since the first file to appear during
linking
is crt1.o, which has Tag_CPU_name: "Cortex-A8" for A8 toolchain, the result
binary's Tag_CPU_name is also "Cortex-A8". Is this expected behavior of ld, or
maybe tags should be merged to "Cortex-A15"?
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug ld/17212] New: Tag_CPU_name merging produces wrong tag.,
m.ostapenko at partner dot samsung.com <=