Home | History | Annotate | Line # | Download | only in sh
      1  1.1  christos # sh testcase for bclr
      2  1.1  christos # mach:	 all
      3  1.1  christos # as(sh):	-defsym sim_cpu=0
      4  1.1  christos # as(shdsp):	-defsym sim_cpu=1 -dsp
      5  1.1  christos 
      6  1.1  christos 	.include "testutils.inc"
      7  1.1  christos 
      8  1.1  christos 	.align 2
      9  1.1  christos _x:	.long	0xffffffff
     10  1.1  christos _y:	.long	0x55555555
     11  1.1  christos 
     12  1.1  christos 	start
     13  1.1  christos 
     14  1.1  christos bclr_b_imm_disp12_reg:
     15  1.1  christos 	set_grs_a5a5
     16  1.1  christos 	mov.l	x, r1
     17  1.1  christos 
     18  1.1  christos 	bclr.b	#0, @(3, r1)
     19  1.1  christos 	assertmem _x, 0xfffffffe
     20  1.1  christos 	bclr.b	#1, @(3, r1)
     21  1.1  christos 	assertmem _x, 0xfffffffc
     22  1.1  christos 	bclr.b	#2, @(3, r1)
     23  1.1  christos 	assertmem _x, 0xfffffff8
     24  1.1  christos 	bclr.b	#3, @(3, r1)
     25  1.1  christos 	assertmem _x, 0xfffffff0
     26  1.1  christos 
     27  1.1  christos 	bclr.b	#4, @(3, r1)
     28  1.1  christos 	assertmem _x, 0xffffffe0
     29  1.1  christos 	bclr.b	#5, @(3, r1)
     30  1.1  christos 	assertmem _x, 0xffffffc0
     31  1.1  christos 	bclr.b	#6, @(3, r1)
     32  1.1  christos 	assertmem _x, 0xffffff80
     33  1.1  christos 	bclr.b	#7, @(3, r1)
     34  1.1  christos 	assertmem _x, 0xffffff00
     35  1.1  christos 
     36  1.1  christos 	bclr.b	#0, @(2, r1)
     37  1.1  christos 	assertmem _x, 0xfffffe00
     38  1.1  christos 	bclr.b	#1, @(2, r1)
     39  1.1  christos 	assertmem _x, 0xfffffc00
     40  1.1  christos 	bclr.b	#2, @(2, r1)
     41  1.1  christos 	assertmem _x, 0xfffff800
     42  1.1  christos 	bclr.b	#3, @(2, r1)
     43  1.1  christos 	assertmem _x, 0xfffff000
     44  1.1  christos 
     45  1.1  christos 	bra	.L2
     46  1.1  christos 	nop
     47  1.1  christos 
     48  1.1  christos 	.align 2
     49  1.1  christos x:	.long	_x
     50  1.1  christos y:	.long	_y
     51  1.1  christos 
     52  1.1  christos .L2:
     53  1.1  christos 	bclr.b	#4, @(2, r1)
     54  1.1  christos 	assertmem _x, 0xffffe000
     55  1.1  christos 	bclr.b	#5, @(2, r1)
     56  1.1  christos 	assertmem _x, 0xffffc000
     57  1.1  christos 	bclr.b	#6, @(2, r1)
     58  1.1  christos 	assertmem _x, 0xffff8000
     59  1.1  christos 	bclr.b	#7, @(2, r1)
     60  1.1  christos 	assertmem _x, 0xffff0000
     61  1.1  christos 
     62  1.1  christos 	bclr.b	#0, @(1, r1)
     63  1.1  christos 	assertmem _x, 0xfffe0000
     64  1.1  christos 	bclr.b	#1, @(1, r1)
     65  1.1  christos 	assertmem _x, 0xfffc0000
     66  1.1  christos 	bclr.b	#2, @(1, r1)
     67  1.1  christos 	assertmem _x, 0xfff80000
     68  1.1  christos 	bclr.b	#3, @(1, r1)
     69  1.1  christos 	assertmem _x, 0xfff00000
     70  1.1  christos 
     71  1.1  christos 	bclr.b	#4, @(1, r1)
     72  1.1  christos 	assertmem _x, 0xffe00000
     73  1.1  christos 	bclr.b	#5, @(1, r1)
     74  1.1  christos 	assertmem _x, 0xffc00000
     75  1.1  christos 	bclr.b	#6, @(1, r1)
     76  1.1  christos 	assertmem _x, 0xff800000
     77  1.1  christos 	bclr.b	#7, @(1, r1)
     78  1.1  christos 	assertmem _x, 0xff000000
     79  1.1  christos 
     80  1.1  christos 	bclr.b	#0, @(0, r1)
     81  1.1  christos 	assertmem _x, 0xfe000000
     82  1.1  christos 	bclr.b	#1, @(0, r1)
     83  1.1  christos 	assertmem _x, 0xfc000000
     84  1.1  christos 	bclr.b	#2, @(0, r1)
     85  1.1  christos 	assertmem _x, 0xf8000000
     86  1.1  christos 	bclr.b	#3, @(0, r1)
     87  1.1  christos 	assertmem _x, 0xf0000000
     88  1.1  christos 
     89  1.1  christos 	bclr.b	#4, @(0, r1)
     90  1.1  christos 	assertmem _x, 0xe0000000
     91  1.1  christos 	bclr.b	#5, @(0, r1)
     92  1.1  christos 	assertmem _x, 0xc0000000
     93  1.1  christos 	bclr.b	#6, @(0, r1)
     94  1.1  christos 	assertmem _x, 0x80000000
     95  1.1  christos 	bclr.b	#7, @(0, r1)
     96  1.1  christos 	assertmem _x, 0x00000000
     97  1.1  christos 
     98  1.1  christos 	assertreg _x, r1
     99  1.1  christos 
    100  1.1  christos bclr_imm_reg:
    101  1.1  christos 	set_greg 0xff, r1
    102  1.1  christos 	bclr	#0, r1
    103  1.1  christos 	assertreg 0xfe, r1
    104  1.1  christos 	bclr	#1, r1
    105  1.1  christos 	assertreg 0xfc, r1
    106  1.1  christos 	bclr	#2, r1
    107  1.1  christos 	assertreg 0xf8, r1
    108  1.1  christos 	bclr	#3, r1
    109  1.1  christos 	assertreg 0xf0, r1
    110  1.1  christos 
    111  1.1  christos 	bclr	#4, r1
    112  1.1  christos 	assertreg 0xe0, r1
    113  1.1  christos 	bclr	#5, r1
    114  1.1  christos 	assertreg 0xc0, r1
    115  1.1  christos 	bclr	#6, r1
    116  1.1  christos 	assertreg 0x80, r1
    117  1.1  christos 	bclr	#7, r1
    118  1.1  christos 	assertreg 0x00, r1
    119  1.1  christos 
    120  1.1  christos 	test_gr_a5a5 r0
    121  1.1  christos 	test_gr_a5a5 r2
    122  1.1  christos 	test_gr_a5a5 r3
    123  1.1  christos 	test_gr_a5a5 r4
    124  1.1  christos 	test_gr_a5a5 r5
    125  1.1  christos 	test_gr_a5a5 r6
    126  1.1  christos 	test_gr_a5a5 r7
    127  1.1  christos 	test_gr_a5a5 r8
    128  1.1  christos 	test_gr_a5a5 r9
    129  1.1  christos 	test_gr_a5a5 r10
    130  1.1  christos 	test_gr_a5a5 r11
    131  1.1  christos 	test_gr_a5a5 r12
    132  1.1  christos 	test_gr_a5a5 r13
    133  1.1  christos 	test_gr_a5a5 r14
    134  1.1  christos 
    135  1.1  christos 	pass
    136  1.1  christos 
    137  1.1  christos 	exit 0
    138  1.1  christos 
    139  1.1  christos 
    140