Port-sparc archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Are we the last ones?
> I agree -- sparc is a good platform for bug hunting (and PPC and
> Alpha), though perhaps not quite as good as more modern tools like
> valgrind (if only we had that working properly on NetBSD!).
valgrind cannot, however, detect code making endianness assumptions.
Interesting you should mention valgrind. I've been wanting to do
something valgrindish for NetBSD for a year or two now (ever since I
started using valgrind at work).
It would be difficult to do it on sparc the way valgrind does it. I
looked at massaging the machine code and it looked really hard to make
it correctly support a jmpl/restore pair, such as occurs in many
function epilogues - the conclusion I came to was that I'd basically
have to build an emulator, even when running on sparc32. So I've
merged that with another project, writing a SPARC(32) userland-level
emulator; I've added hooks that, basically, migrate malloc() into the
emulator, where I can do things like memory access checking at byte
granularity.
Unfortunately the emulator is slightly buggy. I don't know what's
wrong with it, but it doesn't survive an attempt to do a
build-of-the-world, a thing that works fine on real hardware. Some one
of these years I hope to find the time to sit down and figure out
what's wrong with it, but so far I haven't had the time to focus on it
like that.
> I still have some sparc 32-bit hardware, but not the time to work
> with it at the moment. I don't know how much of it will still keep
> the smoke inside the wires when next powered on either.
In that respect I am fortunate; I have three SS20s in live use, as my
screen-and-keyboard machines at home and at my (two) jobs. I've got a
fourth one set up as a hacking-around-on machine, though it's been some
months since I had the leisure to even so much as turn it on.
/~\ The ASCII Mouse
\ / Ribbon Campaign
X Against HTML mouse%rodents-montreal.org@localhost
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B
Home |
Main Index |
Thread Index |
Old Index