Sun Microelectronics
190
UltraSPARC User’s Manual
Table 12-1
Complete UltraSPARC Instruction Set
Opcode
Description
Ext
Ref
ADD (ADDcc)
Add (and modify condition codes)
A.2
ADDC (ADDCcc)
Add with carry (and modify condition codes)
A.2
ALIGNADDRESS
Calculate address for misaligned data access
✓
13.5.5
ALIGNADDRESSL Calculate address for misaligned data access (little-endian)
✓
13.5.5
AND (ANDcc)
And (and modify condition codes)
A.31
ANDN (ANDNcc)
And not (and modify condition codes)
A.31
ARRAY{8,16,32}
3-D address to blocked byte address conversion
✓
13.5.10
Bicc
Branch on integer condition codes
A.6
BLD
64-byte block load
✓
13.6.4
BPcc
Branch on integer condition codes with prediction
A.7
BPr
Branch on contents of integer register with prediction
A.3
BST
64-byte block store
✓
13.6.4
CALL
Call and link
A.8
CASA
Compare and swap word in alternate space
A.9
CASXA
Compare and swap doubleword in alternate space
A.9
DONE
Return from trap
A.11
EDGE{8,16,32}{L}
Edge boundary processing {little-endian}
✓
13.5.8
FABS(s,d,q)
Floating-point absolute value
A.17
FADD(s,d,q)
Floating-point add
A.12
FALIGNDATA
Perform data alignment for misaligned data
✓
13.5.5
FANDNOT1{s}
Negated src1 AND src2 (single precision)
✓
13.5.6
FANDNOT2{s}
src1 AND negated src2 (single precision)
✓
13.5.6
FAND{s}
Logical AND (single precision)
13.5.6
FBPfcc
Branch on floating-point condition codes with prediction
A.5
FBfcc
Branch on floating-point condition codes
A.4
FCMP(s,d,q)
Floating-point compare
A.13
FCMPE(s,d,q)
Floating-point compare (exception if unordered)
A.13
FCMPEQ{16,32}
Four 16-bit/two 32-bit compare; set integer dest if src1 = src2
✓
13.5.7
FCMPGT{16,32}
Four 16-bit/two 32-bit compare; set integer dest if src1 > src2
✓
13.5.7
FCMPLE{16,32}
Four 16-bit/two 32-bit compare; set integer dest if src1 <= src2
✓
13.5.7
FCMPNE{16,32}
Four 16-bit/two 32-bit compare; set integer dest if src1 != src2
✓
13.5.7
FDIV(s,d,q)
Floating-point divide
A.18
FdMULq
Floating-point multiply double to quad
A.18
FEXPAND
Four 8-bit to 16-bit expand
✓
13.5.3
FiTO(s,d,q)
Convert integer to floating-point
A.16
FLUSH
Flush instruction memory
A.20
FLUSHW
Flush register windows
A.21
FMOV(s,d,q)
Floating-point move
A.17
FMOV(s,d,q)cc
Move floating-point register if condition is satisfied
A.32
FMOV(s,d,q)r
Move floating-point register if integer register contents satisfy condition
A.33
Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com