[PATCH ARM/THUMB] replace mov with movs in crt0.S
Thomas Klein
th.r.klein@web.de
Fri Nov 25 15:33:00 GMT 2011
On 11/23/11 18:18, Richard Earnshaw wrote:
> On 23/11/11 18:24, Thomas Klein wrote:
>
>> The ARM7TDMI machine usually starting with a crt0 in ARM similar the one
>> in arm-elf-eabi/newlib.
>> The Cortex-M3 machine starts with a THUMB2 crt0 similare the one in
>> arm-elf-eabi/thumb/thumb2/newlib
>> When running a test thumb program in arm-sim the crt0 of
>> arm-elf-eabi/thumb/newlib is used.
>> And at least with this I have had the problem.
>> The simulator did not like the MOV lo, lo.
>> Using MOVS lo, lo instead helps.
>>
> So can you send me the output of
>
> readelf -A crt0.o
>
> For the object file that you think is incorrectly built please.
>
>> If this problem is been created by myself. Since usually no
>> THUMB/Interwork crt0 would be created
>> and only a ARM or THUMB2 crt0 would exist.
>> Then I have to say sorry for the trouble I made.
> I'm not trying to suggest that, I'm just trying to understand what's
> going on here. It looks to me as though the permutation you're using
> should be using legacy syntax and I don't, yet, understand why you are
> seeing the problem you are reporting.
>
> R.
>
>
Oops, this is not what I was expected to see.
I thought to see v4t with thumb1 and not v6t2 with thumb2.
My solutions might be to simple, and not correct.
regards
Thomas
File: ./arm-elf-eabi/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed
File: ./arm-elf-eabi/thumb/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
File: ./arm-elf-eabi/thumb/thumb2/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "7"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
File: ./arm-elf-eabi/interwork/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v4
Tag_ARM_ISA_use: Yes
Tag_DIV_use: Not allowed
File: ./arm-elf-eabi/thumb/interwork/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v6T2
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
File: ./arm-elf-eabi/thumb/thumb2/interwork/newlib/crt0.o
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "7"
Tag_CPU_arch: v7
Tag_THUMB_ISA_use: Thumb-2
Tag_DIV_use: Not allowed
More information about the Newlib
mailing list