SPARC Assembly Language Reference Manual

# 5.3 Floating-Point Instruction

Table 5–4 shows floating-point instructions. In cases where more than numeric type is involved, each instruction in a group is described; otherwise, only the first member of a group is described.

Table 5–4

SPARC

Mnemonic [Types of Operands are denoted by the following lower-case letters:i integers singled doubleq quad]

Argument List

Description

FiTOs

fitos

fregrs2, fregrd

Convert integer to single

FiTOd

fitod

fregrs2, fregrd

Convert integer to double

FiTOq

fitoq

fregrs2, fregrd

FsTOi

fstoi

fregrs2, fregrd

Convert single to integer

FdTOi

fdtoi

fregrs2, fregrd

Convert double to integer

FqTOi

fqtoi

fregrs2, fregrd

FsTOd

fstod

fregrs2, fregrd

Convert single to double

FsTOq

fstoq

fregrs2, fregrd

FdTOs

fdtos

fregrs2, fregrd

Convert double to single

FdTOq

fdtoq

fregrs2, fregrd

FqTOd

fqtod

fregrs2, fregrd

FqTOs

fqtos

fregrs2, fregrd

FMOVs

fmovs

fregrs2, fregrd

Move

FNEGs

fnegs

fregrs2, fregrd

Negate

FABSs

fabss

fregrs2, fregrd

Absolute value

FSQRTs

FSQRTd

FSQRTq

fsqrts

fsqrtd

fsqrtq

fregrs2, fregrd

fregrs2, fregrd

fregrs2, fregrd

Square root

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

FSUBs

FSUBd

FSUBq

fsubs

fsubd

fsubq

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

Subtract

FMULs

FMULd

FMULq

fmuls

fmuld

fmulq

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

Multiply

FdMULq

fmulq

fregrs1, fregrs2, fregrd

FsMULd

fsmuld

fregrs1, fregrs2, fregrd

Multiply single to double

FDIVs

FDIVd

FDIVq

fdivs

fdivd

fdivq

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

Divide

FCMPs

FCMPd

FCMPq

fcmps

fcmpd

fcmpq

fregrs1, fregrs2

fregrs1, fregrs2

fregrs1, fregrs2

Compare

FCMPEs

FCMPEd

FCMPEq

fcmpes

fcmped

fcmpeq

fregrs1, fregrs2

fregrs1, fregrs2

fregrs1, fregrs2

Compare, generate exception if not ordered