1# v850 bsh 2# mach: v850e 3# as(v850e): -mv850e 4 5 .include "testutils.inc" 6 7 seti 0x12345678, r1 8 bsh r1, r2 9 10 flags 0 11 reg r2, 0x34127856 12 13# CY is 1 if one or more bytes in the result half-word is zero, else 0 14 15 seti 0x12345600, r1 16 bsh r1, r2 17 flags c 18 reg r2, 0x34120056 19 20 seti 0x12340078, r1 21 bsh r1, r2 22 flags c 23 reg r2, 0x34127800 24 25 seti 0x12005678, r1 26 bsh r1, r2 27 flags 0 28 reg r2, 0x00127856 29 30 seti 0x00345678, r1 31 bsh r1, r2 32 flags 0 33 reg r2, 0x34007856 34 35# S is set if the result is negative 36 37 seti 0x00800000, r1 38 bsh r1, r2 39 flags s + c + z 40 reg r2, 0x80000000 41 42# Z is set if the result is zero 43# According to NEC, the Z flag depends on only the lower half-word 44 45 seti 0x00000000, r1 46 bsh r1, r2 47 flags c + z 48 reg r2, 0x00000000 49 50 seti 0xffff0000, r1 51 bsh r1, r2 52 flags c + s + z 53 reg r2, 0xffff0000 54 55 pass 56