1*9880d681SAndroid Build Coastguard Worker; Test memsets that set all bits. 2*9880d681SAndroid Build Coastguard Worker; 3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.memset.p0i8.i32(i8 *nocapture, i8, i32, i32, i1) nounwind 6*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.memset.p0i8.i64(i8 *nocapture, i8, i64, i32, i1) nounwind 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker; No bytes, i32 version. 9*9880d681SAndroid Build Coastguard Workerdefine void @f1(i8 *%dest) { 10*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f1: 11*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: %r2 12*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 13*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 0, i32 1, i1 false) 14*9880d681SAndroid Build Coastguard Worker ret void 15*9880d681SAndroid Build Coastguard Worker} 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker; No bytes, i64 version. 18*9880d681SAndroid Build Coastguard Workerdefine void @f2(i8 *%dest) { 19*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f2: 20*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: %r2 21*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 22*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 0, i32 1, i1 false) 23*9880d681SAndroid Build Coastguard Worker ret void 24*9880d681SAndroid Build Coastguard Worker} 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Worker; 1 byte, i32 version. 27*9880d681SAndroid Build Coastguard Workerdefine void @f3(i8 *%dest) { 28*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f3: 29*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 30*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 31*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 1, i32 1, i1 false) 32*9880d681SAndroid Build Coastguard Worker ret void 33*9880d681SAndroid Build Coastguard Worker} 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Worker; 1 byte, i64 version. 36*9880d681SAndroid Build Coastguard Workerdefine void @f4(i8 *%dest) { 37*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f4: 38*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 39*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 40*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 1, i32 1, i1 false) 41*9880d681SAndroid Build Coastguard Worker ret void 42*9880d681SAndroid Build Coastguard Worker} 43*9880d681SAndroid Build Coastguard Worker 44*9880d681SAndroid Build Coastguard Worker; 2 bytes, i32 version. 45*9880d681SAndroid Build Coastguard Workerdefine void @f5(i8 *%dest) { 46*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f5: 47*9880d681SAndroid Build Coastguard Worker; CHECK: mvhhi 0(%r2), -1 48*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 49*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 2, i32 1, i1 false) 50*9880d681SAndroid Build Coastguard Worker ret void 51*9880d681SAndroid Build Coastguard Worker} 52*9880d681SAndroid Build Coastguard Worker 53*9880d681SAndroid Build Coastguard Worker; 2 bytes, i64 version. 54*9880d681SAndroid Build Coastguard Workerdefine void @f6(i8 *%dest) { 55*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f6: 56*9880d681SAndroid Build Coastguard Worker; CHECK: mvhhi 0(%r2), -1 57*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 58*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 2, i32 1, i1 false) 59*9880d681SAndroid Build Coastguard Worker ret void 60*9880d681SAndroid Build Coastguard Worker} 61*9880d681SAndroid Build Coastguard Worker 62*9880d681SAndroid Build Coastguard Worker; 3 bytes, i32 version. 63*9880d681SAndroid Build Coastguard Workerdefine void @f7(i8 *%dest) { 64*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f7: 65*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 0(%r2), -1 66*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 2(%r2), 255 67*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 68*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 3, i32 1, i1 false) 69*9880d681SAndroid Build Coastguard Worker ret void 70*9880d681SAndroid Build Coastguard Worker} 71*9880d681SAndroid Build Coastguard Worker 72*9880d681SAndroid Build Coastguard Worker; 3 bytes, i64 version. 73*9880d681SAndroid Build Coastguard Workerdefine void @f8(i8 *%dest) { 74*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f8: 75*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 0(%r2), -1 76*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 2(%r2), 255 77*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 78*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 3, i32 1, i1 false) 79*9880d681SAndroid Build Coastguard Worker ret void 80*9880d681SAndroid Build Coastguard Worker} 81*9880d681SAndroid Build Coastguard Worker 82*9880d681SAndroid Build Coastguard Worker; 4 bytes, i32 version. 83*9880d681SAndroid Build Coastguard Workerdefine void @f9(i8 *%dest) { 84*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f9: 85*9880d681SAndroid Build Coastguard Worker; CHECK: mvhi 0(%r2), -1 86*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 87*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 4, i32 1, i1 false) 88*9880d681SAndroid Build Coastguard Worker ret void 89*9880d681SAndroid Build Coastguard Worker} 90*9880d681SAndroid Build Coastguard Worker 91*9880d681SAndroid Build Coastguard Worker; 4 bytes, i64 version. 92*9880d681SAndroid Build Coastguard Workerdefine void @f10(i8 *%dest) { 93*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f10: 94*9880d681SAndroid Build Coastguard Worker; CHECK: mvhi 0(%r2), -1 95*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 96*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 4, i32 1, i1 false) 97*9880d681SAndroid Build Coastguard Worker ret void 98*9880d681SAndroid Build Coastguard Worker} 99*9880d681SAndroid Build Coastguard Worker 100*9880d681SAndroid Build Coastguard Worker; 5 bytes, i32 version. 101*9880d681SAndroid Build Coastguard Workerdefine void @f11(i8 *%dest) { 102*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f11: 103*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 0(%r2), -1 104*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 4(%r2), 255 105*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 106*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 5, i32 1, i1 false) 107*9880d681SAndroid Build Coastguard Worker ret void 108*9880d681SAndroid Build Coastguard Worker} 109*9880d681SAndroid Build Coastguard Worker 110*9880d681SAndroid Build Coastguard Worker; 5 bytes, i64 version. 111*9880d681SAndroid Build Coastguard Workerdefine void @f12(i8 *%dest) { 112*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f12: 113*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 0(%r2), -1 114*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 4(%r2), 255 115*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 116*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 5, i32 1, i1 false) 117*9880d681SAndroid Build Coastguard Worker ret void 118*9880d681SAndroid Build Coastguard Worker} 119*9880d681SAndroid Build Coastguard Worker 120*9880d681SAndroid Build Coastguard Worker; 6 bytes, i32 version. 121*9880d681SAndroid Build Coastguard Workerdefine void @f13(i8 *%dest) { 122*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f13: 123*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 0(%r2), -1 124*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 4(%r2), -1 125*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 126*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 6, i32 1, i1 false) 127*9880d681SAndroid Build Coastguard Worker ret void 128*9880d681SAndroid Build Coastguard Worker} 129*9880d681SAndroid Build Coastguard Worker 130*9880d681SAndroid Build Coastguard Worker; 6 bytes, i64 version. 131*9880d681SAndroid Build Coastguard Workerdefine void @f14(i8 *%dest) { 132*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f14: 133*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 0(%r2), -1 134*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 4(%r2), -1 135*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 136*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 6, i32 1, i1 false) 137*9880d681SAndroid Build Coastguard Worker ret void 138*9880d681SAndroid Build Coastguard Worker} 139*9880d681SAndroid Build Coastguard Worker 140*9880d681SAndroid Build Coastguard Worker; 7 bytes, i32 version. 141*9880d681SAndroid Build Coastguard Workerdefine void @f15(i8 *%dest) { 142*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f15: 143*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 144*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(6,%r2), 0(%r2) 145*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 146*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 7, i32 1, i1 false) 147*9880d681SAndroid Build Coastguard Worker ret void 148*9880d681SAndroid Build Coastguard Worker} 149*9880d681SAndroid Build Coastguard Worker 150*9880d681SAndroid Build Coastguard Worker; 7 bytes, i64 version. 151*9880d681SAndroid Build Coastguard Workerdefine void @f16(i8 *%dest) { 152*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f16: 153*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 154*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(6,%r2), 0(%r2) 155*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 156*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 7, i32 1, i1 false) 157*9880d681SAndroid Build Coastguard Worker ret void 158*9880d681SAndroid Build Coastguard Worker} 159*9880d681SAndroid Build Coastguard Worker 160*9880d681SAndroid Build Coastguard Worker; 8 bytes, i32 version. 161*9880d681SAndroid Build Coastguard Workerdefine void @f17(i8 *%dest) { 162*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f17: 163*9880d681SAndroid Build Coastguard Worker; CHECK: mvghi 0(%r2), -1 164*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 165*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 8, i32 1, i1 false) 166*9880d681SAndroid Build Coastguard Worker ret void 167*9880d681SAndroid Build Coastguard Worker} 168*9880d681SAndroid Build Coastguard Worker 169*9880d681SAndroid Build Coastguard Worker; 8 bytes, i64 version. 170*9880d681SAndroid Build Coastguard Workerdefine void @f18(i8 *%dest) { 171*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f18: 172*9880d681SAndroid Build Coastguard Worker; CHECK: mvghi 0(%r2), -1 173*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 174*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 8, i32 1, i1 false) 175*9880d681SAndroid Build Coastguard Worker ret void 176*9880d681SAndroid Build Coastguard Worker} 177*9880d681SAndroid Build Coastguard Worker 178*9880d681SAndroid Build Coastguard Worker; 9 bytes, i32 version. 179*9880d681SAndroid Build Coastguard Workerdefine void @f19(i8 *%dest) { 180*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f19: 181*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 182*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 8(%r2), 255 183*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 184*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 9, i32 1, i1 false) 185*9880d681SAndroid Build Coastguard Worker ret void 186*9880d681SAndroid Build Coastguard Worker} 187*9880d681SAndroid Build Coastguard Worker 188*9880d681SAndroid Build Coastguard Worker; 9 bytes, i64 version. 189*9880d681SAndroid Build Coastguard Workerdefine void @f20(i8 *%dest) { 190*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f20: 191*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 192*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvi 8(%r2), 255 193*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 194*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 9, i32 1, i1 false) 195*9880d681SAndroid Build Coastguard Worker ret void 196*9880d681SAndroid Build Coastguard Worker} 197*9880d681SAndroid Build Coastguard Worker 198*9880d681SAndroid Build Coastguard Worker; 10 bytes, i32 version. 199*9880d681SAndroid Build Coastguard Workerdefine void @f21(i8 *%dest) { 200*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f21: 201*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 202*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 8(%r2), -1 203*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 204*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 10, i32 1, i1 false) 205*9880d681SAndroid Build Coastguard Worker ret void 206*9880d681SAndroid Build Coastguard Worker} 207*9880d681SAndroid Build Coastguard Worker 208*9880d681SAndroid Build Coastguard Worker; 10 bytes, i64 version. 209*9880d681SAndroid Build Coastguard Workerdefine void @f22(i8 *%dest) { 210*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f22: 211*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 212*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhhi 8(%r2), -1 213*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 214*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 10, i32 1, i1 false) 215*9880d681SAndroid Build Coastguard Worker ret void 216*9880d681SAndroid Build Coastguard Worker} 217*9880d681SAndroid Build Coastguard Worker 218*9880d681SAndroid Build Coastguard Worker; 11 bytes, i32 version. 219*9880d681SAndroid Build Coastguard Workerdefine void @f23(i8 *%dest) { 220*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f23: 221*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 222*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(10,%r2), 0(%r2) 223*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 224*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 11, i32 1, i1 false) 225*9880d681SAndroid Build Coastguard Worker ret void 226*9880d681SAndroid Build Coastguard Worker} 227*9880d681SAndroid Build Coastguard Worker 228*9880d681SAndroid Build Coastguard Worker; 11 bytes, i64 version. 229*9880d681SAndroid Build Coastguard Workerdefine void @f24(i8 *%dest) { 230*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f24: 231*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 232*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(10,%r2), 0(%r2) 233*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 234*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 11, i32 1, i1 false) 235*9880d681SAndroid Build Coastguard Worker ret void 236*9880d681SAndroid Build Coastguard Worker} 237*9880d681SAndroid Build Coastguard Worker 238*9880d681SAndroid Build Coastguard Worker; 12 bytes, i32 version. 239*9880d681SAndroid Build Coastguard Workerdefine void @f25(i8 *%dest) { 240*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f25: 241*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 242*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 8(%r2), -1 243*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 244*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 12, i32 1, i1 false) 245*9880d681SAndroid Build Coastguard Worker ret void 246*9880d681SAndroid Build Coastguard Worker} 247*9880d681SAndroid Build Coastguard Worker 248*9880d681SAndroid Build Coastguard Worker; 12 bytes, i64 version. 249*9880d681SAndroid Build Coastguard Workerdefine void @f26(i8 *%dest) { 250*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f26: 251*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 252*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvhi 8(%r2), -1 253*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 254*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 12, i32 1, i1 false) 255*9880d681SAndroid Build Coastguard Worker ret void 256*9880d681SAndroid Build Coastguard Worker} 257*9880d681SAndroid Build Coastguard Worker 258*9880d681SAndroid Build Coastguard Worker; 13 bytes, i32 version. 259*9880d681SAndroid Build Coastguard Workerdefine void @f27(i8 *%dest) { 260*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f27: 261*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 262*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(12,%r2), 0(%r2) 263*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 264*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 13, i32 1, i1 false) 265*9880d681SAndroid Build Coastguard Worker ret void 266*9880d681SAndroid Build Coastguard Worker} 267*9880d681SAndroid Build Coastguard Worker 268*9880d681SAndroid Build Coastguard Worker; 13 bytes, i64 version. 269*9880d681SAndroid Build Coastguard Workerdefine void @f28(i8 *%dest) { 270*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f28: 271*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 272*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(12,%r2), 0(%r2) 273*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 274*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 13, i32 1, i1 false) 275*9880d681SAndroid Build Coastguard Worker ret void 276*9880d681SAndroid Build Coastguard Worker} 277*9880d681SAndroid Build Coastguard Worker 278*9880d681SAndroid Build Coastguard Worker; 14 bytes, i32 version. 279*9880d681SAndroid Build Coastguard Workerdefine void @f29(i8 *%dest) { 280*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f29: 281*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 282*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(13,%r2), 0(%r2) 283*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 284*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 14, i32 1, i1 false) 285*9880d681SAndroid Build Coastguard Worker ret void 286*9880d681SAndroid Build Coastguard Worker} 287*9880d681SAndroid Build Coastguard Worker 288*9880d681SAndroid Build Coastguard Worker; 14 bytes, i64 version. 289*9880d681SAndroid Build Coastguard Workerdefine void @f30(i8 *%dest) { 290*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f30: 291*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 292*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(13,%r2), 0(%r2) 293*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 294*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 14, i32 1, i1 false) 295*9880d681SAndroid Build Coastguard Worker ret void 296*9880d681SAndroid Build Coastguard Worker} 297*9880d681SAndroid Build Coastguard Worker 298*9880d681SAndroid Build Coastguard Worker; 15 bytes, i32 version. 299*9880d681SAndroid Build Coastguard Workerdefine void @f31(i8 *%dest) { 300*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f31: 301*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 302*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(14,%r2), 0(%r2) 303*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 304*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 15, i32 1, i1 false) 305*9880d681SAndroid Build Coastguard Worker ret void 306*9880d681SAndroid Build Coastguard Worker} 307*9880d681SAndroid Build Coastguard Worker 308*9880d681SAndroid Build Coastguard Worker; 15 bytes, i64 version. 309*9880d681SAndroid Build Coastguard Workerdefine void @f32(i8 *%dest) { 310*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f32: 311*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 312*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(14,%r2), 0(%r2) 313*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 314*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 15, i32 1, i1 false) 315*9880d681SAndroid Build Coastguard Worker ret void 316*9880d681SAndroid Build Coastguard Worker} 317*9880d681SAndroid Build Coastguard Worker 318*9880d681SAndroid Build Coastguard Worker; 16 bytes, i32 version. 319*9880d681SAndroid Build Coastguard Workerdefine void @f33(i8 *%dest) { 320*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f33: 321*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 322*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 8(%r2), -1 323*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 324*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 16, i32 1, i1 false) 325*9880d681SAndroid Build Coastguard Worker ret void 326*9880d681SAndroid Build Coastguard Worker} 327*9880d681SAndroid Build Coastguard Worker 328*9880d681SAndroid Build Coastguard Worker; 16 bytes, i64 version. 329*9880d681SAndroid Build Coastguard Workerdefine void @f34(i8 *%dest) { 330*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f34: 331*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 0(%r2), -1 332*9880d681SAndroid Build Coastguard Worker; CHECK-DAG: mvghi 8(%r2), -1 333*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 334*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 16, i32 1, i1 false) 335*9880d681SAndroid Build Coastguard Worker ret void 336*9880d681SAndroid Build Coastguard Worker} 337*9880d681SAndroid Build Coastguard Worker 338*9880d681SAndroid Build Coastguard Worker; 17 bytes, i32 version. 339*9880d681SAndroid Build Coastguard Workerdefine void @f35(i8 *%dest) { 340*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f35: 341*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 342*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(16,%r2), 0(%r2) 343*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 344*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 17, i32 1, i1 false) 345*9880d681SAndroid Build Coastguard Worker ret void 346*9880d681SAndroid Build Coastguard Worker} 347*9880d681SAndroid Build Coastguard Worker 348*9880d681SAndroid Build Coastguard Worker; 17 bytes, i64 version. 349*9880d681SAndroid Build Coastguard Workerdefine void @f36(i8 *%dest) { 350*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f36: 351*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 352*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(16,%r2), 0(%r2) 353*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 354*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 17, i32 1, i1 false) 355*9880d681SAndroid Build Coastguard Worker ret void 356*9880d681SAndroid Build Coastguard Worker} 357*9880d681SAndroid Build Coastguard Worker 358*9880d681SAndroid Build Coastguard Worker; 257 bytes, i32 version. 359*9880d681SAndroid Build Coastguard Workerdefine void @f37(i8 *%dest) { 360*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f37: 361*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 362*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(256,%r2), 0(%r2) 363*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 364*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 257, i32 1, i1 false) 365*9880d681SAndroid Build Coastguard Worker ret void 366*9880d681SAndroid Build Coastguard Worker} 367*9880d681SAndroid Build Coastguard Worker 368*9880d681SAndroid Build Coastguard Worker; 257 bytes, i64 version. 369*9880d681SAndroid Build Coastguard Workerdefine void @f38(i8 *%dest) { 370*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f38: 371*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 372*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(256,%r2), 0(%r2) 373*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 374*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 257, i32 1, i1 false) 375*9880d681SAndroid Build Coastguard Worker ret void 376*9880d681SAndroid Build Coastguard Worker} 377*9880d681SAndroid Build Coastguard Worker 378*9880d681SAndroid Build Coastguard Worker; 258 bytes, i32 version. We need two MVCs. 379*9880d681SAndroid Build Coastguard Workerdefine void @f39(i8 *%dest) { 380*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f39: 381*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 382*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(256,%r2), 0(%r2) 383*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 257(1,%r2), 256(%r2) 384*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 385*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i32(i8 *%dest, i8 -1, i32 258, i32 1, i1 false) 386*9880d681SAndroid Build Coastguard Worker ret void 387*9880d681SAndroid Build Coastguard Worker} 388*9880d681SAndroid Build Coastguard Worker 389*9880d681SAndroid Build Coastguard Worker; 258 bytes, i64 version. 390*9880d681SAndroid Build Coastguard Workerdefine void @f40(i8 *%dest) { 391*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f40: 392*9880d681SAndroid Build Coastguard Worker; CHECK: mvi 0(%r2), 255 393*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 1(256,%r2), 0(%r2) 394*9880d681SAndroid Build Coastguard Worker; CHECK: mvc 257(1,%r2), 256(%r2) 395*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 396*9880d681SAndroid Build Coastguard Worker call void @llvm.memset.p0i8.i64(i8 *%dest, i8 -1, i64 258, i32 1, i1 false) 397*9880d681SAndroid Build Coastguard Worker ret void 398*9880d681SAndroid Build Coastguard Worker} 399