Home | History | Annotate | Line # | Download | only in fr400
      1 # frv testcase for movgs $GRj,iacc0[hl]
      2 # mach: fr400
      3 
      4 	.include "../testutils.inc"
      5 
      6 	start
      7 
      8 	.global movgs
      9 IACC0H:
     10 	set_gr_limmed	0xdead,0xbeef,gr8
     11 	and_spr_immed	0,iacc0h
     12 	movgs gr8,iacc0h
     13 	test_gr_limmed	0xdead,0xbeef,gr8
     14 	test_spr_limmed	0xdead,0xbeef,iacc0h
     15 SPR280:
     16 	; try alternate names for iacc0h
     17 	and_spr_immed	0,280
     18 	movgs gr8,spr[280]			; iacc0h is spr number 280
     19 	test_gr_limmed	0xdead,0xbeef,gr8
     20 	test_spr_limmed	0xdead,0xbeef,spr[280]
     21 
     22 IACC0L:
     23 	set_gr_limmed	0xdead,0xbeef,gr8
     24 	and_spr_immed	0,iacc0l
     25 	movgs gr8,iacc0l
     26 	test_gr_limmed	0xdead,0xbeef,gr8
     27 	test_spr_limmed	0xdead,0xbeef,iacc0l
     28 SPR281:
     29 	; try alternate names for iacc0l
     30 	and_spr_immed	0,281
     31 	movgs gr8,spr[281]			; iacc0l is spr number 281
     32 	test_gr_limmed	0xdead,0xbeef,gr8
     33 	test_spr_limmed	0xdead,0xbeef,spr[281]
     34 
     35 IACC0L_SPR281:
     36 	; try crossing between iacc0l and spr[281]
     37 	and_spr_immed	0,281
     38 	and_spr_immed	0,iacc0l
     39 	movgs gr8,spr[281]			; iacc0l is spr number 281
     40 	test_gr_limmed	0xdead,0xbeef,gr8
     41 	test_spr_limmed	0xdead,0xbeef,iacc0l
     42 
     43 SPR280_IACC0H:
     44 	and_spr_immed	0,280
     45 	and_spr_immed	0,iacc0h
     46 	movgs gr8,iacc0h			; iacc0h is spr number 280
     47 	test_gr_limmed	0xdead,0xbeef,gr8
     48 	test_spr_limmed	0xdead,0xbeef,spr[280]
     49 
     50 	pass
     51