EmbDev.net

Forum: ARM programming with GCC/GNU tools ARM ASM to GNU ASM


von Saleemuddin M. (saleemuddin_m)


Rate this post
useful
not useful
Hi All,
I am trying to convert the asm code from ARM to GNU format.  I converted 
most of the code to the new format but could not find the equivalent of 
some code in the gnu format. Here is the snippet.
    LTORG

    ALIGN

    AREA RamData, DATA, READWRITE

    ^   _ISR_STARTADDRESS       ; _ISR_STARTADDRESS=0x33FF_FF00
HandleReset     #   4
HandleUndef     #   4
HandleSWI       #   4

In the above the code, what is the symbol '^' says and what its 
equivalent in the gnu asm. Similarly the following lines like 
"HandleReset     #   4" how its expanded and equivalent in gnu asm.

Please let me know if you have any idea or come across such problems. I 
will really appreciate your help.


Thanks in advance,
Saleem

von Krapao (Guest)


Rate this post
useful
not useful
Why are you trying this?

Normally the GNU GCC ARM toolchains have already C startup code files. 
You find the source of these files in the NEWLIB for your GNU GCC ARM 
toolchain.

If there is a need to implement a new ARM target taht only available in 
IARARM, then it is a better way to adapt an existing NEWLIB C startup 
file from a target similar to the new one.

von Saleemuddin M. (saleemuddin_m)


Rate this post
useful
not useful
Thanks for the prompt response. The files I am building are board 
specific, will the gnu version of these files also available in newlib 
and board iam using in FriendlyARM (mini2440). Can you please point me 
to link for newlib sources.

Thanks,
Saleem

von Krapao (Guest)


Rate this post
useful
not useful
No i can't, because i don't have experience with FriendlyARM.

But there is a large FriendlyARM Wiki at http://www.friendlyarm.net with 
developer information for different scenarios: FriendlyARM with 
Bootloader, Linux, WinCE, Other.

In case you are looking for Linux development there is a GNU GCC 
toolchain and there will be precompiled c startup files and libraries so 
you can start with application-for-known-target-development instead of 
toolchain-for-new-target-development.

von Saleemuddin M. (saleemuddin_m)


Rate this post
useful
not useful
Assembly sources(c/assembly) provided in the friendly website are tested 
using the ARM toolchain(for example UCOS-II) but i am using the gnu 
toolchain. C files are building fine but the issue is with the .s files 
as the syntax is ARM specific.

von Krapao (Guest)


Rate this post
useful
not useful
So you try a port of UCOS-II to FriendlyARM Mini2440 with GNU 
Toolchain...

The the ARM® Developer Suite, Version 1.2, Assembler Guide might be 
useful
http://www.idt.mdh.se/kurser/cdt214/ARM_Assembler_Guide.pdf
1
7.3.2 MAP
2
The MAP directive sets the origin of a storage map to a specified address. The storage-map location counter, {VAR}, is set to the same address. ^ is a synonym for MAP.
3
Syntax
4
MAP expr{,base-register}
5
...

von Saleemuddin M. (saleemuddin_m)


Rate this post
useful
not useful
Thanks a lot for your help. Using MAP(^) and FIELD(#) directives, data 
structure is defined in the ASM file. Now I will see how to make it gnu 
equivalent.

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.