Opcode Type
Represents a SPARC opcode.
Record fields
| Record Field |
Description
|
Add
|
|
Add with carry
|
|
Add with Carry and modify cc's
|
|
Add and modify cc's
|
|
And
|
|
And Not
|
|
And Not and modify cc's
|
|
And and modify cc's
|
|
Branch on Integer Condition Codes (Bicc) Branch Always
|
|
Branch on Carry Clear (Greater Than or Equal, Unsigned)
|
|
Branch on Carry Set (Less than, Unsigned)
|
|
Branch on Equal
|
|
Branch on Greater
|
|
Branch on Greater or Equal
|
|
Branch on Greater Unsigned
|
|
Branch on Less
|
|
Branch on Less or Equal
|
|
Branch on Less or Equal Unsigned
|
|
Branch Never
|
|
Branch on Not Equal
|
|
Branch on Negative
|
|
Branch on Integer Condition Codes with Prediction (BPcc) Branch Always
|
|
Branch on Carry Clear (Greater Than or Equal, Unsigned)
|
|
Branch on Carry Set (Less than, Unsigned)
|
|
Branch on Equal
|
|
Branch on Greater
|
|
Branch on Greater or Equal
|
|
Branch on Greater Unsigned
|
|
Branch on Less
|
|
Branch on Less or Equal
|
|
Branch on Less or Equal Unsigned
|
|
Branch Never
|
|
Branch on Not Equal
|
|
Branch on Negative
|
|
Branch on Positive
|
|
Branch on Positive
|
|
Branch on Overflow Clear
|
|
Branch on Overflow Set
|
|
Branch on Register Grater Than Equal to Zero
|
|
Branch on Register Greater Than Zero
|
|
Branch on Register Less Than or Equal to Zero
|
|
Branch on Register Less Than Zero
|
|
Branch on Register Not Zero
|
|
Branch on Integer Register with Prediction (BPr) Branch on Register Zero
|
|
Branch on Overflow Clear
|
|
Branch on Overflow Set
|
|
Call and link
|
|
Compare and sawp word in alternate space
|
|
Compare and swap doubleword in alternate space
|
|
Return from Trap (skip trapped instruction)
|
|
Absolute Value Double
|
|
Absolute Value Quad
|
|
Floating-point absolute value Absolute Value Single
|
|
Add Double
|
|
Add Quad
|
|
Floating-Point Add and Subtract Add Single
|
|
Branch on Floating-Point Condition Codes (FBFcc) Branch Always
|
|
Branch on Equal
|
|
Branch on Greater
|
|
Branch on Greater or Euqal
|
|
Branch on Less
|
|
Branch on Less or Equal
|
|
Branch on Less or Greater
|
|
Branch Never
|
|
Branch on Not Equal
|
|
Branch on Ordered
|
|
Branch on Floating-Point Condition Codes with Prediction (FBPFcc) Branch Always
|
|
Branch on Equal
|
|
Branch on Greater
|
|
Branch on Greater or Euqal
|
|
Branch on Less
|
|
Branch on Less or Equal
|
|
Branch on Less or Greater
|
|
Branch Never
|
|
Branch on Not Equal
|
|
Branch on Ordered
|
|
Branch on Unordered
|
|
Branch on Unordered or Equal
|
|
Branch on Unordered or Greater
|
|
Branch on Unordered or Greater or Equal
|
|
Branch on Unordered or LEss
|
|
Branch on Unordered or Less or Equal
|
|
Branch on Unordered
|
|
Branch on Unordered or Equal
|
|
Branch on Unordered or Greater
|
|
Branch on Unordered or Greater or Equal
|
|
Branch on Unordered or LEss
|
|
Branch on Unordered or Less or Equal
|
|
Compare Double and Exception if Unordered
|
|
COmapre Quad and Exception if Unordered
|
|
Compare Single and Exception if Unordered
|
|
Compare Double
|
|
Compare Quad
|
|
Floating-Point Compare Compare Single
|
|
Divide Double
|
|
Divide Quad
|
|
Floating-Point Multiply and Divide Divide Single
|
|
Flush Instruction Memory
|
|
Flush Register Windows
|
|
Move Floating-Point Register on Condition (FMOVcc) Integer Condition Codes Move Always
|
|
Move if Carry Clear (Greater or Equal, Unsigned)
|
|
Move if Carry Set (Less than, Unsigned)
|
|
Move if Equal
|
|
Floating-Point Condition Codes More Always
|
|
Move if Equal
|
|
Move if Greater
|
|
Move if Greater or Equal
|
|
Move if Less
|
|
Move if Less or Equal
|
|
Move if Less or Greater
|
|
Move Never
|
|
Move if Not Equal
|
|
Move if Ordered
|
|
Move if Unordered
|
|
Move if Unordered or Equal
|
|
Move if Unordered or Greater
|
|
Move if Unordered or Greater or Equal
|
|
Move if Unordered or Less
|
|
Move if Unordered or Less or Equal
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Move if Greater
|
|
Move if Greater or Equal
|
|
Move if Greater Unsigned
|
|
Move if Less
|
|
Move if Less or Equal
|
|
Move if Less or Equal Unsigned
|
|
Move Never
|
|
Move if Not Equal
|
|
Move if Negative
|
|
Move if Positive
|
|
Move if Register Greater Than or Equal to Zero
|
|
Move if Register Greater Than Zero
|
|
Move if Register Less Than or Equal to Zero
|
|
Move if Register Less Than Zero
|
|
Move if Register Not Zero
|
|
Move F-P Register on Integer Register Condition (FMOVr) Move if Register Zero
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Move if Overflow Clear
|
|
Move if Overflow Set
|
|
Move Double
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Move Quad
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Floating-Point Move Move Single
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Multiply Double
|
|
Multiply Quad
|
|
Floating-Point Multiply Multiply Single
|
|
Negate Double
|
|
Negate Quad
|
|
Floating-Point Negate Negate Single
|
|
Square Root Double
|
|
Square Root Quad
|
|
Floating-Point Square Root Square Root Single
|
|
Subtract Double
|
|
Subtract Quad
|
|
Floating-Point Subtract Subtract Single
|
|
Multiyply Double to Quad
|
|
Convert Double to 32-bit Integer
|
|
Convert Double to Quad
|
|
Convert Double to Single
|
|
Convert Double to 64-bit to Integer
|
|
Convert 32-bit Integer to Double
|
|
Convert 32-bit Integer to Quad
|
|
Convert Integer to Floating-Point Convert 32-bit Integer to Single
|
|
Convert Quad To Double
|
|
Convert Quad to 32-bit Integer
|
|
Convert Quad to Single
|
|
Convert Quad to 64-bit to integer
|
|
Floating-Point Multiply Single to Double Multiply Single to Double
|
|
Convert Between Floating-Point Formats Convert Single to Double
|
|
Convert Floating Point to Integer Convert Single to 32-bit Integer
|
|
Convert Single to Quad
|
|
Convert Floating Point 64-bit to Integer Convert Single to 64-bit to Integer
|
|
Convert 64-bit Integer to Double
|
|
Convert 64-bit Integer to Quad
|
|
Convert 64-bit Integer to Floating-Point Convert 64-bit Integer to Single
|
|
Illegal Instruction Trap
|
|
Implementation-Dependent Instructions 1
|
|
Implementation-Dependent Instructions 2
|
|
|
|
Jump and Link
|
|
Load Doubleword
|
|
Load Doubleword from Alternate space
|
|
Load Double Floating-Point Register
|
|
Load Double Floating-Point Register from Alternate space
|
|
Load Floating-Point Register
|
|
Load Floating-Point Register from Alternate space
|
|
Load Floating-Point State Register Lower
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Move Integer Register on Condition (MOVcc) Move Integer Register if Condition is Satisfied Move Always
|
|
Move if Carry Clear (Greater or Equal, Unsigned)
|
|
Move if Carry Set (Less than, Unsigned)
|
|
Move if Equal
|
|
Floating-Point Condition Codes More Always
|
|
Move if Equal
|
|
Move if Greater
|
|
Move if Greater or Equal
|
|
Move if Less
|
|
Move if Less or Equal
|
|
Move if Less or Greater
|
|
Move Never
|
|
Move if Not Equal
|
|
Move if Ordered
|
|
Move if Unordered
|
|
Move if Unordered or Equal
|
|
Move if Unordered or Greater
|
|
Move if Unordered or Greater or Equal
|
|
Move if Unordered or Less
|
|
Move if Unordered or Less or Equal
|
|
Move if Greater
|
|
Move if Greater or Equal
|
|
Move if Greater Unsigned
|
|
Move if Less
|
|
Move if Less or Equal
|
|
Move if Less or Equal Unsigned
|
|
Move Never
|
|
Move if Not Equal
|
|
Move if Negative
|
|
Move if Positive
|
|
Move if Register Greater Than or Equal to Zero
|
|
Move if Register Greater Than Zero
|
|
Move if Register Less Than or Equal to Zero
|
|
Move if Register Less Than Zero
|
|
Move if Register Not Zero
|
|
Move Integer Register on Register Condition (MOVR) Move if Register Zero
|
|
Move if Overflow Clear
|
|
Move if Overflow Set
|
|
Multiply Step and modify cc's
|
|
Multiply (signed or unsigned)
|
|
No Operation
|
|
Inclusive Or
|
|
Inclusive Or Not
|
|
Inclusive Or Not and modify cc's
|
|
Inclusive Or and modify cc's
|
|
Population Count
|
|
Prefetch Data
|
|
Prefetch Data from Alternate Space
|
|
Read ASI Register
|
|
Read Ancillary State Register
|
|
Read Condition Codes Register
|
|
Read Floating-Point Register State Register
|
|
Read Program Counter
|
|
Read Privileged Register
|
|
Read TICK Register
|
|
Read Y Register
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Signed Integer Divide
|
|
Signed Divide
|
|
Signed Integer Divide and modify cc's
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B2R2