- | デバイスのcmpf.d,cmpf.s命令は,“cmpf.* fcond, reg2, reg1, fcbit”の形式です。 |
asrhでは,“cmpffcond.* reg2, reg1, fcbit”の形式も指定できます。cmpffcondに指定可能な記述と,意味を表 5.29に示します。
|
|
|
|
cmpff.*
|
FALSE
|
常に偽
|
cmpf.* 0x0
|
cmpfun.*
|
Unordered
|
reg1, reg2の少なくとも一方が非数
|
cmpf.* 0x1
|
cmpfeq.*
|
reg2 = reg1
|
いずれも非数ではなく,かつ等しい
|
cmpf.* 0x2
|
cmpfueq.*
|
reg2 ?= reg1
|
少なくとも一方が非数か,等しい
|
cmpf.* 0x3
|
cmpfolt.*
|
reg2 < reg1
|
いずれも非数ではなく,かつより小さい
|
cmpf.* 0x4
|
cmpfult.*
|
reg2 ?< reg1
|
少なくとも一方が非数か,より小さい
|
cmpf.* 0x5
|
cmpfole.*
|
reg2 ≦ reg1
|
いずれも非数ではなく,かつより小さいか,等しい
|
cmpf.* 0x6
|
cmpfule.*
|
reg2 ?≦ reg1
|
少なくとも一方が非数か,より小さいか,等しい
|
cmpf.* 0x7
|
cmpfsf.*
|
FALSE
|
常に偽
|
cmpf.* 0x8
|
cmpfngle.*
|
Unordered
|
reg1, reg2の少なくとも一方が非数
|
cmpf.* 0x9
|
cmpfseq.*
|
reg2 = reg1
|
いずれも非数ではなく,かつ等しい
|
cmpf.* 0xA
|
cmpfngl.*
|
reg2 ?= reg1
|
少なくとも一方が非数か,等しい
|
cmpf.* 0xB
|
cmpflt.*
|
reg2 < reg1
|
いずれも非数ではなく,かつより小さい
|
cmpf.* 0xC
|
cmpfnge.*
|
reg2 ?< reg1
|
少なくとも一方が非数か,より小さい
|
cmpf.* 0xD
|
cmpfle.*
|
reg2 ≦ reg1
|
いずれも非数ではなく,かつより小さいか,等しい
|
cmpf.* 0xE
|
cmpfngt.*
|
reg2 ?≦ reg1
|
少なくとも一方が非数か,より小さいか,等しい
|
cmpf.* 0xF
|
[記述例]
cmpfeq.s r10, r11, 0 ; cmpf.s 0x2, r10, r11, 0 と同じ
|