Home | History | Annotate | Line # | Download | only in frv
      1 # frv testcase for subx $GRi,$GRj,$GRk,$ICCi_1
      2 # mach: all
      3 
      4 	.include "testutils.inc"
      5 
      6 	start
      7 
      8 	.global subx
      9 subx:
     10 	set_gr_immed   	1,gr7
     11 	set_gr_immed   	2,gr8
     12 	set_icc         0x0e,0		; Make sure carry is off
     13 	subx      	gr8,gr7,gr8,icc0
     14 	test_icc	1 1 1 0 icc0
     15 	test_gr_immed  	1,gr8
     16 
     17 	set_gr_immed   	1,gr7
     18 	set_gr_limmed   0x8000,0x0000,gr8
     19 	set_icc         0x0c,0		; Make sure carry is off
     20 	subx		gr8,gr7,gr8,icc0
     21 	test_icc	1 1 0 0 icc0
     22 	test_gr_limmed  0x7fff,0xffff,gr8
     23 
     24 	set_icc         0x0a,0		; Make sure carry is off
     25 	subx		gr8,gr8,gr8,icc0
     26 	test_icc	1 0 1 0 icc0
     27 	test_gr_immed  	0,gr8
     28 
     29 	set_icc         0x06,0		; Make sure carry is off
     30 	subx		gr8,gr7,gr8,icc0
     31 	test_icc	0 1 1 0 icc0
     32 	test_gr_limmed  0xffff,0xffff,gr8
     33 
     34 	set_gr_immed   	1,gr7
     35 	set_gr_immed   	3,gr8
     36 	set_icc         0x0f,0		; Make sure carry is on
     37 	subx      	gr8,gr7,gr8,icc0
     38 	test_icc	1 1 1 1 icc0
     39 	test_gr_immed  	1,gr8
     40 
     41 	set_gr_immed   	0,gr7
     42 	set_gr_limmed   0x8000,0x0000,gr8
     43 	set_icc         0x0d,0		; Make sure carry is on
     44 	subx		gr8,gr7,gr8,icc0
     45 	test_icc	1 1 0 1 icc0
     46 	test_gr_limmed  0x7fff,0xffff,gr8
     47 
     48 	set_gr_limmed  	0x7fff,0xfffe,gr7
     49 	set_icc         0x0b,0		; Make sure carry is on
     50 	subx		gr8,gr7,gr8,icc0
     51 	test_icc	1 0 1 1 icc0
     52 	test_gr_immed  	0,gr8
     53 
     54 	set_gr_immed   	0,gr7
     55 	set_icc         0x07,0		; Make sure carry is on
     56 	subx		gr8,gr7,gr8,icc0
     57 	test_icc	0 1 1 1 icc0
     58 	test_gr_limmed  0xffff,0xffff,gr8
     59 
     60 	pass
     61