COP1: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
Line 204: | Line 204: | ||
|+ Compare encoding |
|+ Compare encoding |
||
|- |
|- |
||
! SignalOnSNAN (Bit 3) !! Smaller (Bit 2) || Equal (Bit 1) || Unordered (Bit 0) || Name || |
! SignalOnSNAN (Bit 3) !! Smaller (Bit 2) || Equal (Bit 1) || Unordered (Bit 0) || Name || Result formula || Invalid Operation Condition |
||
|- |
|- |
||
| 0 || 0 || 0 || 0 || F || false |
| 0 || 0 || 0 || 0 || F || Result = false || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 0 || 0 || 1 || UN || Result = unordered(arg1, arg2) |
| 0 || 0 || 0 || 1 || UN || Result = unordered(arg1, arg2) || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 0 || 1 || 0 || EQ || Result = arg1 == arg2 |
| 0 || 0 || 1 || 0 || EQ || Result = arg1 == arg2 || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 0 || 1 || 1 || UEQ || Result = unordered(arg1, arg2) |
| 0 || 0 || 1 || 1 || UEQ || Result = unordered(arg1, arg2) OR (arg1 == arg2) || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 1 || 0 || 0 || OLT || Result = arg1 < arg2 |
| 0 || 1 || 0 || 0 || OLT || Result = arg1 < arg2 || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 1 || 0 || 1 || ULT || Result = unordered(arg1, arg2) || (arg1 |
| 0 || 1 || 0 || 1 || ULT || Result = unordered(arg1, arg2) OR (arg1 < arg2) || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 1 || 1 || 0 || OLE || Result = arg1 <= arg2 |
| 0 || 1 || 1 || 0 || OLE || Result = arg1 <= arg2 || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 0 || 1 || 1 || 1 || ULE || Result = unordered(arg1, arg2) |
| 0 || 1 || 1 || 1 || ULE || Result = unordered(arg1, arg2) OR (arg1 <= arg2) || IsQNAN(arg1) OR isQNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 0 || 0 || 0 || SF || false |
| 1 || 0 || 0 || 0 || SF || Result = false || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 0 || 0 || 1 || NGLE || Result = unordered(arg1, arg2) |
| 1 || 0 || 0 || 1 || NGLE || Result = unordered(arg1, arg2) || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 0 || 1 || 0 || SEQ || Result = arg1 == arg2 |
| 1 || 0 || 1 || 0 || SEQ || Result = arg1 == arg2 || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 0 || 1 || 1 || NGL || Result = unordered(arg1, arg2) |
| 1 || 0 || 1 || 1 || NGL || Result = unordered(arg1, arg2) OR (arg1 == arg2) || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 1 || 0 || 0 || LT || Result = arg1 < arg2 |
| 1 || 1 || 0 || 0 || LT || Result = arg1 < arg2 || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 1 || 0 || 1 || NGE || Result = unordered(arg1, arg2) || (arg1 |
| 1 || 1 || 0 || 1 || NGE || Result = unordered(arg1, arg2) OR (arg1 < arg2) || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 1 || 1 || 0 || LE || Result = arg1 <= arg2 |
| 1 || 1 || 1 || 0 || LE || Result = arg1 <= arg2 || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|- |
|- |
||
| 1 || 1 || 1 || 1 || NGT || Result = unordered(arg1, arg2) |
| 1 || 1 || 1 || 1 || NGT || Result = unordered(arg1, arg2) OR (arg1 <= arg2) || IsNAN(arg1) OR isNAN(arg2) OR isSubnormal(arg1) OR isSubnormal(arg2) |
||
|-|} |
|-|} |