1# sh testcase for bset 2# mach: all 3# as(sh): -defsym sim_cpu=0 4# as(shdsp): -defsym sim_cpu=1 -dsp 5 6 .include "testutils.inc" 7 8 .align 2 9_x: .long 0 10_y: .long 0x55555555 11 12 start 13 14bset_b_imm_disp12_reg: 15 set_grs_a5a5 16 mov.l x, r1 17 18 bset.b #0, @(3, r1) 19 assertmem _x, 0x1 20 bset.b #1, @(3, r1) 21 assertmem _x, 0x3 22 bset.b #2, @(3, r1) 23 assertmem _x, 0x7 24 bset.b #3, @(3, r1) 25 assertmem _x, 0xf 26 27 bset.b #4, @(3, r1) 28 assertmem _x, 0x1f 29 bset.b #5, @(3, r1) 30 assertmem _x, 0x3f 31 bset.b #6, @(3, r1) 32 assertmem _x, 0x7f 33 bset.b #7, @(3, r1) 34 assertmem _x, 0xff 35 36 bset.b #0, @(2, r1) 37 assertmem _x, 0x1ff 38 bset.b #1, @(2, r1) 39 assertmem _x, 0x3ff 40 bset.b #2, @(2, r1) 41 assertmem _x, 0x7ff 42 bset.b #3, @(2, r1) 43 assertmem _x, 0xfff 44 45 bra .L2 46 nop 47 48 .align 2 49x: .long _x 50y: .long _y 51 52.L2: 53 bset.b #4, @(2, r1) 54 assertmem _x, 0x1fff 55 bset.b #5, @(2, r1) 56 assertmem _x, 0x3fff 57 bset.b #6, @(2, r1) 58 assertmem _x, 0x7fff 59 bset.b #7, @(2, r1) 60 assertmem _x, 0xffff 61 62 bset.b #0, @(1, r1) 63 assertmem _x, 0x1ffff 64 bset.b #1, @(1, r1) 65 assertmem _x, 0x3ffff 66 bset.b #2, @(1, r1) 67 assertmem _x, 0x7ffff 68 bset.b #3, @(1, r1) 69 assertmem _x, 0xfffff 70 71 bset.b #4, @(1, r1) 72 assertmem _x, 0x1fffff 73 bset.b #5, @(1, r1) 74 assertmem _x, 0x3fffff 75 bset.b #6, @(1, r1) 76 assertmem _x, 0x7fffff 77 bset.b #7, @(1, r1) 78 assertmem _x, 0xffffff 79 80 bset.b #0, @(0, r1) 81 assertmem _x, 0x1ffffff 82 bset.b #1, @(0, r1) 83 assertmem _x, 0x3ffffff 84 bset.b #2, @(0, r1) 85 assertmem _x, 0x7ffffff 86 bset.b #3, @(0, r1) 87 assertmem _x, 0xfffffff 88 89 bset.b #4, @(0, r1) 90 assertmem _x, 0x1fffffff 91 bset.b #5, @(0, r1) 92 assertmem _x, 0x3fffffff 93 bset.b #6, @(0, r1) 94 assertmem _x, 0x7fffffff 95 bset.b #7, @(0, r1) 96 assertmem _x, 0xffffffff 97 98 assertreg _x, r1 99 100bset_imm_reg: 101 set_greg 0, r1 102 bset #0, r1 103 assertreg 0x1, r1 104 bset #1, r1 105 assertreg 0x3, r1 106 bset #2, r1 107 assertreg 0x7, r1 108 bset #3, r1 109 assertreg 0xf, r1 110 111 bset #4, r1 112 assertreg 0x1f, r1 113 bset #5, r1 114 assertreg 0x3f, r1 115 bset #6, r1 116 assertreg 0x7f, r1 117 bset #7, r1 118 assertreg 0xff, r1 119 120 test_gr_a5a5 r0 121 test_gr_a5a5 r2 122 test_gr_a5a5 r3 123 test_gr_a5a5 r4 124 test_gr_a5a5 r5 125 test_gr_a5a5 r6 126 test_gr_a5a5 r7 127 test_gr_a5a5 r8 128 test_gr_a5a5 r9 129 test_gr_a5a5 r10 130 test_gr_a5a5 r11 131 test_gr_a5a5 r12 132 test_gr_a5a5 r13 133 test_gr_a5a5 r14 134 135 pass 136 137 exit 0 138 139 140