Just a quick follow-up to the earlier discussion about compiling Squeak on ARM with optimizations....
I went back and rebuilt the VM, omitting optimizations for the module that causes the problems with GCC-ARM (SoundCodecPlugin.c). When I try to start an image with the resulting VM however, I get an illegal instruction and it dies. SoundCodecPlugin.c is the only module that triggers the bug in GCC.
So, until I can get into an environment with an up-to-date ARM toolchain, the iPaq benchmarks on Linux with optimization will have to wait for a while. I'll try signing on to the handhelds.org mailing list and post a query about the toolchain on their build farm...I imagine they'll update it someday.
(So for now, the gauntlet must remain where it is.. :)
Kevin Fisher kgf@golden.net is widely believed to have written:
Just a quick follow-up to the earlier discussion about compiling Squeak on ARM with optimizations....
I went back and rebuilt the VM, omitting optimizations for the module that causes the problems with GCC-ARM (SoundCodecPlugin.c). When I try to start an image with the resulting VM however, I get an illegal instruction and it dies.
This is exactly the sort of thing I get on my NetWinder with their latest (at least, latest as of last May or so) linux release. Crai seemed to be able to get a working VM on his NW though, but we haven't had any time to do a comparison between the machines to see what the problem might be. I used to be able to make working Squeaks before upgrading to that latest release!
I heard a mention that the NW VM can run on linux'd iPaqs; so you might try http://netjam.org/self/projects/smalltalk/executables/squeak-2-9-a-netwi nder.zip just maybe?
tim PS If you have any knowledge of driving gdb (indeed if it works on iPaq) see if you can work out where the problem happened. I'm reasonably sure it is something to do with floating point emulation.
Kevin Fisher kgf@golden.net is widely believed to have written:
Just a quick follow-up to the earlier discussion about compiling Squeak on ARM with optimizations....
I went back and rebuilt the VM, omitting optimizations for the module that causes the problems with GCC-ARM (SoundCodecPlugin.c). When I try to start an image with the resulting VM however, I get an illegal instruction and it dies.
This is exactly the sort of thing I get on my NetWinder with their latest (at least, latest as of last May or so) linux release. Crai seemed to be able to get a working VM on his NW though, but we haven't had any time to do a comparison between the machines to see what the problem might be. I used to be able to make working Squeaks before upgrading to that latest release!
Actually, it was on the Netwinder site that I found the erratum about GCC being broken for certain optimizations. They claim it's purely a GCC on ARM thing... What versions of GCC are being used between the two Netwinders, I wonder?
The build farm on handhelds.org is some sort of odd crossbreed between Redhat and Debian..I don't believe it's running on Netwinders, but some sort of internal Compaq development platform.
I heard a mention that the NW VM can run on linux'd iPaqs; so you might try http://netjam.org/self/projects/smalltalk/executables/squeak-2-9-a-netwi nder.zip just maybe?
tim PS If you have any knowledge of driving gdb (indeed if it works on iPaq) see if you can work out where the problem happened. I'm reasonably sure it is something to do with floating point emulation.
Hmm...well, I think gdb used to be on my iPaq but I had to blow it away to make space for Squeak. I might be able to get it back on, however...debugging should be quite easy since there is a shell login hanging off the iPaq serial port. :)
I'll see what I can do..right now I'm trying to get OSProcess working with my shrunken image so I can completely do away with the window manager on the iPaq...that way I can call /sbin/shutdown and whatever else (the irda stuff?) right from Squeak. It would be nice be able to do away with X as well, but one step at a time... ;)
-- Tim Rowledge, tim@sumeru.stanford.edu, http://sumeru.stanford.edu/tim Use free-form input where possible.
Kevin Fisher kgf@golden.net is widely believed to have written:
What versions of GCC are being used between the two Netwinders, I wonder?
Excellent question. I hope to have time to find an answer soon.
I'll see what I can do..right now I'm trying to get OSProcess working with my shrunken image so I can completely do away with the window manager on the iPaq...that way I can call /sbin/shutdown and whatever else (the irda stuff?) right from Squeak. It would be nice be able to do away with X as well, but one step at a time... ;)
I have some code from doing the original Itsy port that might help there, especially combined with the FxBlt/ExternalSurface stuff. Let me know when you get to that point.
tim
squeak-dev@lists.squeakfoundation.org