Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2005-08

FPC Arm options

6 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Robert Reimiller

From the compiler I get:

Free Pascal Compiler version 2.0.0

Compiler Date : 2005/05/15
Compiler CPU Target: arm

Supported targets:
Linux for ARM

Supported CPU instruction sets:
ARMV3
ARMV4
ARMV5

Supported FPU instruction sets:
SOFT
LIBGCC
FPA
FPA10
FPA11
VFP

From this it looks like there is a software floating emulation library, true?
I don't see any option for big endian versus little endian. The development kit we got runs in big endian mode. What endian mode does FPC generate code for, or is it selectable somewhere? We ended up with the IXP425 processor because they kept the fact that it doesn't have a FPU fairly well hidden. There is another board with a PXA255 although I'm not sure if that is running
in little endian or not, since the chip can apparently run in either mode.

Reply by email

Robert Reimiller
to Robert Reimiller

Just a followup, I noticed the following during bootup:

NetWinder Floating Point Emulator V0.97 (double precision)

I guess they already include an emulator with the Linux distribution. Is FPC compatable with this emulator?

Reply by email

peter green
to Robert Reimiller
Show quoted text 15 lines
-----Original Message----- From: Behalf Of Robert Reimiller Sent: 20 August 2005 02:10 To: fpc-devel mailing list Subject: [fpc-devel] Re: FPC Arm options Just a followup, I noticed the following during bootup: NetWinder Floating Point Emulator V0.97 (double precision) I guess they already include an emulator with the Linux distribution. Is FPC compatable with this emulator?

dunno but from what i can gather softfloat code is generally faster than os level emulation because of the costs of trapping cpu exceptions in the os.

Reply by email

Robert Reimiller
to peter green
peter green wrote
dunno but from what i can gather softfloat code is generally faster than os level emulation because of the costs of trapping cpu exceptions in the os.

That's what I have heard too. I suppose if there is already an emulation software
library that would be preferable.

I think though I'm screwed as far as the endian issue is concerned. I just checked
out the source using svn and found the line: " endian : endian_little;"
for the Arm-Linux target definition. I kind of doubt that changing that to endian_big and
recompiling will work

It turns out that Arcom's PXA255 board runs in little endian mode, although it only
has USB 1.1 which would impact the disk performance (we have to use a USB to IDE adaptor).
The Arcom linux development software actually comes with either arm-linux-xxx (such as arm-linux-gcc)
or armbe-linux-xxx (for big endian) programs. I could use GCC, but I don't have any
real interest in downgrading 35000 lines of Pascal into C.

Actually I wish I could avoide the whole ARM/Linux thing altogether and find a low-power
586 class board with an OS that emulates Win32 so I could just make a console application in
Delphi and run on it. Oh well.

Reply by email

Florian Klaempfl
to Robert Reimiller
Robert Reimiller wrote 19 lines
On Sat, 20 Aug 2005 08:00:08 -0700, peter green wrote: > dunno but from what i can gather softfloat code is generally faster > than os > level emulation because of the costs of trapping cpu exceptions in > the os. That's what I have heard too. I suppose if there is already an emulation software library that would be preferable. I think though I'm screwed as far as the endian issue is concerned. I just checked out the source using svn and found the line: " endian : endian_little;" for the Arm-Linux target definition. I kind of doubt that changing that to endian_big and recompiling will work

Give it a try. If it doesn't work, it should be little effort to fix it, but you've to recompile everything rtl etc. to get it work.

About the softfloat stuff: I'll look into it the next days, it seems we need it for wince too.

Show quoted text 20 lines
It turns out that Arcom's PXA255 board runs in little endian mode, although it only has USB 1.1 which would impact the disk performance (we have to use a USB to IDE adaptor). The Arcom linux development software actually comes with either arm-linux-xxx (such as arm-linux-gcc) or armbe-linux-xxx (for big endian) programs. I could use GCC, but I don't have any real interest in downgrading 35000 lines of Pascal into C. Actually I wish I could avoide the whole ARM/Linux thing altogether and find a low-power 586 class board with an OS that emulates Win32 so I could just make a console application in Delphi and run on it. Oh well. _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Robert Reimiller
to Florian Klaempfl
Florian Klaempfl wrote 5 lines
> for the Arm-Linux target definition. I kind of doubt that changing that > to endian_big and recompiling will work Give it a try. If it doesn't work, it should be little effort to fix it, but you've to recompile everything rtl etc. to get it work.

OK. The PC is tied up right now but I can probably try this sometime this week.

About the softfloat stuff: I'll look into it the next days, it seems we need it for wince too.

Are you saying it isn't implemented in the current rtl?

Reply by email