1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-tblgen %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerclass Set<int i = 0, int j = 0, int k = 0> { 4*9880d681SAndroid Build Coastguard Worker int I = i; 5*9880d681SAndroid Build Coastguard Worker int J = j; 6*9880d681SAndroid Build Coastguard Worker int K = k; 7*9880d681SAndroid Build Coastguard Worker} 8*9880d681SAndroid Build Coastguard Worker 9*9880d681SAndroid Build Coastguard Workerforeach i = [1, 2, 3] in { 10*9880d681SAndroid Build Coastguard Worker def I1_#i : Set<i>; 11*9880d681SAndroid Build Coastguard Worker foreach j = [1, 2, 3] in { 12*9880d681SAndroid Build Coastguard Worker def I1_#i#_J1_#j : Set<i, j>; 13*9880d681SAndroid Build Coastguard Worker } 14*9880d681SAndroid Build Coastguard Worker def I2_#i : Set<i>; 15*9880d681SAndroid Build Coastguard Worker foreach j = [4, 5, 6] in { 16*9880d681SAndroid Build Coastguard Worker foreach k = [1, 2, 3] in { 17*9880d681SAndroid Build Coastguard Worker def I3_#i#_J2_#j#_K1_#k : Set<i, j, k>; 18*9880d681SAndroid Build Coastguard Worker } 19*9880d681SAndroid Build Coastguard Worker def I4_#i#_J3_#j : Set<i, j>; 20*9880d681SAndroid Build Coastguard Worker } 21*9880d681SAndroid Build Coastguard Worker} 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_1 24*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 25*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 26*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_1_J1_1 29*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 30*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 1; 31*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 32*9880d681SAndroid Build Coastguard Worker 33*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_1_J1_2 34*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 35*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 2; 36*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 37*9880d681SAndroid Build Coastguard Worker 38*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_1_J1_3 39*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 40*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 3; 41*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 42*9880d681SAndroid Build Coastguard Worker 43*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_2 44*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 45*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 46*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 47*9880d681SAndroid Build Coastguard Worker 48*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_2_J1_1 49*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 50*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 1; 51*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 52*9880d681SAndroid Build Coastguard Worker 53*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_2_J1_2 54*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 55*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 2; 56*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 57*9880d681SAndroid Build Coastguard Worker 58*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_2_J1_3 59*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 60*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 3; 61*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 62*9880d681SAndroid Build Coastguard Worker 63*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_3 64*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 65*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 66*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 67*9880d681SAndroid Build Coastguard Worker 68*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_3_J1_1 69*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 70*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 1; 71*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 72*9880d681SAndroid Build Coastguard Worker 73*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_3_J1_2 74*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 75*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 2; 76*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 77*9880d681SAndroid Build Coastguard Worker 78*9880d681SAndroid Build Coastguard Worker// CHECK: def I1_3_J1_3 79*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 80*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 3; 81*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 82*9880d681SAndroid Build Coastguard Worker 83*9880d681SAndroid Build Coastguard Worker// CHECK: def I2_1 84*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 85*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 86*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 87*9880d681SAndroid Build Coastguard Worker 88*9880d681SAndroid Build Coastguard Worker// CHECK: def I2_2 89*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 90*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 91*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 92*9880d681SAndroid Build Coastguard Worker 93*9880d681SAndroid Build Coastguard Worker// CHECK: def I2_3 94*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 95*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 0; 96*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 97*9880d681SAndroid Build Coastguard Worker 98*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_4_K1_1 99*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 100*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 101*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 102*9880d681SAndroid Build Coastguard Worker 103*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_4_K1_2 104*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 105*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 106*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 107*9880d681SAndroid Build Coastguard Worker 108*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_4_K1_3 109*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 110*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 111*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 112*9880d681SAndroid Build Coastguard Worker 113*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_5_K1_1 114*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 115*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 116*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 117*9880d681SAndroid Build Coastguard Worker 118*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_5_K1_2 119*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 120*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 121*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 122*9880d681SAndroid Build Coastguard Worker 123*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_5_K1_3 124*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 125*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 126*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 127*9880d681SAndroid Build Coastguard Worker 128*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_6_K1_1 129*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 130*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 131*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 132*9880d681SAndroid Build Coastguard Worker 133*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_6_K1_2 134*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 135*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 136*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 137*9880d681SAndroid Build Coastguard Worker 138*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_1_J2_6_K1_3 139*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 140*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 141*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 142*9880d681SAndroid Build Coastguard Worker 143*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_4_K1_1 144*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 145*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 146*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 147*9880d681SAndroid Build Coastguard Worker 148*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_4_K1_2 149*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 150*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 151*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 152*9880d681SAndroid Build Coastguard Worker 153*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_4_K1_3 154*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 155*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 156*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 157*9880d681SAndroid Build Coastguard Worker 158*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_5_K1_1 159*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 160*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 161*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 162*9880d681SAndroid Build Coastguard Worker 163*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_5_K1_2 164*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 165*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 166*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 167*9880d681SAndroid Build Coastguard Worker 168*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_5_K1_3 169*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 170*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 171*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 172*9880d681SAndroid Build Coastguard Worker 173*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_6_K1_1 174*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 175*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 176*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 177*9880d681SAndroid Build Coastguard Worker 178*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_6_K1_2 179*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 180*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 181*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 182*9880d681SAndroid Build Coastguard Worker 183*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_2_J2_6_K1_3 184*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 185*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 186*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 187*9880d681SAndroid Build Coastguard Worker 188*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_4_K1_1 189*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 190*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 191*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 192*9880d681SAndroid Build Coastguard Worker 193*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_4_K1_2 194*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 195*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 196*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 197*9880d681SAndroid Build Coastguard Worker 198*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_4_K1_3 199*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 200*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 201*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 202*9880d681SAndroid Build Coastguard Worker 203*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_5_K1_1 204*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 205*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 206*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 207*9880d681SAndroid Build Coastguard Worker 208*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_5_K1_2 209*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 210*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 211*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 212*9880d681SAndroid Build Coastguard Worker 213*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_5_K1_3 214*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 215*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 216*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 217*9880d681SAndroid Build Coastguard Worker 218*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_6_K1_1 219*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 220*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 221*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 1; 222*9880d681SAndroid Build Coastguard Worker 223*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_6_K1_2 224*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 225*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 226*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 2; 227*9880d681SAndroid Build Coastguard Worker 228*9880d681SAndroid Build Coastguard Worker// CHECK: def I3_3_J2_6_K1_3 229*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 230*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 231*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 3; 232*9880d681SAndroid Build Coastguard Worker 233*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_1_J3_4 234*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 235*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 236*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 237*9880d681SAndroid Build Coastguard Worker 238*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_1_J3_5 239*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 240*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 241*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 242*9880d681SAndroid Build Coastguard Worker 243*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_1_J3_6 244*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 1; 245*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 246*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 247*9880d681SAndroid Build Coastguard Worker 248*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_2_J3_4 249*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 250*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 251*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 252*9880d681SAndroid Build Coastguard Worker 253*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_2_J3_5 254*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 255*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 256*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 257*9880d681SAndroid Build Coastguard Worker 258*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_2_J3_6 259*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 2; 260*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 261*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 262*9880d681SAndroid Build Coastguard Worker 263*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_3_J3_4 264*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 265*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 4; 266*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 267*9880d681SAndroid Build Coastguard Worker 268*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_3_J3_5 269*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 270*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 5; 271*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 272*9880d681SAndroid Build Coastguard Worker 273*9880d681SAndroid Build Coastguard Worker// CHECK: def I4_3_J3_6 274*9880d681SAndroid Build Coastguard Worker// CHECK: int I = 3; 275*9880d681SAndroid Build Coastguard Worker// CHECK: int J = 6; 276*9880d681SAndroid Build Coastguard Worker// CHECK: int K = 0; 277