53 changed files with 315 additions and 60 deletions
@ -0,0 +1,35 @@ |
|||
# cr16 testcase for cbitb $bit_pos, ABS/REGP/REG |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global cbitb |
|||
cbitb: |
|||
cbitb $0,_y |
|||
loadw _y, r1 |
|||
cmpb $0xfe, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movd $_y, (r1,r0) |
|||
cbitb $1,0(r1,r0) |
|||
loadw _y, r1 |
|||
cmpb $0xfc, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
movw $_y, r1 |
|||
cbitb $2,0(r1) |
|||
loadw _y, r1 |
|||
cmpb $0xf8, r1 |
|||
beq ok3 |
|||
br not_ok |
|||
ok3: |
|||
pass |
|||
|
|||
_y: .word 0xff |
|||
@ -0,0 +1,35 @@ |
|||
# cr16 testcase for cbitw |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global cbitw |
|||
cbitw: |
|||
cbitw $4,_y |
|||
loadw _y, r1 |
|||
cmpb $0xef, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movd $_y, (r1,r0) |
|||
cbitw $5,0(r1,r0) |
|||
loadw _y, r1 |
|||
cmpb $0xcf, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
movw $_y, r1 |
|||
cbitw $6,0(r1) |
|||
loadw _y, r1 |
|||
cmpb $0x8f, r1 |
|||
beq ok3 |
|||
br not_ok |
|||
ok3: |
|||
pass |
|||
|
|||
_y: .word 0xff |
|||
@ -1,16 +1,16 @@ |
|||
# cr16 testcase for mul $dr,$sr |
|||
# cr16 testcase for muluw reg, regp |
|||
# mach(): cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global mul |
|||
mul: |
|||
.global muluw |
|||
muluw: |
|||
movw $0xfff,r4 # fix for 0xffff |
|||
movd $0xffffffff,(r6,r5) |
|||
|
|||
muluw r4, (r6,r5) |
|||
test_h_grp "(r6,r5)", 0xfffff001 |
|||
test_h_grp "(r6,r5)", 0xffef001 |
|||
|
|||
pass |
|||
|
|||
@ -0,0 +1,35 @@ |
|||
# cr16 testcase for sbitb $count, reg/regp/mem |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global sbitb |
|||
sbitb: |
|||
sbitb $0,_y |
|||
loadw _y, r1 |
|||
cmpb $0xf1, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movd $_y, (r1,r0) |
|||
sbitb $1,0(r1,r0) |
|||
loadw _y, r1 |
|||
cmpb $0xf3, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
movw $_y, r1 |
|||
sbitb $2,0(r1) |
|||
loadw _y, r1 |
|||
cmpb $0xf7, r1 |
|||
beq ok3 |
|||
br not_ok |
|||
ok3: |
|||
pass |
|||
|
|||
_y: .word 0xf0 |
|||
@ -0,0 +1,35 @@ |
|||
# cr16 testcase for sbitw |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global sbitw |
|||
sbitw: |
|||
sbitw $4,_y |
|||
loadw _y, r1 |
|||
cmpb $0x1f, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movd $_y, (r1,r0) |
|||
sbitw $5,0(r1,r0) |
|||
loadw _y, r1 |
|||
cmpb $0x3f, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
movw $_y, r1 |
|||
sbitw $6,0(r1) |
|||
loadw _y, r1 |
|||
cmpb $0x7f, r1 |
|||
beq ok3 |
|||
br not_ok |
|||
ok3: |
|||
pass |
|||
|
|||
_y: .word 0x0f |
|||
@ -0,0 +1,31 @@ |
|||
# cr16 testcase for tbit |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global tbit |
|||
tbit: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
movw $0x7, r1 |
|||
tbit $0, r1 |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
movw $0xa, r1 |
|||
movw $0x1, r2 |
|||
tbit r2,r1 |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
pass |
|||
@ -0,0 +1,33 @@ |
|||
# cr16 testcase for tbitb |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global tbitb |
|||
tbitb: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
movw $_y, r1 |
|||
tbitb $0, 0(r1) |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
movd $_y, (r1,r0) |
|||
tbitb $1,0(r1,r0) |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
pass |
|||
|
|||
_y: .word 0xf7 |
|||
@ -0,0 +1,33 @@ |
|||
# cr16 testcase for tbitw |
|||
# mach: cr16 |
|||
|
|||
.include "testutils.inc" |
|||
|
|||
start |
|||
|
|||
.global tbitw |
|||
tbitw: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
tbitw $0,_y |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok1 |
|||
not_ok: |
|||
fail |
|||
|
|||
ok1: |
|||
movw $0, r1 |
|||
lpr r1, psr |
|||
movd $_y, (r1,r0) |
|||
tbitw $1,0(r1,r0) |
|||
loadw _y, r1 |
|||
spr psr, r1 |
|||
cmpb $0x20, r1 |
|||
beq ok2 |
|||
br not_ok |
|||
ok2: |
|||
|
|||
pass |
|||
|
|||
_y: .word 0xf7 |
|||
Loading…
Reference in new issue