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