pradeep sawlani wrote:
[...]
> gcc version 3.4.3
[...]
> ../arm/locore.S:134: Error: register expected, not '#0x03' -- `orr r0,#0x03'
> ../arm/locore.S:141: Error: register expected, not '#0x1000' -- `add 
> r0,#0x1000'
> ../arm/locore.S:152: Error: register expected, not '#0x03' -- `orr r0,#0x03'
> ../arm/locore.S:179: Error: register expected, not '#0x80000000' --
> `add r1,#0x80000000'

gcc 3 doesn't support the two-operand shorthand ARM instructions. So you 
need:

   add r0, r0, #0x1000

instead of:

   add r0, #0x1000

(I assume the two-operand instructions are for compatibility with Thumb.)

[...]
> gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)
[...]
> In function `__aeabi_ldiv0':
> (.text+0x8): undefined reference to `raise'

gcc 4 changed the ABI. Trying to divide by zero now uses raise() to 
produce a signal. Of course, if you're on a platform which doesn't have 
signals, this is meaningless; the simplest workaround is just to define 
a dummy symbol raise somewhere.

-- 
┌─── dg@cowlark.com ───── http://www.cowlark.com ─────
│
│ "They laughed at Newton. They laughed at Einstein. Of course, they
│ also laughed at Bozo the Clown." --- Carl Sagan

------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Prex-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/prex-devel

Reply via email to