On Saturday, 1 June 2013 at 05:29:28 UTC, Alex Rønne Petersen wrote:
Hi,

I'm sure this has been brought up before, but I feel I need to bring it up again (because I'm going to be writing a threaded-code interpreter): http://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html

This is an incredibly important extension. The final switch statement is not a replacement because it doesn't allow the programmer to store a label address directly into a code stream, which is what's essential to write a threaded-code interpreter.

The Erlang folks went through hell just to use this feature; see the 5th Q at: http://www.erlang.org/doc/installation_guide/INSTALL-WIN32.html#Frequently-Asked-Questions


It would also solve the problem with IASM and being unable to address the labels in iasm

I noticed the problem when I tried to address the db'ed bytes.
http://dpaste.dzfl.pl/36bbd7d3

Commented out //mov dword ptr RAX, meh; ??? illustrates the problem.

Jumping to labels in IASM blocks seems to work ( http://dpaste.dzfl.pl/d9e47f70 ).

I guess we could have two chickens backed on the same fire ;)

Reply via email to