|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object scale.backend.ppc.Opcodes
public class Opcodes
This class provides PPC instruction information.
$Id: Opcodes.java,v 1.14 2006-10-04 13:59:22 burrill Exp $
Copyright 2005 by the Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
Field Summary | |
---|---|
static int |
A_FORM
The different instruction forms. |
static int |
ADD
These are the Scale opcodes for the PowerPC instructions. |
static int |
ADDC
|
static int |
ADDCO
|
static int |
ADDCOP
|
static int |
ADDCP
|
static int |
ADDE
|
static int |
ADDEO
|
static int |
ADDEOP
|
static int |
ADDEP
|
static int |
ADDI
|
static int |
ADDIC
|
static int |
ADDICP
|
static int |
ADDIS
|
static int |
ADDME
|
static int |
ADDMEO
|
static int |
ADDMEOP
|
static int |
ADDMEP
|
static int |
ADDO
|
static int |
ADDOP
|
static int |
ADDP
|
static int |
ADDZE
|
static int |
ADDZEO
|
static int |
ADDZEOP
|
static int |
ADDZEP
|
static int |
AND
|
static int |
ANDC
|
static int |
ANDCP
|
static int |
ANDIP
|
static int |
ANDISP
|
static int |
ANDP
|
static int |
B
|
static int |
B_FORM
|
static int |
BA
|
static int |
BC
|
static int |
BCA
|
static int |
BCCTR
|
static int |
BCCTRL
|
static int |
BCL
|
static int |
BCLA
|
static int |
BCLR
|
static int |
BCLRL
|
static int |
BL
|
static int |
BLA
|
static int |
BRANCH
An instruction branches. |
static int |
BRANCH_ALWAYS
The different types of branch instructions. |
static int |
BRANCH_FALSE
|
static int |
BRANCH_TRUE
|
static int |
CMPD
|
static int |
CMPDI
|
static int |
CMPLD
|
static int |
CMPLDI
|
static int |
CMPLW
|
static int |
CMPLWI
|
static int |
CMPW
|
static int |
CMPWI
|
static int |
CNTLZD
|
static int |
CNTLZDP
|
static int |
CNTLZW
|
static int |
CNTLZWP
|
static int |
CRAND
|
static int |
CRANDC
|
static int |
CREQV
|
static int |
CRNAND
|
static int |
CRNOR
|
static int |
CROR
|
static int |
CRORC
|
static int |
CRXOR
|
static int |
CTR_SPR
Special Purpose Register number for counter |
static int |
D_FORM
|
static int |
DCBA
|
static int |
DCBF
|
static int |
DCBI
|
static int |
DCBST
|
static int |
DCBT
|
static int |
DCBTST
|
static int |
DCBZ
|
static int |
DIVD
|
static int |
DIVDO
|
static int |
DIVDOP
|
static int |
DIVDP
|
static int |
DIVDU
|
static int |
DIVDUO
|
static int |
DIVDUOP
|
static int |
DIVDUP
|
static int |
DIVW
|
static int |
DIVWO
|
static int |
DIVWOP
|
static int |
DIVWP
|
static int |
DIVWU
|
static int |
DIVWUO
|
static int |
DIVWUOP
|
static int |
DIVWUP
|
static int |
DS_FORM
|
static int |
ECIWX
|
static int |
ECOWX
|
static int |
EIEIO
|
static int |
EQ
|
static int |
EQV
|
static int |
EQVP
|
static int |
EXTSB
|
static int |
EXTSBP
|
static int |
EXTSH
|
static int |
EXTSHP
|
static int |
EXTSW
|
static int |
EXTSWP
|
static int |
FABS
|
static int |
FABSP
|
static int |
FADD
|
static int |
FADDP
|
static int |
FADDS
|
static int |
FADDSP
|
static int |
FCFID
|
static int |
FCFIDP
|
static int |
FCMPO
|
static int |
FCMPU
|
static int |
FCTID
|
static int |
FCTIDP
|
static int |
FCTIDZ
|
static int |
FCTIDZP
|
static int |
FCTIW
|
static int |
FCTIWP
|
static int |
FCTIWZ
|
static int |
FCTIWZP
|
static int |
FDIV
|
static int |
FDIVP
|
static int |
FDIVS
|
static int |
FDIVSP
|
static int |
FMADD
|
static int |
FMADDP
|
static int |
FMADDS
|
static int |
FMADDSP
|
static int |
FMR
|
static int |
FMRP
|
static int |
FMSUB
|
static int |
FMSUBP
|
static int |
FMSUBS
|
static int |
FMSUBSP
|
static int |
FMUL
|
static int |
FMULP
|
static int |
FMULS
|
static int |
FMULSP
|
static int |
FNABS
|
static int |
FNABSP
|
static int |
FNEG
|
static int |
FNEGP
|
static int |
FNMADD
|
static int |
FNMADDP
|
static int |
FNMADDS
|
static int |
FNMADDSP
|
static int |
FNMSUB
|
static int |
FNMSUBP
|
static int |
FNMSUBS
|
static int |
FNMSUBSP
|
static int |
FPE
|
static int |
FPEE
|
static int |
FPIOE
|
static int |
FPOE
|
static int |
FRES
|
static int |
FRESP
|
static int |
FRSP
|
static int |
FRSQRTE
|
static int |
FRSQRTEP
|
static int |
FSEL
|
static int |
FSELP
|
static int |
FSQRT
|
static int |
FSQRTP
|
static int |
FSQRTS
|
static int |
FSQRTSP
|
static int |
FSUB
|
static int |
FSUBP
|
static int |
FSUBS
|
static int |
FSUBSP
|
static int |
GT
|
static int |
I_FORM
|
static int |
ICBI
|
static byte[] |
instForm
Map from instruction opcode to instruction form. |
static byte[] |
instMode
Index by the opcode to obtain the type of instruction. |
static int |
ISYNC
|
static int |
LA
|
static int |
LBZ
|
static int |
LBZU
|
static int |
LBZUX
|
static int |
LBZX
|
static int |
LD
|
static int |
LDARX
|
static int |
LDU
|
static int |
LDUX
|
static int |
LDX
|
static int |
LFD
|
static int |
LFDU
|
static int |
LFDUX
|
static int |
LFDX
|
static int |
LFS
|
static int |
LFSU
|
static int |
LFSUX
|
static int |
LFSX
|
static int |
LHA
|
static int |
LHAU
|
static int |
LHAUX
|
static int |
LHAX
|
static int |
LHBRX
|
static int |
LHZ
|
static int |
LHZU
|
static int |
LHZUX
|
static int |
LHZX
|
static int |
LI
|
static int |
LIS
|
static int |
LMW
|
static int |
LOAD
An instruction that loads from memory. |
static int |
LR_SPR
Special Purpose Register (SPR) number for Link Register |
static int |
LSWI
|
static int |
LSWX
|
static int |
LT
Condition register bit meanings |
static int |
LWA
|
static int |
LWARX
|
static int |
LWAUX
|
static int |
LWAX
|
static int |
LWBRX
|
static int |
LWZ
|
static int |
LWZU
|
static int |
LWZUX
|
static int |
LWZX
|
static int |
M_FORM
|
static int |
MCRF
|
static int |
MCRFS
|
static int |
MCRXR
|
static int |
MD_FORM
|
static int |
MDS_FORM
|
static int |
MFCR
|
static int |
MFFS
|
static int |
MFFSP
|
static int |
MFMSR
|
static int |
MFSPR
|
static int |
MFSR
|
static int |
MFSRIN
|
static int |
MFTB
|
static int |
MR
|
static int |
MTCRF
|
static int |
MTFSB0
|
static int |
MTFSB0P
|
static int |
MTFSB1
|
static int |
MTFSB1P
|
static int |
MTFSF
|
static int |
MTFSFI
|
static int |
MTFSFIP
|
static int |
MTFSFP
|
static int |
MTMSR
|
static int |
MTMSRD
|
static int |
MTSPR
|
static int |
MTSR
|
static int |
MTSRD
|
static int |
MTSRDIN
|
static int |
MTSRIN
|
static int |
MULHD
|
static int |
MULHDP
|
static int |
MULHDU
|
static int |
MULHDUP
|
static int |
MULHW
|
static int |
MULHWP
|
static int |
MULHWU
|
static int |
MULHWUP
|
static int |
MULLD
|
static int |
MULLDO
|
static int |
MULLDOP
|
static int |
MULLDP
|
static int |
MULLI
|
static int |
MULLW
|
static int |
MULLWO
|
static int |
MULLWOP
|
static int |
MULLWP
|
static int |
NAND
|
static int |
NANDP
|
static int |
NEG
|
static int |
NEGO
|
static int |
NEGOP
|
static int |
NEGP
|
static int[] |
nonImmediateOpcode
Index by the opcode to obtain the corresponding opcode which operates on registers rather than immediates. |
static int |
NOR
|
static int |
NORP
|
static java.lang.String[] |
opcodes
Index by the opcode to obtain the string to use for the assembly code. |
static int |
OR
|
static int |
ORC
|
static int |
ORCP
|
static int |
ORI
|
static int |
ORIS
|
static int |
ORP
|
static int |
REGULAR
A regular instruction like add. |
static int |
RFI
|
static int |
RFID
|
static int |
RLDCL
|
static int |
RLDCLP
|
static int |
RLDCR
|
static int |
RLDCRP
|
static int |
RLDIC
|
static int |
RLDICL
|
static int |
RLDICLP
|
static int |
RLDICP
|
static int |
RLDICR
|
static int |
RLDICRP
|
static int |
RLDIMI
|
static int |
RLDIMIP
|
static int |
RLWIMI
|
static int |
RLWIMIP
|
static int |
RLWINM
|
static int |
RLWINMP
|
static int |
RLWNM
|
static int |
RLWNMP
|
static int |
SC
|
static int |
SC_FORM
|
static int |
SLBIA
|
static int |
SLBIE
|
static int |
SLD
|
static int |
SLDP
|
static int |
SLW
|
static int |
SLWI
|
static int |
SLWP
|
static int |
SO
|
static int |
SRAD
|
static int |
SRADI
|
static int |
SRADIP
|
static int |
SRADP
|
static int |
SRAW
|
static int |
SRAWI
|
static int |
SRAWIP
|
static int |
SRAWP
|
static int |
SRD
|
static int |
SRDP
|
static int |
SRW
|
static int |
SRWP
|
static int |
STB
|
static int |
STBU
|
static int |
STBUX
|
static int |
STBX
|
static int |
STD
|
static int |
STDCXP
|
static int |
STDU
|
static int |
STDUX
|
static int |
STDX
|
static int |
STFD
|
static int |
STFDU
|
static int |
STFDUX
|
static int |
STFDX
|
static int |
STFIWX
|
static int |
STFS
|
static int |
STFSU
|
static int |
STFSUX
|
static int |
STFSX
|
static int |
STH
|
static int |
STHBRX
|
static int |
STHU
|
static int |
STHUX
|
static int |
STHX
|
static int |
STMW
|
static int |
STORE
An instruction that stores to memory. |
static int |
STSWI
|
static int |
STSWX
|
static int |
STW
|
static int |
STWBRX
|
static int |
STWCXP
|
static int |
STWU
|
static int |
STWUX
|
static int |
STWX
|
static int |
SUBF
|
static int |
SUBFC
|
static int |
SUBFCO
|
static int |
SUBFCOP
|
static int |
SUBFCP
|
static int |
SUBFE
|
static int |
SUBFEO
|
static int |
SUBFEOP
|
static int |
SUBFEP
|
static int |
SUBFIC
|
static int |
SUBFME
|
static int |
SUBFMEO
|
static int |
SUBFMEOP
|
static int |
SUBFMEP
|
static int |
SUBFO
|
static int |
SUBFOP
|
static int |
SUBFP
|
static int |
SUBFZE
|
static int |
SUBFZEO
|
static int |
SUBFZEOP
|
static int |
SUBFZEP
|
static int |
SYNC
|
static int |
TD
|
static int |
TDI
|
static int |
TLBIA
|
static int |
TLBIE
|
static int |
TLBSYNC
|
static int |
TW
|
static int |
TWI
|
static int |
X_FORM
|
static int |
XFL_FORM
|
static int |
XFX_FORM
|
static int |
XL_FORM
|
static int |
XO_FORM
|
static int |
XOR
|
static int |
XORI
|
static int |
XORIS
|
static int |
XORP
|
static int |
XS_FORM
|
Constructor Summary | |
---|---|
Opcodes()
|
Method Summary | |
---|---|
static int |
getNonImmediateOpcode(int opcode)
Return the opcode which operates on registers corresponding to this opcode which works on immediates |
static java.lang.String |
getOp(Branch inst)
Return the opcode mnemonic for the instruction. |
static java.lang.String |
getOp(Instruction inst)
Return the opcode mnemonic for the instruction. |
static java.lang.String |
getOp(int opcode)
Return the opcode mnemonic for the instruction opcode. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int REGULAR
public static final int LOAD
public static final int STORE
public static final int BRANCH
public static final int LR_SPR
public static final int CTR_SPR
public static final int BRANCH_ALWAYS
public static final int BRANCH_TRUE
public static final int BRANCH_FALSE
public static final int LT
public static final int GT
public static final int EQ
public static final int SO
public static final int FPE
public static final int FPEE
public static final int FPIOE
public static final int FPOE
public static final int A_FORM
public static final int B_FORM
public static final int D_FORM
public static final int DS_FORM
public static final int I_FORM
public static final int M_FORM
public static final int MD_FORM
public static final int MDS_FORM
public static final int SC_FORM
public static final int X_FORM
public static final int XFL_FORM
public static final int XFX_FORM
public static final int XL_FORM
public static final int XO_FORM
public static final int XS_FORM
public static final int ADD
public static final int ADDP
public static final int ADDC
public static final int ADDCP
public static final int ADDCO
public static final int ADDCOP
public static final int ADDE
public static final int ADDEP
public static final int ADDEO
public static final int ADDEOP
public static final int ADDI
public static final int ADDIC
public static final int ADDICP
public static final int ADDIS
public static final int ADDME
public static final int ADDMEP
public static final int ADDMEO
public static final int ADDMEOP
public static final int ADDO
public static final int ADDOP
public static final int ADDZE
public static final int ADDZEP
public static final int ADDZEO
public static final int ADDZEOP
public static final int AND
public static final int ANDP
public static final int ANDC
public static final int ANDCP
public static final int ANDIP
public static final int ANDISP
public static final int B
public static final int BA
public static final int BC
public static final int BCA
public static final int BCCTR
public static final int BCCTRL
public static final int BCL
public static final int BCLA
public static final int BCLR
public static final int BCLRL
public static final int BL
public static final int BLA
public static final int CMPD
public static final int CMPDI
public static final int CMPLD
public static final int CMPLDI
public static final int CMPLW
public static final int CMPLWI
public static final int CMPW
public static final int CMPWI
public static final int CNTLZD
public static final int CNTLZDP
public static final int CNTLZW
public static final int CNTLZWP
public static final int CRAND
public static final int CRANDC
public static final int CREQV
public static final int CRNAND
public static final int CRNOR
public static final int CROR
public static final int CRORC
public static final int CRXOR
public static final int DCBA
public static final int DCBF
public static final int DCBI
public static final int DCBST
public static final int DCBT
public static final int DCBTST
public static final int DCBZ
public static final int DIVD
public static final int DIVDP
public static final int DIVDO
public static final int DIVDOP
public static final int DIVDU
public static final int DIVDUP
public static final int DIVDUO
public static final int DIVDUOP
public static final int DIVW
public static final int DIVWP
public static final int DIVWO
public static final int DIVWOP
public static final int DIVWU
public static final int DIVWUP
public static final int DIVWUO
public static final int DIVWUOP
public static final int ECIWX
public static final int ECOWX
public static final int EIEIO
public static final int EQV
public static final int EQVP
public static final int EXTSB
public static final int EXTSBP
public static final int EXTSH
public static final int EXTSHP
public static final int EXTSW
public static final int EXTSWP
public static final int FABS
public static final int FABSP
public static final int FADD
public static final int FADDP
public static final int FADDS
public static final int FADDSP
public static final int FCFID
public static final int FCFIDP
public static final int FCMPO
public static final int FCMPU
public static final int FCTID
public static final int FCTIDP
public static final int FCTIDZ
public static final int FCTIDZP
public static final int FCTIW
public static final int FCTIWP
public static final int FCTIWZ
public static final int FCTIWZP
public static final int FDIV
public static final int FDIVP
public static final int FDIVS
public static final int FDIVSP
public static final int FMADD
public static final int FMADDP
public static final int FMADDS
public static final int FMADDSP
public static final int FMR
public static final int FMRP
public static final int FMSUB
public static final int FMSUBP
public static final int FMSUBS
public static final int FMSUBSP
public static final int FMUL
public static final int FMULP
public static final int FMULS
public static final int FMULSP
public static final int FNABS
public static final int FNABSP
public static final int FNEG
public static final int FNEGP
public static final int FNMADD
public static final int FNMADDP
public static final int FNMADDS
public static final int FNMADDSP
public static final int FNMSUB
public static final int FNMSUBP
public static final int FNMSUBS
public static final int FNMSUBSP
public static final int FRES
public static final int FRESP
public static final int FRSP
public static final int FRSQRTE
public static final int FRSQRTEP
public static final int FSEL
public static final int FSELP
public static final int FSQRT
public static final int FSQRTP
public static final int FSQRTS
public static final int FSQRTSP
public static final int FSUB
public static final int FSUBP
public static final int FSUBS
public static final int FSUBSP
public static final int ICBI
public static final int ISYNC
public static final int LBZ
public static final int LBZU
public static final int LBZUX
public static final int LBZX
public static final int LD
public static final int LDARX
public static final int LDU
public static final int LDUX
public static final int LDX
public static final int LFD
public static final int LFDU
public static final int LFDUX
public static final int LFDX
public static final int LFS
public static final int LFSU
public static final int LFSUX
public static final int LFSX
public static final int LHA
public static final int LHAU
public static final int LHAUX
public static final int LHAX
public static final int LHBRX
public static final int LHZ
public static final int LHZU
public static final int LHZUX
public static final int LHZX
public static final int LMW
public static final int LSWI
public static final int LSWX
public static final int LWA
public static final int LWARX
public static final int LWAUX
public static final int LWAX
public static final int LWBRX
public static final int LWZ
public static final int LWZU
public static final int LWZUX
public static final int LWZX
public static final int MCRF
public static final int MCRFS
public static final int MCRXR
public static final int MFCR
public static final int MFFS
public static final int MFFSP
public static final int MFMSR
public static final int MFSPR
public static final int MFSR
public static final int MFSRIN
public static final int MFTB
public static final int MTCRF
public static final int MTFSB0
public static final int MTFSB0P
public static final int MTFSB1
public static final int MTFSB1P
public static final int MTFSF
public static final int MTFSFP
public static final int MTFSFI
public static final int MTFSFIP
public static final int MTMSR
public static final int MTMSRD
public static final int MTSPR
public static final int MTSR
public static final int MTSRD
public static final int MTSRDIN
public static final int MTSRIN
public static final int MULHD
public static final int MULHDP
public static final int MULHDU
public static final int MULHDUP
public static final int MULHW
public static final int MULHWP
public static final int MULHWU
public static final int MULHWUP
public static final int MULLD
public static final int MULLDP
public static final int MULLDO
public static final int MULLDOP
public static final int MULLI
public static final int MULLW
public static final int MULLWP
public static final int MULLWO
public static final int MULLWOP
public static final int NAND
public static final int NANDP
public static final int NEG
public static final int NEGP
public static final int NEGO
public static final int NEGOP
public static final int NOR
public static final int NORP
public static final int OR
public static final int ORP
public static final int ORC
public static final int ORCP
public static final int ORI
public static final int ORIS
public static final int RFI
public static final int RFID
public static final int RLDCL
public static final int RLDCLP
public static final int RLDCR
public static final int RLDCRP
public static final int RLDIC
public static final int RLDICP
public static final int RLDICL
public static final int RLDICLP
public static final int RLDICR
public static final int RLDICRP
public static final int RLDIMI
public static final int RLDIMIP
public static final int RLWIMI
public static final int RLWIMIP
public static final int RLWINM
public static final int RLWINMP
public static final int RLWNM
public static final int RLWNMP
public static final int SC
public static final int SLBIA
public static final int SLBIE
public static final int SLD
public static final int SLDP
public static final int SLW
public static final int SLWP
public static final int SRAD
public static final int SRADP
public static final int SRADI
public static final int SRADIP
public static final int SRAW
public static final int SRAWP
public static final int SRAWI
public static final int SRAWIP
public static final int SRD
public static final int SRDP
public static final int SRW
public static final int SRWP
public static final int STB
public static final int STBU
public static final int STBUX
public static final int STBX
public static final int STD
public static final int STDCXP
public static final int STDU
public static final int STDUX
public static final int STDX
public static final int STFD
public static final int STFDU
public static final int STFDUX
public static final int STFDX
public static final int STFIWX
public static final int STFS
public static final int STFSU
public static final int STFSUX
public static final int STFSX
public static final int STH
public static final int STHBRX
public static final int STHU
public static final int STHUX
public static final int STHX
public static final int STMW
public static final int STSWI
public static final int STSWX
public static final int STW
public static final int STWBRX
public static final int STWCXP
public static final int STWU
public static final int STWUX
public static final int STWX
public static final int SUBF
public static final int SUBFP
public static final int SUBFC
public static final int SUBFCP
public static final int SUBFCO
public static final int SUBFCOP
public static final int SUBFE
public static final int SUBFEP
public static final int SUBFEO
public static final int SUBFEOP
public static final int SUBFIC
public static final int SUBFME
public static final int SUBFMEP
public static final int SUBFMEO
public static final int SUBFMEOP
public static final int SUBFO
public static final int SUBFOP
public static final int SUBFZE
public static final int SUBFZEP
public static final int SUBFZEO
public static final int SUBFZEOP
public static final int SYNC
public static final int TD
public static final int TDI
public static final int TLBIA
public static final int TLBIE
public static final int TLBSYNC
public static final int TW
public static final int TWI
public static final int XOR
public static final int XORP
public static final int XORI
public static final int XORIS
public static final int LA
public static final int LI
public static final int LIS
public static final int MR
public static final int SLWI
public static final java.lang.String[] opcodes
public static final byte[] instForm
public static final byte[] instMode
public static final int[] nonImmediateOpcode
Constructor Detail |
---|
public Opcodes()
Method Detail |
---|
public static java.lang.String getOp(Instruction inst)
public static java.lang.String getOp(Branch inst)
public static java.lang.String getOp(int opcode)
public static int getNonImmediateOpcode(int opcode)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |