vmjumpcc
|
When evaluated, this vm instruction performs a generic dynamically
typed compare of the source value with the comparitor value.
If the comparison is true, the instruction pointer is set equal to the
label argument; otherwise, the instruction pointer is promoted as
usual. Conversion between different numeric types is automatic. Comparison
of String types and Symbol types involves a full ascii comparison of their
string data. Comparison of all other object types involves a deep
comparison of their structured content.
The condition code for this instruction cc may compare for
less than, less than or equal, equal, not equal, greater than, greater
than or equal, all depending upon the value of cc. The condition code cc
is an extension to the instruction name so that there are really six
JMPcc instructions. vmjmplt, vmjmple, vmjmpeq,
vmjmpne, vmjmpge, and vmjmpgt.
The operation of this vm instruction is expressed in the following
C expression:
This virtual machine instruction performs a generic compare operation
(see the compare built-in function). So that all value pairs may be
compared, this instruction compares incompatible data types in the
order of their type codes (for instance Integers always compare less than
Strings). The disparate types which are compared by their values are
as follows:
Name
Format
AIS Types source regoffset word comparitor regoffset word label immediate integer
Name
Format
AIS Types source regoffset word comparitor regoffset word label immediate integer
Name
Format
AIS Types source regoffset word comparitor regoffset word label immediate integer
Here are a number of links to Lambda coding examples which contain this instruction in various use cases.
s
Here are a number of links to this instruction by related keywords.
[...under construction ]
Here are a number of links to this instructions of this same type.
Here are a number of links which are related to this instructions .
AIS Lambdas are designed to be write-once-run-anywhere executable objects. This is accomplished via the virtual machine concept of software Lambda execution. Lambda virtual machines are designed to be mapped onto the actual host microchip at the server location, providing faithful Lambda execution wherever the Lambda may travel on the Internet. There are currently several virtual machines operating within Analytic Information Server. The DRM virtual machine uses a Dynamically typed Register Machine model to provide portable Lambda execution from high level dynamically typed instructions all the way to super fast microchip-level register execution. The DRM virtual machine runs in emulation mode during the testing and debug phases of Lambda development, and there is an AIS Lambda debugger available for Lambdas running on this virtual machine. During the final release phases of Lambda development, DRM virtual machine Lambdas are automatically converted to the NATIVE virtual machine on the host computer, using the just-in-time compiler. The NATIVE virtual machine is a faithful machine language translation of the execution rules in the DRM virtual machine onto the actual host microchip at the server location. NATIVE virtual machine execution runs at microchip-level execution speeds.
Analytic Information Server (AIS)AIS Component Systems
|