Skip to content

Latest commit

 

History

History
29 lines (16 loc) · 1.12 KB

iii.3.22-cgt.md

File metadata and controls

29 lines (16 loc) · 1.12 KB

III.3.22 cgt – compare greater than

Format Assembly Format Description
FE 02 cgt Push 1 (of type int32) if value1 > value2, else push 0.

Stack Transition:

…, value1, value2 → …, result

Description:

The cgt instruction compares value1 and value2. If value1 is strictly greater than value2, then 1 (of type int32) is pushed on the stack. Otherwise, 0 (of type int32) is pushed on the stack.

For floating-point numbers, cgt returns 0 if the numbers are unordered (that is, if one or both of the arguments are NaN). As with IEC 60559:1989, infinite values are ordered with respect to normal numbers (e.g., +infinity > 5.0 > -infinity).

The acceptable operand types are encapsulated in Table 4: Binary Comparison or Branch Operations.

Exceptions:

None.

Correctness:

Correct CIL provides two values on the stack whose types match those specified in Table 4: Binary Comparison or Branch Operations

Verifiability:

There are no additional verification requirements.