SPARC



SPARC - lista instrukcji

Notacja

rd rejestr przeznaczenia
rs1, rs2 rejestry ródłowe
simm13 przemieszczenie 13-bitowe, rozszerzane znakiem
const22 stała 22-bitowa
regaddr rs1 lub rs1 rs2
addr rs1, rs1+rs2, rs1+simm13, rs1-simm13, simm13 lub simm13+rs1
s2 rs2 lub simm13 rozszerzone bitem znaku

Symbole assemblera

Symbol Opis
%0..31 rejestr 0..31
%g0..7 rejestr globalny (=%0..7)
%o0..7 rejestr grupy out (=%8..15)
%l0..7 rejestr grupy local (=%16..23)
%i0..7 rejestr grupy in (=%24..31)
%y rejestr Y (używany w instrukcji MULSCC)
%hi operator unarny zwracający 22 bardziej znaczące bity argumentu
%lo operator unarny zwracający 13 mniej znaczących bitów argumentu
_________________________________________________________________

CAPTION: icc - oznaczenia warunków skoków

Symbol Description
a always
n never
ne, nz not equal
e, z equal, zero
g greater than
le less than
ge greater or equal than
l less than
gu greater than - unsigned
leu less than or equal - unsigned
cc, geu carry clear, greater than or equal - unsigned
cs, lu carry set, less than - unsigned
pos positive
neg negative
vc overflow clear
vs overflow set
_________________________________________________________________

Oznaczenia w licie instrukcji

cc - oznacza, że instrukcja ustawia znaczniki

CAPTION: Lista instrukcji - skrót

Name args description
Load LDSB
LDSH
LDUB
LDUH
LD
LDD [address], rd signed byte
signed halfword
unsigned byte
unsigned halfword
word
doubleword
Store
STB
STH
ST
STD rd, [address] byte
halfword
word
doubleword
Arithmetic/Logical/Shift
ADD, ADDcc
ADDX, ADDXcc
SUB, SUBcc
SUBX, SUBXcc rs1, s2, rd add
add with carry
subtract
subtract with carry
MULScc multiply step (and modify icc)
AND, ANDcc
ANDN, ANDNcc
OR, ORcc
ORN, ORNcc
XOR, XORcc
XNOR, XNORcc rs1, s2, rd and
and not
or
or not
xor
xor not
SLL
SRL
SRA rs1, s2, rd shift left logical
shift right logical
shift right arithmetic
SETHI const22, rd
%hi(value), rd set high 22 bits of registers
Control transfer
SAVE rs1, s2, rd switch register window and allocate space on stack
RESTORE rs1, s2, rd switch register window back and deallocate space
on stack
Bicc label branch on integer condition code
CALL label subroutine call, current PC saved in r15, immediate
PC-relative address
JMPL address, rd jump and link, current PC saved in rd, computed
address
Bicc label trap on integer condition code
Read/write Control Register
RDY rd read Y register
WRY rs1, s2 write Y register


Wyszukiwarka

Podobne podstrony:
Sparc2dRegs
Sparc2dSize2dTranslations
Sparc2dDirectives
Sparc2dOpts
Sparc2dAligned2dData
Sparc2dConstants
Sparc2dChars
Sparc2dDependent
Sparc2dSyntax
Sparc2dSyntax
Sparc2dRelocs

więcej podobnych podstron