[virtmach] switch vs dispatch table (was Your VM)
Thomas Fjellstrom
virtmach@iecc.com
Tue, 29 May 2001 03:42:19 -0600
Thaddaeus Frogley wrote:
>
> > Many compilers will generate an indirect jump through a
> > table of pointers for a dense switch. Generally, the
> > compiler can generate better code for this internally
> > than can be written in source code, so the switch version
> > is likely to be faster.
>
> Most compilers will generate a range check before the jump, where as a hand
> coded jump table can assume that the data is in range. Of course, its very
> hard to say, as we haven't even mentioned what language this VM might be
> implemented in...
>
Personally I was thinking about C and gcc when I asked the question...
--
"Computer programmers don't byte, they nybble a bit."
Thomas Fjellstrom
tfjellstrom@home.com
http://strangesoft.net/