On Wed, 2008-12-31 at 12:51 -0600, Jason Orendorff wrote: > On Wed, Dec 31, 2008 at 11:44 AM, Christian Heimes <li...@cheimes.de> wrote: > > The patch makes use of a GCC feature where labels can be used as values: > > http://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html . I didn't know > > about the feature and got confused by the unary && operator. > > Right. SpiderMonkey (Mozilla's JavaScript interpreter) does this, and > it was good for a similar win on platforms that use GCC. (It took me > a while to figure out why it was so much faster, so I think this patch > would be better with a few very specific comments!) > > SpiderMonkey calls this optimization "threaded code" too, but this > isn't the standard meaning of that term. See: > http://en.wikipedia.org/wiki/Threaded_code
FWIW, it's also explained pretty well in the first pages of [1]. WebKit's SquirrelFish is direct-threaded as well [2]. Nicolas [1] http://citeseer.ist.psu.edu/cache/papers/cs/32018/http:zSzzSzwww.jilp.orgzSzvol5zSzv5paper12.pdf/ertl03structure.pdf [2] http://webkit.org/blog/189/announcing-squirrelfish/ _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com