JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
SPARC Assembly Language Reference Manual     Oracle Solaris 11 Express 11/10
search filter icon
search icon

Document Information

Preface

1.  SPARC Assembler for SunOS 5.x

2.  Assembler Syntax

3.  Executable and Linking Format

4.  Converting Files to the New Format

5.  Instruction-Set Mapping

5.1 Table Notation

5.2 Integer Instructions

5.3 Floating-Point Instruction

5.4 Coprocessor Instructions

5.5 Synthetic Instructions

5.6 V8/V9 Natural Pseudo Instructions

A.  Pseudo-Operations

B.  Examples of Pseudo-Operations

C.  Using the Assembler Command Line

D.  An Example Language Program

E.  SPARC-V9 Instruction Set

Index

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.

In the Mnemonic column, types of operands are denoted by the following lowercase letters: i for integer, s for single, d for double, and q for quad.

Table 5-4 Floating-Point Instructions

SPARC
Mnemonic
Argument List
Description
FiTOs
fitos
fregrs2, fregrd
Convert integer to single
FiTOd
fitod
fregrs2, fregrd
Convert integer to double
FiTOq
fitoq
fregrs2, fregrd
Convert integer to quad
FsTOi
fstoi
fregrs2, fregrd
Convert single to integer
FdTOi
fdtoi
fregrs2, fregrd
Convert double to integer
FqTOi
fqtoi
fregrs2, fregrd
Convert quad to integer
FsTOd
fstod
fregrs2, fregrd
Convert single to double
FsTOq
fstoq
fregrs2, fregrd
Convert single to quad
FdTOs
fdtos
fregrs2, fregrd
Convert double to single
FdTOq
fdtoq
fregrs2, fregrd
Convert double to quad
FqTOd
fqtod
fregrs2, fregrd
Convert quad to double
FqTOs
fqtos
fregrs2, fregrd
Convert quad to single
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
FADDs

FADDd

FADDq

fadds

faddd

faddq

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

fregrs1, fregrs2, fregrd

Add
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
Multiply double to quad
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