- | The cmpf.d and cmpf.s instructions of the device should be specified in the format of "cmpf.* fcond, reg2, reg1, fcbit". |
In asrh, they can also be specified in the format of "cmpffcond.* reg2, reg1, fcbit". Code that can be specified in cmpffcond and the result of assembly are shown in Table 5.29.
Table 5.29 | cmpffcond Instruction List |
|
|
|
|
cmpff.*
|
FALSE
|
Always false
|
cmpf.* 0x0
|
cmpfun.*
|
Unordered
|
At least one of reg1 and reg2 is a non-number
|
cmpf.* 0x1
|
cmpfeq.*
|
reg2 = reg1
|
Neither is a non-number, and they are equal
|
cmpf.* 0x2
|
cmpfueq.*
|
reg2 ?= reg1
|
At least one is a non-number, or they are equal
|
cmpf.* 0x3
|
cmpfolt.*
|
reg2 < reg1
|
Neither is a non-number, and less than
|
cmpf.* 0x4
|
cmpfult.*
|
reg2 ?< reg1
|
At least one is a non-number, or less than
|
cmpf.* 0x5
|
cmpfole.*
|
reg2 <= reg1
|
Neither is a non-number, and less than or equal
|
cmpf.* 0x6
|
cmpfule.*
|
reg2 ?<= reg1
|
At least one is a non-number, or less than or equal
|
cmpf.* 0x7
|
cmpfsf.*
|
FALSE
|
Always false
|
cmpf.* 0x8
|
cmpfngle.*
|
Unordered
|
At least one of reg1 and reg2 is a non-number
|
cmpf.* 0x9
|
cmpfseq.*
|
reg2 = reg1
|
Neither is a non-number, and they are equal
|
cmpf.* 0xA
|
cmpfngl.*
|
reg2 ?= reg1
|
At least one is a non-number, or they are equal
|
cmpf.* 0xB
|
cmpflt.*
|
reg2 < reg1
|
Neither is a non-number, and less than
|
cmpf.* 0xC
|
cmpfnge.*
|
reg2 ?< reg1
|
At least one is a non-number, or less than
|
cmpf.* 0xD
|
cmpfle.*
|
reg2 <= reg1
|
Neither is a non-number, and less than or equal
|
cmpf.* 0xE
|
cmpfngt.*
|
reg2 ?<= reg1
|
At least one is a non-number, or less than or equal
|
cmpf.* 0xF
|
[Example]
cmpfeq.s r10, r11, 0 ; Same as "cmpf.s 0x2, r10, r11, 0"
|