Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Userland emulator



>> because less slow instruction-by-instruction emulation is involved.
> Obviously you need to add a JIT compiler.

"Obviously", heh.

That "Obviously" makes me suspect you are at least partially joking.
But, even if so, this is reasonable enough that I think it's worth
looking at the idea.  So for the rest of this message I'm going to
treate it as if you were entirely serious, while realizing that you
quite possibly actually weren't.

(1) That would break - or at least be unusable in conjunction with -
most forms of tracing, which renders it pointless for many uses.
(Jitting only when not tracing would mean that the implementation
differs severely between tracing and not tracing, opening up the
potential for bugs that disappear upon turning tracing on.  The
potential for them now, while not zero, is far smaller.)

(2) That would make the emulator heavily dependent on the architecture
it's running on.  It currently is only very lightly dependent on it; it
depends on having at-least-32-bit and at-least-64-bit types, and I
might have slipped up and made it depend on having exactly-32-bits and
exactly-64-bits types.  And I think it might depend on the host byte
being exactly 8 bits wide it almost certainly depends on it being at
least 8 bits wide.  Most of these are things C doesn't promise, and
most of the rest are things I don't like to depend on even if C
currently does promise them, but they all are far more portable than
something that, like a jitter, depends on the host ISA.

(3) That would be another major, and very complex, piece to be chasing
bugs in.

(4) I don't even begin to understand jitters.  This is not inherently
an issue - I like understanding things, in general - but in the case of
jitters there is reluctance I don't really understand.  I'd want to
identify and resolve that first.

(5) The emulator is already in good enough shape to do what I wrote it
for.  If I find I want it to do more, then it might be worth
considering, though the other issues could/would still apply.

/~\ 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