VMS Help MACRO, VAX MACRO Assembler, Vector Instructions, VVCVT *Conan The Librarian (sorry for the slow response - running on an old VAX) |
Vector Convert Format: { VVCVTLF } { VVCVTLD } { VVCVTLG } { } { VVCVTFL } { VVCVTRFL } { VVCVTFD } { } { VVCVTFG } [/U[0|1]] Vb, Vc { VVCVTDL } { VVCVTDF } { } { VVCVTRDL } { VVCVTGL } { VVCVTGF } { } { VVCVTRGL } Architecture Format opcode cntrl.rw opcodes ECFD VVCVT Vector Convert vector_control_word 1 1 1 1 1 5 4 3 2 1 8 7 4 3 0 +-+-+-+-+-------+-------+-------+ |M|M|E| | cvt | | | |O|T|X|0| func | Vb | Vc | |E|F|C| | | | | +-+-+-+-+-------+-------+-------+ Cntrl<11:8> specifies the conversion to be performed, as follows: cntrl<11:8> Meaning 1 1 1 1 CVTRGL (Convert Rounded G_Floating to Longword) 1 1 1 0 Reserved 1 1 0 1 CVTGF (Convert Rounded G_Floating to F_Floating) 1 1 0 0 CVTGL (Convert Truncated G_Floating to Longword) 1 0 1 1 Reserved 1 0 1 0 CVTRD (Convert Rounded D_Floating to Longword) 1 0 0 1 CVTDF (Convert Rounded D_Floating to F_Floating) 1 0 0 0 CVTDL (Convert Truncated D_Floating to Longword) 0 1 1 1 CVTFG (Convert F_Floating to G_Floating (exact)) 0 1 1 0 CVTFD (Convert F_Floating to D_Floating (exact)) 0 1 0 1 CVTRF (Convert Rounded F_Floating to Longword) 0 1 0 0 CVTFL (Convert Truncated F_Floating to Longword) 0 0 1 1 CVTLG (Convert Longword to G_Floating (exact)) 0 0 1 0 CVTLD (Convert Longword to D_Floating (exact)) 0 0 0 1 CVTLF (Convert Rounded Longword to F_Floating) 0 0 0 0 Reserved exceptions floating overflow floating reserved operand floating underflow integer overflow operation FOR i <- 0 TO VLR-1 IF {{MOE EQL 0} OR {{MOE EQL 1} AND {VMR<i> EQL MTF}}} THEN Vc[i] <- {conversion of Vb[i]}
|