D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] Java on Pi

 

On 15/06/12 08:04, Gordon Henderson wrote:
On Fri, 15 Jun 2012, tom wrote:

On 14/06/12 21:33, Gordon Henderson wrote:
Now... It's possible to compile programs for the ARMv6 to use the hardware floating point, BUT, the function calling ABI still uses integer registers to pass floating point arguments - in Debian armel. This is somewhat sub-optimal. Also all the userland programs that might need floating point are compiled to use software floating point.
Are the GCC people looking at this? Strikes me as their domain

Not convinced it's GCC's issue... GCC supports everything that's needed to be supported - it's down to the choice of the people building the distro passing in flags of their choice to GCC...

So if you build the libraries using the softfp ABI, then programs compiled using the hardfp ABI will not work - they are not even recognised as executables by Linux - and the ABI carries on right through the libraries to systemcalls into the kernel. (however it's possible to compile a kernel that will run either AIUI)

So AIUI, at the time of the build of Squeeze, there were very few ARMv6 systems out there, so Debian chose to not support hard FP on them - presumably because that would then introduce yet another architecture - because (AIUI) ARMv6 FP is not binary compatible with ARMv7 FP.

The ARM architecture appears to be a mess. I understand there is a lot of work to try to amalgamate it and sanitise it, but try building a kernel for ARM and see just how many systems & processor types it has to support. It's not helped by Android either - as there doesn't seem to be any sort of common hardware platform either, so it's device driver madness.. e.g. the Ethernet chip in the Pi is actually a USB Ethernet chip - they have a single chip USB 2-port hub + Ethernet hardware connected to the BCM SoC. No PCI bus on the Pi...

So big commercial platforms will be well supported, but anything else is guess work - and getting a proper hardfp Debian distro going is an on-going process by a very small number of very dedicated people - Support it if you can.

http://raspbian.org/

Gordon

On intel and amd you can just:
cat /proc/cpuinfo
and more or less paste the flags into a make file and away you go.
I'm surprised arm doesn’t do that.
Tom te tom te tom

--
The Mailing List for the Devon & Cornwall LUG
http://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/listfaq