On 15 August 2012 00:54, Cameron Kaiser <spectre at floodgap.com> wrote:
So this is not
a condemnation of emulation, but it is a
cautionary tale that sometimes, it's not as easy as it
appears to "get it right", and that's where having real
working hardware can help.
Real world example:
I was looking at the PCRE library, which now uses a JIT for compilation of
regular expressions (much like YARR for those who are familiar with
JavaScriptCore), since it advertised PowerPC compatibility. It had been
tested extensively in QEMU, but on real Power Macs it crashed because the
cache didn't behave the way it did in QEMU. Fortunately it was easy to
fix.
Another real world example - the vax MSCP device attachment code in
NetBSD was updated to better use kernel threads after NetBSD-5, but
while the first version code ran fine under simh it failed to attach
on real hardware - due to a timing related bug.