vmnatJumpCCNumber

 

 

Description

When evaluated, this vm instruction compares 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. Both arguments are assumed to be Number types (the types are not checked). There is no conversion of the source or comparitor types. This instruction will never return an Error value.

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 ccis an extension to the instruction name so that there are really six JMPcc instructions. vmnatJumpLTNumber, vmnatJumpLENumber, vmnatJumpEQNumber, vmnatJumpNENumber, vmnatJumpGENumber, and vmnatJumpGTNumber.

The operation of this vm instruction is expressed in the following C expression:

 

Syntax

(vmnatJmpGTNumber source comparitor label)


Name Format AIS Types
sourceregoffsetnumber
comparitorregoffset number
label immediatenumber


(vmnatJmpEQNumber source comparitor label)


Name Format AIS Types
sourceregoffsetnumber
comparitorregoffset number
label immediatenumber


(vmnatJmpGENumber source comparitor label)


Name Format AIS Types
sourceregoffsetnumber
comparitorregoffset number
label immediatenumber


 

Examples

Here are a number of links to Lambda coding examples which contain this instruction in various use cases.

s

 

Keyword Links

Here are a number of links to this instruction by related keywords.

[...under construction ]

 

Instruction Type

Here are a number of links to this instructions of this same type.

vmnatAddInteger vmnatAddNumber vmnatAndInteger vmnatDivInteger
vmnatDivNumber vmnatDivrInteger vmnatDivrNumber vmnatJumpCCInteger
vmnatJumpCCNumber vmnatLoadCharacter vmnatLoadFloat vmnatLoadInteger
vmnatLoadLong vmnatLoadNumber vmnatLoadObject vmnatLoadShort
vmnatMulInteger vmnatMulNumber vmnatOrInteger vmnatSaveCharacter
vmnatSaveFloat vmnatSaveInteger vmnatSaveLong vmnatSaveNumber
vmnatSaveObject vmnatSaveShort vmnatShlInteger vmnatShrInteger
vmnatSubInteger vmnatSubNumber vmnatXorInteger

 

Argument Types

Here are a number of links which are related to this instructions .

vmadd vmaddi vmaddn vmdiv
vmdivi vmdivn vmdivr vmdivri
vmdivrn vmjumpcc vmmul vmmuli
vmmuln vmnadd vmnatAddNumber vmnatDivNumber
vmnatDivrNumber vmnatJumpCCNumber vmnatLoadFloat vmnatLoadNumber
vmnatMulNumber vmnatSaveFloat vmnatSaveNumber vmnatSubNumber
vmndiv vmndivr vmnmul vmnsub
vmregAbsNumber vmregAddNumber vmregCosNumber vmregDivNumber
vmregDivrNumber vmregInteger vmregJumpCCNumber vmregLoadNumber
vmregLogNumber vmregMoveNumber vmregMulNumber vmregNumber
vmregPwrNumber vmregRefNumber vmregSaveNumber vmregSaveTail
vmregSetFloat vmregSetIntImmediate vmregSetNumber vmregSetXFloat
vmregSetXNumber vmregSinNumber vmregSqrtNumber vmregSubNumber
vmregTanNumber vmsub vmsubi vmsubn
vmvecNumScalar vmvecNumVector vmvecPop vmvecPopNumber
vmvecPush vmvecPushNumber vmvecSwapCC

 

Virtual Machine 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.

How do I contact the AIS team?

You can always talk with the AIS at aiserver.sourceforge.net.