blob: 2330d4cd2b9f8c47455c450bf507e419f08506b7 [file] [log] [blame]
# Miscellaneous instructions.
.data
foodata: .word 42
.text
footext:
# Multiply instructions.
.global macsb
macsb:
macsb r0 , r1
.global macub
macub:
macub r2 , r3
.global macqb
macqb:
macqb r4 , r5
.global macsw
macsw:
macsw r6 , r7
.global macuw
macuw:
macuw r8 , r9
.global macqw
macqw:
macqw r10 , r11
.global macsd
macsd:
macsd r12 , r13
.global macud
macud:
macud r14 , r15
.global macqd
macqd:
macqd ra , sp
.global mullsd
mullsd:
mullsd r0 , r2
.global mullud
mullud:
mullud r1 , r3
.global mulsbw
mulsbw:
mulsbw r4 , r6
.global mulubw
mulubw:
mulubw r5 , r7
.global mulswd
mulswd:
mulswd r8 , r10
.global muluwd
muluwd:
muluwd r9 , r11
# Signextend instructions.
.global sextbw
sextbw:
sextbw r12 , ra
.global sextbd
sextbd:
sextbd r13 , sp
.global sextwd
sextwd:
sextwd r14 , r15
.global zextbw
zextbw:
zextbw r5 , r0
.global zextbd
zextbd:
zextbd r10 , r6
.global zextwd
zextwd:
zextwd r7 , r15
# Misc. instructions.
.global getrfid
getrfid:
getrfid r14
.global setrfid
setrfid:
setrfid sp
.global bswap
bswap:
bswap r14 , r2
.global maxsb
maxsb:
maxsb r8 , r3
.global minsb
minsb:
minsb r15 , r14
.global maxub
maxub:
maxub r13 , r12
.global minub
minub:
minub r11 , r10
.global absb
absb:
absb r9 , r8
.global negb
negb:
negb r7 , r6
.global cntl0b
cntl0b:
cntl0b r5 , r4
.global cntl1b
cntl1b:
cntl1b r3 , r2
.global popcntb
popcntb:
popcntb r1 , r0
.global rotlb
rotlb:
rotlb r11 , r4
.global rotrb
rotrb:
rotrb r7 , r2
.global mulqb
mulqb:
mulqb r14 , ra
.global addqb
addqb:
addqb r15 , sp
.global subqb
subqb:
subqb r0 , r10
.global cntlsb
cntlsb:
cntlsb r2 , r12
.global maxsw
maxsw:
maxsw r8 , r3
.global minsw
minsw:
minsw r15 , r14
.global maxuw
maxuw:
maxuw r13 , r12
.global minuw
minuw:
minuw r11 , r10
.global absw
absw:
absw r9 , r8
.global negw
negw:
negw r7 , r6
.global cntl0w
cntl0w:
cntl0w r5 , r4
.global cntl1w
cntl1w:
cntl1w r3 , r2
.global popcntw
popcntw:
popcntw r1 , r0
.global rotlw
rotlw:
rotlw r11 , r4
.global rotrw
rotrw:
rotrw r7 , r2
.global mulqw
mulqw:
mulqw r14 , ra
.global addqw
addqw:
addqw r15 , sp
.global subqw
subqw:
subqw r0 , r10
.global cntlsw
cntlsw:
cntlsw r2 , r12
.global maxsd
maxsd:
maxsd r8 , r3
.global minsd
minsd:
minsd r15 , r14
.global maxud
maxud:
maxud r13 , r12
.global minud
minud:
minud r11 , r10
.global absd
absd:
absd r9 , r8
.global negd
negd:
negd r7 , r6
.global cntl0d
cntl0d:
cntl0d r5 , r4
.global cntl1d
cntl1d:
cntl1d r3 , r2
.global popcntd
popcntd:
popcntd r1 , r0
.global rotld
rotld:
rotld r11 , r4
.global rotrd
rotrd:
rotrd r7 , r2
.global mulqd
mulqd:
mulqd r14 , ra
.global addqd
addqd:
addqd r15 , sp
.global subqd
subqd:
subqd r0 , r10
.global cntlsd
cntlsd:
cntlsd r2 , r12
.global excp
excp:
excp BPT
excp svc
.global ram
ram:
ram $24, $9, $1, ra, r12
.global rim
rim:
rim $0x1f, $0xf, $0xe, r2, r1
.global rotb
rotb:
rotb $7, r1
.global rotw
rotw:
rotw $13, r3
.global rotd
rotd:
rotd $27, r2