EmbDev.net

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

Author: Saleemuddin M. (saleemuddin_m)
Posted on:

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
Author: Krapao (Guest)
Posted on:

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.
Author: Saleemuddin M. (saleemuddin_m)
Posted on:

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
Author: Krapao (Guest)
Posted on:

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.
Author: Saleemuddin M. (saleemuddin_m)
Posted on:

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.
Author: Krapao (Guest)
Posted on:

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
7.3.2 MAP
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.
Syntax
MAP expr{,base-register}
...
Author: Saleemuddin M. (saleemuddin_m)
Posted on:

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.

Reply

Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]






webmaster@embdev.netContactAdvertising on EmbDev.net