Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

How to setup Stacks in GNU

2004-12-28 by sig5534

Perhaps I am asking a real simple question, but for the life of me I 
cannot find much information or example code on stack setup.  I'm 
trying to move my IAR code over to GNU, and of course the GNU syntax 
does not handle all of the ARM Asm coding.

In IAR they gave an example like this:

  mrs   r0,cpsr               /* Original PSR value  */
  bic   r0,r0,#MODE_BITS      /* Clear the mode bits */
  orr   r0,r0,#SVC_MODE       /* Set SVC mode bits   */
  msr   cpsr_c,r0             /* Change the mode     */
  ldr   sp,=SFE(SVC_STACK) & 0xFFFFFFF8  /* End of SVC_STACK */

The GNU compiler will take all of this - except for that last 
statement.  I have no idea what that "SFE" command is doing and 
neither does GNU apparently.  I can't even find anything on this in 
the ARM7 Instruction set manual.

What is this last statement doing, and what would be the correct 
equiv to use in GNU?

I've looked through the files here and I do not see many examples of 
detailed stack setup.  If anyone knows where there are more examples 
of "ld" scripts and init/boot/startup.s files it sure would be 
helpful.

Thanks,  Chris.

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.