1# frv testcase for masaccs $ACC40Si,$ACC40Sk 2# mach: all 3 4 .include "../testutils.inc" 5 6 start 7 8 .global masaccs 9masaccs: 10 set_accg_immed 0,accg0 11 set_acc_immed 0x00000000,acc0 12 set_accg_immed 0,accg1 13 set_acc_immed 0x00000000,acc1 14 masaccs acc0,acc2 15 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 16 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 17 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 18 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 19 test_accg_immed 0,accg2 20 test_acc_limmed 0x0000,0x0000,acc2 21 test_accg_immed 0,accg3 22 test_acc_limmed 0x0000,0x0000,acc3 23 24 set_accg_immed 0,accg0 25 set_acc_immed 0xdead0000,acc0 26 set_accg_immed 0,accg1 27 set_acc_immed 0x0000beef,acc1 28 masaccs acc0,acc2 29 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 30 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 31 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 32 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 33 test_accg_immed 0,accg2 34 test_acc_limmed 0xdead,0xbeef,acc2 35 test_accg_immed 0,accg3 36 test_acc_limmed 0xdeac,0x4111,acc3 37 38 set_accg_immed 0,accg0 39 set_acc_immed 0x0000dead,acc0 40 set_accg_immed 0,accg1 41 set_acc_immed 0xbeef0000,acc1 42 masaccs acc0,acc2 43 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 44 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 45 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 46 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 47 test_accg_immed 0,accg2 48 test_acc_limmed 0xbeef,0xdead,acc2 49 test_accg_immed 0xff,accg3 50 test_acc_limmed 0x4111,0xdead,acc3 51 52 set_accg_immed 0,accg0 53 set_acc_immed 0x12345678,acc0 54 set_accg_immed 0,accg1 55 set_acc_immed 0x11111111,acc1 56 masaccs acc0,acc2 57 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 58 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 59 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 60 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 61 test_accg_immed 0,accg2 62 test_acc_limmed 0x2345,0x6789,acc2 63 test_accg_immed 0,accg3 64 test_acc_limmed 0x0123,0x4567,acc3 65 66 set_accg_immed 0,accg0 67 set_acc_immed 0x12345678,acc0 68 set_accg_immed 0,accg1 69 set_acc_immed 0xffffffff,acc1 70 masaccs acc0,acc2 71 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 72 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 73 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 74 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 75 test_accg_immed 1,accg2 76 test_acc_limmed 0x1234,0x5677,acc2 77 test_accg_immed 0xff,accg3 78 test_acc_limmed 0x1234,0x5679,acc3 79 80 set_accg_immed 0,accg0 81 set_acc_immed 0x12345678,acc0 82 set_accg_immed 0xff,accg1 83 set_acc_immed 0xffffffff,acc1 84 masaccs acc0,acc2 85 test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear 86 test_spr_bits 2,1,0,msr0 ; msr0.ovf not set 87 test_spr_bits 1,0,0,msr0 ; msr0.aovf not set 88 test_spr_bits 0x7000,12,1,msr0 ; msro.mtt always set 89 test_accg_immed 0,accg2 90 test_acc_limmed 0x1234,0x5677,acc2 91 test_accg_immed 0,accg3 92 test_acc_limmed 0x1234,0x5679,acc3 93 94 set_spr_immed 0,msr0 95 set_accg_immed 0x7f,accg0 96 set_acc_immed 0xfffe7ffe,acc0 97 set_accg_immed 0x0,accg1 98 set_acc_immed 0x00020001,acc1 99 masaccs acc0,acc2 100 test_spr_bits 0x3c,2,0x8,msr0 ; msr0.sie is set 101 test_spr_bits 2,1,1,msr0 ; msr0.ovf set 102 test_spr_bits 1,0,1,msr0 ; msr0.aovf set 103 test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set 104 test_accg_immed 0x7f,accg2 105 test_acc_limmed 0xffff,0xffff,acc2 106 test_accg_immed 0x7f,accg3 107 test_acc_limmed 0xfffc,0x7ffd,acc3 108 109 set_spr_immed 0,msr0 110 set_accg_immed 0x80,accg0 111 set_acc_immed 0x00000001,acc0 112 set_accg_immed 0xff,accg1 113 set_acc_immed 0xfffffffe,acc1 114 masaccs acc0,acc2 115 test_spr_bits 0x3c,2,0x8,msr0 ; msr0.sie is set 116 test_spr_bits 2,1,1,msr0 ; msr0.ovf set 117 test_spr_bits 1,0,1,msr0 ; msr0.aovf set 118 test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set 119 test_accg_immed 0x80,accg2 120 test_acc_limmed 0x0000,0x0000,acc2 121 test_accg_immed 0x80,accg3 122 test_acc_limmed 0x0000,0x0003,acc3 123 124 set_spr_immed 0,msr0 125 set_accg_immed 0,accg0 126 set_acc_immed 0x00000001,acc0 127 set_accg_immed 0,accg1 128 set_acc_immed 0x00000001,acc1 129 set_accg_immed 0,accg4 130 set_acc_immed 0x00000001,acc4 131 set_accg_immed 0x7f,accg5 132 set_acc_immed 0xffffffff,acc5 133 masaccs.p acc0,acc0 134 masaccs acc4,acc4 135 test_spr_bits 0x3c,2,0x8,msr0 ; msr0.sie is set 136 test_spr_bits 2,1,1,msr0 ; msr0.ovf set 137 test_spr_bits 1,0,1,msr0 ; msr0.aovf set 138 test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set 139 test_accg_immed 0,accg0 140 test_acc_limmed 0x0000,0x0002,acc0 141 test_accg_immed 0,accg1 142 test_acc_limmed 0x0000,0x0000,acc1 143 test_accg_immed 0x7f,accg4 144 test_acc_limmed 0xffff,0xffff,acc4 145 test_accg_immed 0x80,accg5 146 test_acc_limmed 0x0000,0x0002,acc5 147 148 pass 149