Home | History | Annotate | Line # | Download | only in v850
bsh.cgs revision 1.1.1.1
      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