NGWS SDK Documentation  

This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!

Intermediate Language (IL)

The Intermediate Language is intended to be easily targeted by compilers for a wide range of common programming languages and to be implemented by a range of IL-to-native code compilers, including Just-In-Time (JIT) compilers. It is the job of the JITter to convert from this Intermediate Language and execution model into the native instructions, calling convention, and execution model of a physical computer (see Conversion of IL into Native Code).

The virtual execution model consists of an evaluation stack used for pushing arguments to methods and built-in operations. At a method call the arguments are transferred from the control of the calling method to the control of the called method. Returned values of any instantiable type are pushed on the stack before method return. Instance and virtual methods are called by passing the this pointer as a “hidden” first parameter to the called method.

The IL instruction set can be divided into the following categories of instructions. See the IL Instruction Set specification for details