1# frv testcase for cldfu @($GRi,$GRj),$FRk,$CCi,$cond 2# mach: all 3 4 .include "testutils.inc" 5 6 start 7 8 .global cldfu 9cldfu: 10 set_spr_immed 0x1b1b,cccr 11 set_gr_gr sp,gr21 12 13 set_gr_gr sp,gr20 14 set_mem_limmed 0xdead,0xbeef,sp 15 set_fr_iimmed 0xbeef,0xdead,fr8 16 17 set_gr_immed 0,gr7 18 cldfu @(sp,gr7),fr8,cc0,1 19 test_fr_limmed 0xdead,0xbeef,fr8 20 test_gr_gr sp,gr20 21 22 set_fr_iimmed 0xbeef,0xdead,fr8 23 inc_gr_immed -4,sp 24 set_gr_immed 4,gr7 25 cldfu @(sp,gr7),fr8,cc0,1 26 test_fr_limmed 0xdead,0xbeef,fr8 27 test_gr_gr sp,gr20 28 29 set_fr_iimmed 0xbeef,0xdead,fr8 30 inc_gr_immed 4,sp 31 set_gr_immed -4,gr7 32 cldfu @(sp,gr7),fr8,cc4,1 33 test_fr_limmed 0xdead,0xbeef,fr8 34 test_gr_gr sp,gr20 35 36 set_gr_gr gr21,sp 37 set_gr_gr sp,gr20 38 set_mem_limmed 0xdead,0xbeef,sp 39 set_fr_iimmed 0xbeef,0xdead,fr8 40 41 set_gr_immed 0,gr7 42 cldfu @(sp,gr7),fr8,cc0,0 43 test_fr_limmed 0xbeef,0xdead,fr8 44 test_gr_gr sp,gr20 45 46 set_fr_iimmed 0xbeef,0xdead,fr8 47 inc_gr_immed -4,gr20 48 inc_gr_immed -4,sp 49 set_gr_immed 4,gr7 50 cldfu @(sp,gr7),fr8,cc0,0 51 test_fr_limmed 0xbeef,0xdead,fr8 52 test_gr_gr sp,gr20 53 54 set_fr_iimmed 0xbeef,0xdead,fr8 55 inc_gr_immed 8,gr20 56 inc_gr_immed 8,sp 57 set_gr_immed -4,gr7 58 cldfu @(sp,gr7),fr8,cc4,0 59 test_fr_limmed 0xbeef,0xdead,fr8 60 test_gr_gr sp,gr20 61 62 set_gr_gr gr21,sp 63 set_gr_gr sp,gr20 64 set_mem_limmed 0xdead,0xbeef,sp 65 set_fr_iimmed 0xbeef,0xdead,fr8 66 67 set_gr_immed 0,gr7 68 cldfu @(sp,gr7),fr8,cc1,0 69 test_fr_limmed 0xdead,0xbeef,fr8 70 test_gr_gr sp,gr20 71 72 set_fr_iimmed 0xbeef,0xdead,fr8 73 inc_gr_immed -4,sp 74 set_gr_immed 4,gr7 75 cldfu @(sp,gr7),fr8,cc1,0 76 test_fr_limmed 0xdead,0xbeef,fr8 77 test_gr_gr sp,gr20 78 79 set_fr_iimmed 0xbeef,0xdead,fr8 80 inc_gr_immed 4,sp 81 set_gr_immed -4,gr7 82 cldfu @(sp,gr7),fr8,cc5,0 83 test_fr_limmed 0xdead,0xbeef,fr8 84 test_gr_gr sp,gr20 85 86 set_gr_gr gr21,sp 87 set_gr_gr sp,gr20 88 set_mem_limmed 0xdead,0xbeef,sp 89 set_fr_iimmed 0xbeef,0xdead,fr8 90 91 set_gr_immed 0,gr7 92 cldfu @(sp,gr7),fr8,cc1,1 93 test_fr_limmed 0xbeef,0xdead,fr8 94 test_gr_gr sp,gr20 95 96 set_fr_iimmed 0xbeef,0xdead,fr8 97 inc_gr_immed -4,gr20 98 inc_gr_immed -4,sp 99 set_gr_immed 4,gr7 100 cldfu @(sp,gr7),fr8,cc1,1 101 test_fr_limmed 0xbeef,0xdead,fr8 102 test_gr_gr sp,gr20 103 104 set_fr_iimmed 0xbeef,0xdead,fr8 105 inc_gr_immed 8,gr20 106 inc_gr_immed 8,sp 107 set_gr_immed -4,gr7 108 cldfu @(sp,gr7),fr8,cc5,1 109 test_fr_limmed 0xbeef,0xdead,fr8 110 test_gr_gr sp,gr20 111 112 set_gr_gr gr21,sp 113 set_gr_gr sp,gr20 114 set_mem_limmed 0xdead,0xbeef,sp 115 set_fr_iimmed 0xbeef,0xdead,fr8 116 117 set_gr_immed 0,gr7 118 cldfu @(sp,gr7),fr8,cc2,0 119 test_fr_limmed 0xbeef,0xdead,fr8 120 test_gr_gr sp,gr20 121 122 set_fr_iimmed 0xbeef,0xdead,fr8 123 inc_gr_immed -4,gr20 124 inc_gr_immed -4,sp 125 set_gr_immed 4,gr7 126 cldfu @(sp,gr7),fr8,cc2,1 127 test_fr_limmed 0xbeef,0xdead,fr8 128 test_gr_gr sp,gr20 129 130 set_fr_iimmed 0xbeef,0xdead,fr8 131 inc_gr_immed 8,gr20 132 inc_gr_immed 8,sp 133 set_gr_immed -4,gr7 134 cldfu @(sp,gr7),fr8,cc6,0 135 test_fr_limmed 0xbeef,0xdead,fr8 136 test_gr_gr sp,gr20 137 138 set_gr_gr gr21,sp 139 set_gr_gr sp,gr20 140 set_mem_limmed 0xdead,0xbeef,sp 141 set_fr_iimmed 0xbeef,0xdead,fr8 142 143 set_gr_immed 0,gr7 144 cldfu @(sp,gr7),fr8,cc3,1 145 test_fr_limmed 0xbeef,0xdead,fr8 146 test_gr_gr sp,gr20 147 148 set_fr_iimmed 0xbeef,0xdead,fr8 149 inc_gr_immed -4,gr20 150 inc_gr_immed -4,sp 151 set_gr_immed 4,gr7 152 cldfu @(sp,gr7),fr8,cc3,0 153 test_fr_limmed 0xbeef,0xdead,fr8 154 test_gr_gr sp,gr20 155 156 set_fr_iimmed 0xbeef,0xdead,fr8 157 inc_gr_immed 8,gr20 158 inc_gr_immed 8,sp 159 set_gr_immed -4,gr7 160 cldfu @(sp,gr7),fr8,cc7,1 161 test_fr_limmed 0xbeef,0xdead,fr8 162 test_gr_gr sp,gr20 163 164 pass 165