URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 38 |
Rev 156 |
# These are all the examples from section F.4 of
|
# These are all the examples from section F.4 of
|
# "PowerPC Microprocessor Family: The Programming Environments".
|
# "PowerPC Microprocessor Family: The Programming Environments".
|
# 64-bit examples
|
# 64-bit examples
|
extrdi %r4,%r3,1,0
|
extrdi %r4,%r3,1,0
|
insrdi %r3,%r4,1,0
|
insrdi %r3,%r4,1,0
|
sldi %r5,%r5,8
|
sldi %r5,%r5,8
|
clrldi %r4,%r3,32
|
clrldi %r4,%r3,32
|
# 32-bit examples
|
# 32-bit examples
|
extrwi %r4,%r3,1,0
|
extrwi %r4,%r3,1,0
|
insrwi %r3,%r4,1,0
|
insrwi %r3,%r4,1,0
|
slwi %r5,%r5,8
|
slwi %r5,%r5,8
|
clrlwi %r4,%r3,16
|
clrlwi %r4,%r3,16
|
|
|
|
|
# These test the remaining corner cases for 64-bit operations.
|
# These test the remaining corner cases for 64-bit operations.
|
extldi %r4,%r3,1,0
|
extldi %r4,%r3,1,0
|
extldi %r4,%r3,64,0
|
extldi %r4,%r3,64,0
|
extldi %r4,%r3,1,63
|
extldi %r4,%r3,1,63
|
extldi %r4,%r3,64,63 # bit weird, that one.
|
extldi %r4,%r3,64,63 # bit weird, that one.
|
|
|
extrdi %r4,%r3,63,0
|
extrdi %r4,%r3,63,0
|
extrdi %r4,%r3,1,62
|
extrdi %r4,%r3,1,62
|
|
|
insrdi %r4,%r3,64,0
|
insrdi %r4,%r3,64,0
|
insrdi %r4,%r3,63,0
|
insrdi %r4,%r3,63,0
|
insrdi %r4,%r3,1,62
|
insrdi %r4,%r3,1,62
|
insrdi %r4,%r3,1,63
|
insrdi %r4,%r3,1,63
|
|
|
rotldi %r4,%r3,0
|
rotldi %r4,%r3,0
|
rotldi %r4,%r3,1
|
rotldi %r4,%r3,1
|
rotldi %r4,%r3,63
|
rotldi %r4,%r3,63
|
|
|
rotrdi %r4,%r3,0
|
rotrdi %r4,%r3,0
|
rotrdi %r4,%r3,1
|
rotrdi %r4,%r3,1
|
rotrdi %r4,%r3,63
|
rotrdi %r4,%r3,63
|
|
|
rotld %r5,%r3,%r4
|
rotld %r5,%r3,%r4
|
|
|
sldi %r4,%r3,0
|
sldi %r4,%r3,0
|
sldi %r4,%r3,63
|
sldi %r4,%r3,63
|
|
|
srdi %r4,%r3,0
|
srdi %r4,%r3,0
|
srdi %r4,%r3,1
|
srdi %r4,%r3,1
|
srdi %r4,%r3,63
|
srdi %r4,%r3,63
|
|
|
clrldi %r4,%r3,0
|
clrldi %r4,%r3,0
|
clrldi %r4,%r3,1
|
clrldi %r4,%r3,1
|
clrldi %r4,%r3,63
|
clrldi %r4,%r3,63
|
|
|
clrrdi %r4,%r3,0
|
clrrdi %r4,%r3,0
|
clrrdi %r4,%r3,1
|
clrrdi %r4,%r3,1
|
clrrdi %r4,%r3,63
|
clrrdi %r4,%r3,63
|
|
|
clrlsldi %r4,%r3,0,0
|
clrlsldi %r4,%r3,0,0
|
clrlsldi %r4,%r3,1,0
|
clrlsldi %r4,%r3,1,0
|
clrlsldi %r4,%r3,63,0
|
clrlsldi %r4,%r3,63,0
|
clrlsldi %r4,%r3,63,1
|
clrlsldi %r4,%r3,63,1
|
clrlsldi %r4,%r3,63,63
|
clrlsldi %r4,%r3,63,63
|
|
|
# These test the remaining corner cases for 32-bit operations.
|
# These test the remaining corner cases for 32-bit operations.
|
extlwi %r4,%r3,1,0
|
extlwi %r4,%r3,1,0
|
extlwi %r4,%r3,32,0
|
extlwi %r4,%r3,32,0
|
extlwi %r4,%r3,1,31
|
extlwi %r4,%r3,1,31
|
extlwi %r4,%r3,32,31 # bit weird, that one.
|
extlwi %r4,%r3,32,31 # bit weird, that one.
|
|
|
extrwi %r4,%r3,31,0
|
extrwi %r4,%r3,31,0
|
extrwi %r4,%r3,1,30
|
extrwi %r4,%r3,1,30
|
|
|
inslwi %r4,%r3,1,0
|
inslwi %r4,%r3,1,0
|
inslwi %r4,%r3,32,0
|
inslwi %r4,%r3,32,0
|
inslwi %r4,%r3,1,31
|
inslwi %r4,%r3,1,31
|
|
|
insrwi %r4,%r3,1,0
|
insrwi %r4,%r3,1,0
|
insrwi %r4,%r3,32,0
|
insrwi %r4,%r3,32,0
|
insrwi %r4,%r3,1,31
|
insrwi %r4,%r3,1,31
|
|
|
rotlwi %r4,%r3,0
|
rotlwi %r4,%r3,0
|
rotlwi %r4,%r3,1
|
rotlwi %r4,%r3,1
|
rotlwi %r4,%r3,31
|
rotlwi %r4,%r3,31
|
|
|
rotrwi %r4,%r3,0
|
rotrwi %r4,%r3,0
|
rotrwi %r4,%r3,1
|
rotrwi %r4,%r3,1
|
rotrwi %r4,%r3,31
|
rotrwi %r4,%r3,31
|
|
|
rotlw %r5,%r3,%r4
|
rotlw %r5,%r3,%r4
|
|
|
slwi %r4,%r3,0
|
slwi %r4,%r3,0
|
slwi %r4,%r3,1
|
slwi %r4,%r3,1
|
slwi %r4,%r3,31
|
slwi %r4,%r3,31
|
|
|
srwi %r4,%r3,0
|
srwi %r4,%r3,0
|
srwi %r4,%r3,1
|
srwi %r4,%r3,1
|
srwi %r4,%r3,31
|
srwi %r4,%r3,31
|
|
|
clrlwi %r4,%r3,0
|
clrlwi %r4,%r3,0
|
clrlwi %r4,%r3,1
|
clrlwi %r4,%r3,1
|
clrlwi %r4,%r3,31
|
clrlwi %r4,%r3,31
|
|
|
clrrwi %r4,%r3,0
|
clrrwi %r4,%r3,0
|
clrrwi %r4,%r3,1
|
clrrwi %r4,%r3,1
|
clrrwi %r4,%r3,31
|
clrrwi %r4,%r3,31
|
|
|
clrlslwi %r4,%r3,0,0
|
clrlslwi %r4,%r3,0,0
|
clrlslwi %r4,%r3,1,0
|
clrlslwi %r4,%r3,1,0
|
clrlslwi %r4,%r3,31,0
|
clrlslwi %r4,%r3,31,0
|
clrlslwi %r4,%r3,31,1
|
clrlslwi %r4,%r3,31,1
|
clrlslwi %r4,%r3,31,31
|
clrlslwi %r4,%r3,31,31
|
|
|
# Force alignment so that we pass the test on AIX
|
# Force alignment so that we pass the test on AIX
|
.p2align 3,0
|
.p2align 3,0
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.