55 lines
816 B
Text
55 lines
816 B
Text
# v850 bsh
|
|
# mach: v850e
|
|
# as(v850e): -mv850e
|
|
|
|
.include "testutils.inc"
|
|
|
|
seti 0x12345678, r1
|
|
bsh r1, r2
|
|
|
|
flags 0
|
|
reg r2, 0x34127856
|
|
|
|
# CY is 1 if one or more bytes in the result half-word is zero, else 0
|
|
|
|
seti 0x12345600, r1
|
|
bsh r1, r2
|
|
flags c
|
|
reg r2, 0x34120056
|
|
|
|
seti 0x12340078, r1
|
|
bsh r1, r2
|
|
flags c
|
|
reg r2, 0x34127800
|
|
|
|
seti 0x12005678, r1
|
|
bsh r1, r2
|
|
flags 0
|
|
reg r2, 0x00127856
|
|
|
|
seti 0x00345678, r1
|
|
bsh r1, r2
|
|
flags 0
|
|
reg r2, 0x34007856
|
|
|
|
# S is set if the result is negative
|
|
|
|
seti 0x00800000, r1
|
|
bsh r1, r2
|
|
flags s + c + z
|
|
reg r2, 0x80000000
|
|
|
|
# Z is set if the result is zero
|
|
# According to NEC, the Z flag depends on only the lower half-word
|
|
|
|
seti 0x00000000, r1
|
|
bsh r1, r2
|
|
flags c + z
|
|
reg r2, 0x00000000
|
|
|
|
seti 0xffff0000, r1
|
|
bsh r1, r2
|
|
flags c + s + z
|
|
reg r2, 0xffff0000
|
|
|
|
pass
|