brintos

brintos / llvm-project-archived public Read only

0
0
Text · 24.5 KiB · 33356e9 Raw
620 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -verify-machineinstrs -mcpu=pwr9 < %s | FileCheck %s3target datalayout = "e-m:e-i64:64-n32:64"4target triple = "powerpc64le-unknown-linux-gnu"5 6define zeroext i32 @test1(i64 %0, ptr %1) {7; CHECK-LABEL: test1:8; CHECK:       # %bb.0:9; CHECK-NEXT:    stdu 1, -720(1)10; CHECK-NEXT:    .cfi_def_cfa_offset 72011; CHECK-NEXT:    .cfi_offset r14, -14412; CHECK-NEXT:    .cfi_offset r15, -13613; CHECK-NEXT:    .cfi_offset r16, -12814; CHECK-NEXT:    .cfi_offset r17, -12015; CHECK-NEXT:    .cfi_offset r18, -11216; CHECK-NEXT:    .cfi_offset r19, -10417; CHECK-NEXT:    .cfi_offset r20, -9618; CHECK-NEXT:    .cfi_offset r21, -8819; CHECK-NEXT:    .cfi_offset r22, -8020; CHECK-NEXT:    .cfi_offset r23, -7221; CHECK-NEXT:    .cfi_offset r24, -6422; CHECK-NEXT:    .cfi_offset r25, -5623; CHECK-NEXT:    .cfi_offset r26, -4824; CHECK-NEXT:    .cfi_offset r27, -4025; CHECK-NEXT:    .cfi_offset r28, -3226; CHECK-NEXT:    .cfi_offset r29, -2427; CHECK-NEXT:    .cfi_offset r30, -1628; CHECK-NEXT:    .cfi_offset r31, -829; CHECK-NEXT:    .cfi_offset r2, -15230; CHECK-NEXT:    lis 5, 131; CHECK-NEXT:    std 30, 704(1) # 8-byte Folded Spill32; CHECK-NEXT:    std 29, 696(1) # 8-byte Folded Spill33; CHECK-NEXT:    ori 5, 5, 157334; CHECK-NEXT:    std 28, 688(1) # 8-byte Folded Spill35; CHECK-NEXT:    std 27, 680(1) # 8-byte Folded Spill36; CHECK-NEXT:    std 26, 672(1) # 8-byte Folded Spill37; CHECK-NEXT:    std 14, 576(1) # 8-byte Folded Spill38; CHECK-NEXT:    rldic 5, 5, 34, 1339; CHECK-NEXT:    std 15, 584(1) # 8-byte Folded Spill40; CHECK-NEXT:    std 16, 592(1) # 8-byte Folded Spill41; CHECK-NEXT:    std 17, 600(1) # 8-byte Folded Spill42; CHECK-NEXT:    oris 6, 5, 1303043; CHECK-NEXT:    oris 7, 5, 1306644; CHECK-NEXT:    oris 8, 5, 1305445; CHECK-NEXT:    oris 9, 5, 1304246; CHECK-NEXT:    oris 10, 5, 1307847; CHECK-NEXT:    oris 11, 5, 1311548; CHECK-NEXT:    oris 12, 5, 1310349; CHECK-NEXT:    oris 0, 5, 1309150; CHECK-NEXT:    oris 30, 5, 1312751; CHECK-NEXT:    oris 29, 5, 1316452; CHECK-NEXT:    oris 28, 5, 1315253; CHECK-NEXT:    oris 27, 5, 1313954; CHECK-NEXT:    oris 26, 5, 1317655; CHECK-NEXT:    ori 6, 6, 370456; CHECK-NEXT:    ori 7, 7, 4440857; CHECK-NEXT:    ori 8, 8, 3084058; CHECK-NEXT:    ori 9, 9, 1727259; CHECK-NEXT:    ori 10, 10, 5797660; CHECK-NEXT:    ori 11, 11, 3314461; CHECK-NEXT:    ori 12, 12, 1957662; CHECK-NEXT:    ori 0, 0, 600863; CHECK-NEXT:    ori 30, 30, 4671264; CHECK-NEXT:    ori 29, 29, 2188065; CHECK-NEXT:    ori 28, 28, 831266; CHECK-NEXT:    ori 27, 27, 6028067; CHECK-NEXT:    ori 26, 26, 3544868; CHECK-NEXT:    std 18, 608(1) # 8-byte Folded Spill69; CHECK-NEXT:    add 6, 4, 670; CHECK-NEXT:    std 19, 616(1) # 8-byte Folded Spill71; CHECK-NEXT:    std 20, 624(1) # 8-byte Folded Spill72; CHECK-NEXT:    std 21, 632(1) # 8-byte Folded Spill73; CHECK-NEXT:    std 22, 640(1) # 8-byte Folded Spill74; CHECK-NEXT:    std 23, 648(1) # 8-byte Folded Spill75; CHECK-NEXT:    std 24, 656(1) # 8-byte Folded Spill76; CHECK-NEXT:    std 25, 664(1) # 8-byte Folded Spill77; CHECK-NEXT:    std 31, 712(1) # 8-byte Folded Spill78; CHECK-NEXT:    std 2, 568(1) # 8-byte Folded Spill79; CHECK-NEXT:    std 6, 384(1) # 8-byte Folded Spill80; CHECK-NEXT:    add 6, 4, 781; CHECK-NEXT:    lis 7, 35482; CHECK-NEXT:    std 6, 376(1) # 8-byte Folded Spill83; CHECK-NEXT:    add 6, 4, 884; CHECK-NEXT:    lis 8, 40285; CHECK-NEXT:    std 6, 368(1) # 8-byte Folded Spill86; CHECK-NEXT:    add 6, 4, 987; CHECK-NEXT:    lis 9, 45188; CHECK-NEXT:    std 6, 360(1) # 8-byte Folded Spill89; CHECK-NEXT:    add 6, 4, 1090; CHECK-NEXT:    lis 10, 50091; CHECK-NEXT:    std 6, 352(1) # 8-byte Folded Spill92; CHECK-NEXT:    add 6, 4, 1193; CHECK-NEXT:    lis 11, 54994; CHECK-NEXT:    std 6, 344(1) # 8-byte Folded Spill95; CHECK-NEXT:    add 6, 4, 1296; CHECK-NEXT:    std 6, 336(1) # 8-byte Folded Spill97; CHECK-NEXT:    add 6, 4, 098; CHECK-NEXT:    std 6, 328(1) # 8-byte Folded Spill99; CHECK-NEXT:    add 6, 4, 30100; CHECK-NEXT:    std 6, 320(1) # 8-byte Folded Spill101; CHECK-NEXT:    add 6, 4, 29102; CHECK-NEXT:    std 6, 312(1) # 8-byte Folded Spill103; CHECK-NEXT:    add 6, 4, 28104; CHECK-NEXT:    std 6, 304(1) # 8-byte Folded Spill105; CHECK-NEXT:    add 6, 4, 27106; CHECK-NEXT:    std 6, 296(1) # 8-byte Folded Spill107; CHECK-NEXT:    add 6, 4, 26108; CHECK-NEXT:    std 6, 288(1) # 8-byte Folded Spill109; CHECK-NEXT:    oris 6, 5, 13213110; CHECK-NEXT:    ori 6, 6, 10616111; CHECK-NEXT:    add 6, 4, 6112; CHECK-NEXT:    std 6, 280(1) # 8-byte Folded Spill113; CHECK-NEXT:    oris 6, 5, 13200114; CHECK-NEXT:    oris 5, 5, 13188115; CHECK-NEXT:    ori 5, 5, 49016116; CHECK-NEXT:    ori 6, 6, 62584117; CHECK-NEXT:    add 5, 4, 5118; CHECK-NEXT:    add 6, 4, 6119; CHECK-NEXT:    std 5, 264(1) # 8-byte Folded Spill120; CHECK-NEXT:    lis 5, 4121; CHECK-NEXT:    std 6, 272(1) # 8-byte Folded Spill122; CHECK-NEXT:    lis 6, 305123; CHECK-NEXT:    ori 5, 5, 6291124; CHECK-NEXT:    rldic 5, 5, 32, 13125; CHECK-NEXT:    oris 5, 5, 29347126; CHECK-NEXT:    ori 5, 5, 20088127; CHECK-NEXT:    add 4, 4, 5128; CHECK-NEXT:    lis 5, 268129; CHECK-NEXT:    std 4, 256(1) # 8-byte Folded Spill130; CHECK-NEXT:    lis 4, 585131; CHECK-NEXT:    ori 4, 4, 61440132; CHECK-NEXT:    std 4, 560(1) # 8-byte Folded Spill133; CHECK-NEXT:    lis 4, 48134; CHECK-NEXT:    ori 4, 4, 54272135; CHECK-NEXT:    std 4, 552(1) # 8-byte Folded Spill136; CHECK-NEXT:    lis 4, 97137; CHECK-NEXT:    ori 4, 4, 43008138; CHECK-NEXT:    std 4, 544(1) # 8-byte Folded Spill139; CHECK-NEXT:    lis 4, 146140; CHECK-NEXT:    ori 4, 4, 31744141; CHECK-NEXT:    std 4, 536(1) # 8-byte Folded Spill142; CHECK-NEXT:    lis 4, 195143; CHECK-NEXT:    ori 4, 4, 20480144; CHECK-NEXT:    std 4, 528(1) # 8-byte Folded Spill145; CHECK-NEXT:    lis 4, 244146; CHECK-NEXT:    ori 4, 4, 9216147; CHECK-NEXT:    std 4, 520(1) # 8-byte Folded Spill148; CHECK-NEXT:    lis 4, 292149; CHECK-NEXT:    ori 4, 4, 63488150; CHECK-NEXT:    std 4, 512(1) # 8-byte Folded Spill151; CHECK-NEXT:    lis 4, 341152; CHECK-NEXT:    ori 4, 4, 52224153; CHECK-NEXT:    std 4, 504(1) # 8-byte Folded Spill154; CHECK-NEXT:    lis 4, 390155; CHECK-NEXT:    ori 4, 4, 40960156; CHECK-NEXT:    std 4, 496(1) # 8-byte Folded Spill157; CHECK-NEXT:    lis 4, 439158; CHECK-NEXT:    ori 4, 4, 29696159; CHECK-NEXT:    std 4, 488(1) # 8-byte Folded Spill160; CHECK-NEXT:    lis 4, 488161; CHECK-NEXT:    ori 4, 4, 18432162; CHECK-NEXT:    std 4, 480(1) # 8-byte Folded Spill163; CHECK-NEXT:    lis 4, 537164; CHECK-NEXT:    ori 4, 4, 7168165; CHECK-NEXT:    std 4, 472(1) # 8-byte Folded Spill166; CHECK-NEXT:    lis 4, 36167; CHECK-NEXT:    ori 4, 4, 40704168; CHECK-NEXT:    std 4, 464(1) # 8-byte Folded Spill169; CHECK-NEXT:    lis 4, 85170; CHECK-NEXT:    ori 4, 4, 29440171; CHECK-NEXT:    std 4, 456(1) # 8-byte Folded Spill172; CHECK-NEXT:    lis 4, 134173; CHECK-NEXT:    ori 4, 4, 18176174; CHECK-NEXT:    std 4, 448(1) # 8-byte Folded Spill175; CHECK-NEXT:    lis 4, 183176; CHECK-NEXT:    ori 4, 4, 6912177; CHECK-NEXT:    std 4, 440(1) # 8-byte Folded Spill178; CHECK-NEXT:    lis 4, 231179; CHECK-NEXT:    ori 4, 4, 61184180; CHECK-NEXT:    std 4, 432(1) # 8-byte Folded Spill181; CHECK-NEXT:    lis 4, 280182; CHECK-NEXT:    ori 4, 4, 49920183; CHECK-NEXT:    std 4, 424(1) # 8-byte Folded Spill184; CHECK-NEXT:    lis 4, 329185; CHECK-NEXT:    ori 4, 4, 38656186; CHECK-NEXT:    std 4, 416(1) # 8-byte Folded Spill187; CHECK-NEXT:    lis 4, 378188; CHECK-NEXT:    ori 4, 4, 27392189; CHECK-NEXT:    std 4, 408(1) # 8-byte Folded Spill190; CHECK-NEXT:    lis 4, 427191; CHECK-NEXT:    ori 4, 4, 16128192; CHECK-NEXT:    std 4, 400(1) # 8-byte Folded Spill193; CHECK-NEXT:    lis 4, 476194; CHECK-NEXT:    ori 4, 4, 4864195; CHECK-NEXT:    std 4, 248(1) # 8-byte Folded Spill196; CHECK-NEXT:    lis 4, 524197; CHECK-NEXT:    ori 4, 4, 59136198; CHECK-NEXT:    std 4, 240(1) # 8-byte Folded Spill199; CHECK-NEXT:    lis 4, 573200; CHECK-NEXT:    ori 4, 4, 47872201; CHECK-NEXT:    std 4, 232(1) # 8-byte Folded Spill202; CHECK-NEXT:    lis 4, 24203; CHECK-NEXT:    ori 4, 4, 27136204; CHECK-NEXT:    std 4, 224(1) # 8-byte Folded Spill205; CHECK-NEXT:    lis 4, 73206; CHECK-NEXT:    ori 4, 4, 15872207; CHECK-NEXT:    std 4, 216(1) # 8-byte Folded Spill208; CHECK-NEXT:    lis 4, 122209; CHECK-NEXT:    ori 4, 4, 4608210; CHECK-NEXT:    std 4, 208(1) # 8-byte Folded Spill211; CHECK-NEXT:    lis 4, 170212; CHECK-NEXT:    ori 4, 4, 58880213; CHECK-NEXT:    std 4, 200(1) # 8-byte Folded Spill214; CHECK-NEXT:    lis 4, 219215; CHECK-NEXT:    ori 4, 4, 47616216; CHECK-NEXT:    std 4, 192(1) # 8-byte Folded Spill217; CHECK-NEXT:    ori 4, 5, 36352218; CHECK-NEXT:    lis 5, 317219; CHECK-NEXT:    ld 30, 192(1) # 8-byte Folded Reload220; CHECK-NEXT:    std 4, 184(1) # 8-byte Folded Spill221; CHECK-NEXT:    ori 4, 5, 25088222; CHECK-NEXT:    lis 5, 366223; CHECK-NEXT:    ld 29, 184(1) # 8-byte Folded Reload224; CHECK-NEXT:    std 4, 176(1) # 8-byte Folded Spill225; CHECK-NEXT:    ori 4, 5, 13824226; CHECK-NEXT:    lis 5, 415227; CHECK-NEXT:    ld 28, 176(1) # 8-byte Folded Reload228; CHECK-NEXT:    std 4, 168(1) # 8-byte Folded Spill229; CHECK-NEXT:    ori 4, 5, 2560230; CHECK-NEXT:    lis 5, 463231; CHECK-NEXT:    ld 27, 168(1) # 8-byte Folded Reload232; CHECK-NEXT:    std 4, 160(1) # 8-byte Folded Spill233; CHECK-NEXT:    ori 4, 5, 56832234; CHECK-NEXT:    lis 5, 512235; CHECK-NEXT:    ld 26, 160(1) # 8-byte Folded Reload236; CHECK-NEXT:    std 4, 152(1) # 8-byte Folded Spill237; CHECK-NEXT:    ori 4, 5, 45568238; CHECK-NEXT:    lis 5, 561239; CHECK-NEXT:    ld 25, 152(1) # 8-byte Folded Reload240; CHECK-NEXT:    std 4, 144(1) # 8-byte Folded Spill241; CHECK-NEXT:    ori 4, 5, 34304242; CHECK-NEXT:    lis 5, 12243; CHECK-NEXT:    ld 24, 144(1) # 8-byte Folded Reload244; CHECK-NEXT:    std 4, 136(1) # 8-byte Folded Spill245; CHECK-NEXT:    ori 4, 5, 13568246; CHECK-NEXT:    lis 5, 61247; CHECK-NEXT:    ld 23, 136(1) # 8-byte Folded Reload248; CHECK-NEXT:    std 4, 128(1) # 8-byte Folded Spill249; CHECK-NEXT:    ori 4, 5, 2304250; CHECK-NEXT:    lis 5, 109251; CHECK-NEXT:    std 4, 120(1) # 8-byte Folded Spill252; CHECK-NEXT:    ori 4, 5, 56576253; CHECK-NEXT:    lis 5, 158254; CHECK-NEXT:    ld 0, 120(1) # 8-byte Folded Reload255; CHECK-NEXT:    std 4, 112(1) # 8-byte Folded Spill256; CHECK-NEXT:    ori 4, 5, 45312257; CHECK-NEXT:    lis 5, 207258; CHECK-NEXT:    ld 22, 112(1) # 8-byte Folded Reload259; CHECK-NEXT:    std 4, 104(1) # 8-byte Folded Spill260; CHECK-NEXT:    ori 4, 5, 34048261; CHECK-NEXT:    lis 5, 256262; CHECK-NEXT:    ld 21, 104(1) # 8-byte Folded Reload263; CHECK-NEXT:    std 4, 96(1) # 8-byte Folded Spill264; CHECK-NEXT:    ori 4, 5, 22784265; CHECK-NEXT:    ld 5, 248(1) # 8-byte Folded Reload266; CHECK-NEXT:    ld 20, 96(1) # 8-byte Folded Reload267; CHECK-NEXT:    std 4, 88(1) # 8-byte Folded Spill268; CHECK-NEXT:    ori 4, 6, 11520269; CHECK-NEXT:    ld 6, 240(1) # 8-byte Folded Reload270; CHECK-NEXT:    ld 19, 88(1) # 8-byte Folded Reload271; CHECK-NEXT:    std 4, 80(1) # 8-byte Folded Spill272; CHECK-NEXT:    ori 4, 7, 256273; CHECK-NEXT:    ld 7, 232(1) # 8-byte Folded Reload274; CHECK-NEXT:    ld 18, 80(1) # 8-byte Folded Reload275; CHECK-NEXT:    std 4, 72(1) # 8-byte Folded Spill276; CHECK-NEXT:    ori 4, 8, 54528277; CHECK-NEXT:    ld 8, 224(1) # 8-byte Folded Reload278; CHECK-NEXT:    ld 17, 72(1) # 8-byte Folded Reload279; CHECK-NEXT:    std 4, 64(1) # 8-byte Folded Spill280; CHECK-NEXT:    ori 4, 9, 43264281; CHECK-NEXT:    ld 9, 216(1) # 8-byte Folded Reload282; CHECK-NEXT:    ld 16, 64(1) # 8-byte Folded Reload283; CHECK-NEXT:    std 4, 56(1) # 8-byte Folded Spill284; CHECK-NEXT:    ori 4, 10, 32000285; CHECK-NEXT:    ld 10, 208(1) # 8-byte Folded Reload286; CHECK-NEXT:    ld 15, 56(1) # 8-byte Folded Reload287; CHECK-NEXT:    std 4, 48(1) # 8-byte Folded Spill288; CHECK-NEXT:    ori 4, 11, 20736289; CHECK-NEXT:    ld 11, 200(1) # 8-byte Folded Reload290; CHECK-NEXT:    ld 14, 48(1) # 8-byte Folded Reload291; CHECK-NEXT:    std 4, 40(1) # 8-byte Folded Spill292; CHECK-NEXT:    li 4, 0293; CHECK-NEXT:    ld 31, 40(1) # 8-byte Folded Reload294; CHECK-NEXT:    .p2align 4295; CHECK-NEXT:  .LBB0_1: # =>This Loop Header: Depth=1296; CHECK-NEXT:    # Child Loop BB0_2 Depth 2297; CHECK-NEXT:    stw 4, 396(1) # 4-byte Folded Spill298; CHECK-NEXT:    li 4, 83299; CHECK-NEXT:    mtctr 4300; CHECK-NEXT:    ld 12, 256(1) # 8-byte Folded Reload301; CHECK-NEXT:    ld 4, 128(1) # 8-byte Folded Reload302; CHECK-NEXT:    .p2align 5303; CHECK-NEXT:  .LBB0_2: # Parent Loop BB0_1 Depth=1304; CHECK-NEXT:    # => This Inner Loop Header: Depth=2305; CHECK-NEXT:    ld 2, 560(1) # 8-byte Folded Reload306; CHECK-NEXT:    stdux 3, 12, 2307; CHECK-NEXT:    ld 2, 552(1) # 8-byte Folded Reload308; CHECK-NEXT:    stdx 3, 12, 5309; CHECK-NEXT:    stdx 3, 12, 6310; CHECK-NEXT:    stdx 3, 12, 7311; CHECK-NEXT:    stdx 3, 12, 8312; CHECK-NEXT:    stdx 3, 12, 9313; CHECK-NEXT:    stdx 3, 12, 10314; CHECK-NEXT:    stdx 3, 12, 11315; CHECK-NEXT:    stdx 3, 12, 30316; CHECK-NEXT:    stdx 3, 12, 29317; CHECK-NEXT:    stdx 3, 12, 28318; CHECK-NEXT:    stdx 3, 12, 27319; CHECK-NEXT:    stdx 3, 12, 26320; CHECK-NEXT:    stdx 3, 12, 25321; CHECK-NEXT:    stdx 3, 12, 24322; CHECK-NEXT:    stdx 3, 12, 23323; CHECK-NEXT:    stdx 3, 12, 4324; CHECK-NEXT:    stdx 3, 12, 0325; CHECK-NEXT:    stdx 3, 12, 22326; CHECK-NEXT:    stdx 3, 12, 21327; CHECK-NEXT:    stdx 3, 12, 20328; CHECK-NEXT:    stdx 3, 12, 19329; CHECK-NEXT:    stdx 3, 12, 18330; CHECK-NEXT:    stdx 3, 12, 17331; CHECK-NEXT:    stdx 3, 12, 16332; CHECK-NEXT:    stdx 3, 12, 15333; CHECK-NEXT:    stdx 3, 12, 14334; CHECK-NEXT:    stdx 3, 12, 31335; CHECK-NEXT:    stdx 3, 12, 2336; CHECK-NEXT:    ld 2, 544(1) # 8-byte Folded Reload337; CHECK-NEXT:    stdx 3, 12, 2338; CHECK-NEXT:    ld 2, 536(1) # 8-byte Folded Reload339; CHECK-NEXT:    stdx 3, 12, 2340; CHECK-NEXT:    ld 2, 528(1) # 8-byte Folded Reload341; CHECK-NEXT:    stdx 3, 12, 2342; CHECK-NEXT:    ld 2, 520(1) # 8-byte Folded Reload343; CHECK-NEXT:    stdx 3, 12, 2344; CHECK-NEXT:    ld 2, 512(1) # 8-byte Folded Reload345; CHECK-NEXT:    stdx 3, 12, 2346; CHECK-NEXT:    ld 2, 504(1) # 8-byte Folded Reload347; CHECK-NEXT:    stdx 3, 12, 2348; CHECK-NEXT:    ld 2, 496(1) # 8-byte Folded Reload349; CHECK-NEXT:    stdx 3, 12, 2350; CHECK-NEXT:    ld 2, 488(1) # 8-byte Folded Reload351; CHECK-NEXT:    stdx 3, 12, 2352; CHECK-NEXT:    ld 2, 480(1) # 8-byte Folded Reload353; CHECK-NEXT:    stdx 3, 12, 2354; CHECK-NEXT:    ld 2, 472(1) # 8-byte Folded Reload355; CHECK-NEXT:    stdx 3, 12, 2356; CHECK-NEXT:    ld 2, 464(1) # 8-byte Folded Reload357; CHECK-NEXT:    stdx 3, 12, 2358; CHECK-NEXT:    ld 2, 456(1) # 8-byte Folded Reload359; CHECK-NEXT:    stdx 3, 12, 2360; CHECK-NEXT:    ld 2, 448(1) # 8-byte Folded Reload361; CHECK-NEXT:    stdx 3, 12, 2362; CHECK-NEXT:    ld 2, 440(1) # 8-byte Folded Reload363; CHECK-NEXT:    stdx 3, 12, 2364; CHECK-NEXT:    ld 2, 432(1) # 8-byte Folded Reload365; CHECK-NEXT:    stdx 3, 12, 2366; CHECK-NEXT:    ld 2, 424(1) # 8-byte Folded Reload367; CHECK-NEXT:    stdx 3, 12, 2368; CHECK-NEXT:    ld 2, 416(1) # 8-byte Folded Reload369; CHECK-NEXT:    stdx 3, 12, 2370; CHECK-NEXT:    ld 2, 408(1) # 8-byte Folded Reload371; CHECK-NEXT:    stdx 3, 12, 2372; CHECK-NEXT:    ld 2, 400(1) # 8-byte Folded Reload373; CHECK-NEXT:    stdx 3, 12, 2374; CHECK-NEXT:    bdnz .LBB0_2375; CHECK-NEXT:  # %bb.3:376; CHECK-NEXT:    ld 12, 384(1) # 8-byte Folded Reload377; CHECK-NEXT:    lwz 4, 396(1) # 4-byte Folded Reload378; CHECK-NEXT:    std 3, 0(12)379; CHECK-NEXT:    ld 12, 376(1) # 8-byte Folded Reload380; CHECK-NEXT:    addi 4, 4, 1381; CHECK-NEXT:    std 3, 0(12)382; CHECK-NEXT:    ld 12, 368(1) # 8-byte Folded Reload383; CHECK-NEXT:    std 3, 0(12)384; CHECK-NEXT:    ld 12, 360(1) # 8-byte Folded Reload385; CHECK-NEXT:    std 3, 0(12)386; CHECK-NEXT:    ld 12, 352(1) # 8-byte Folded Reload387; CHECK-NEXT:    std 3, 0(12)388; CHECK-NEXT:    ld 12, 344(1) # 8-byte Folded Reload389; CHECK-NEXT:    std 3, 0(12)390; CHECK-NEXT:    ld 12, 336(1) # 8-byte Folded Reload391; CHECK-NEXT:    std 3, 0(12)392; CHECK-NEXT:    ld 12, 328(1) # 8-byte Folded Reload393; CHECK-NEXT:    std 3, 0(12)394; CHECK-NEXT:    ld 12, 320(1) # 8-byte Folded Reload395; CHECK-NEXT:    std 3, 0(12)396; CHECK-NEXT:    ld 12, 312(1) # 8-byte Folded Reload397; CHECK-NEXT:    std 3, 0(12)398; CHECK-NEXT:    ld 12, 304(1) # 8-byte Folded Reload399; CHECK-NEXT:    std 3, 0(12)400; CHECK-NEXT:    ld 12, 296(1) # 8-byte Folded Reload401; CHECK-NEXT:    std 3, 0(12)402; CHECK-NEXT:    ld 12, 288(1) # 8-byte Folded Reload403; CHECK-NEXT:    std 3, 0(12)404; CHECK-NEXT:    ld 12, 280(1) # 8-byte Folded Reload405; CHECK-NEXT:    std 3, 0(12)406; CHECK-NEXT:    ld 12, 272(1) # 8-byte Folded Reload407; CHECK-NEXT:    std 3, 0(12)408; CHECK-NEXT:    xoris 12, 4, 6409; CHECK-NEXT:    cmplwi 12, 6784410; CHECK-NEXT:    ld 12, 264(1) # 8-byte Folded Reload411; CHECK-NEXT:    std 3, 0(12)412; CHECK-NEXT:    bne 0, .LBB0_1413; CHECK-NEXT:  # %bb.4:414; CHECK-NEXT:    ld 2, 568(1) # 8-byte Folded Reload415; CHECK-NEXT:    ld 31, 712(1) # 8-byte Folded Reload416; CHECK-NEXT:    ld 30, 704(1) # 8-byte Folded Reload417; CHECK-NEXT:    ld 29, 696(1) # 8-byte Folded Reload418; CHECK-NEXT:    li 3, 0419; CHECK-NEXT:    ld 28, 688(1) # 8-byte Folded Reload420; CHECK-NEXT:    ld 27, 680(1) # 8-byte Folded Reload421; CHECK-NEXT:    ld 26, 672(1) # 8-byte Folded Reload422; CHECK-NEXT:    ld 25, 664(1) # 8-byte Folded Reload423; CHECK-NEXT:    ld 24, 656(1) # 8-byte Folded Reload424; CHECK-NEXT:    ld 23, 648(1) # 8-byte Folded Reload425; CHECK-NEXT:    ld 22, 640(1) # 8-byte Folded Reload426; CHECK-NEXT:    ld 21, 632(1) # 8-byte Folded Reload427; CHECK-NEXT:    ld 20, 624(1) # 8-byte Folded Reload428; CHECK-NEXT:    ld 19, 616(1) # 8-byte Folded Reload429; CHECK-NEXT:    ld 18, 608(1) # 8-byte Folded Reload430; CHECK-NEXT:    ld 17, 600(1) # 8-byte Folded Reload431; CHECK-NEXT:    ld 16, 592(1) # 8-byte Folded Reload432; CHECK-NEXT:    ld 15, 584(1) # 8-byte Folded Reload433; CHECK-NEXT:    ld 14, 576(1) # 8-byte Folded Reload434; CHECK-NEXT:    addi 1, 1, 720435; CHECK-NEXT:    blr436  %3 = getelementptr inbounds i64, ptr %1, i64 144115188075855437  %4 = getelementptr i64, ptr %1, i64 144115586875855438  %5 = getelementptr i64, ptr %1, i64 144115587175855439  %6 = getelementptr i64, ptr %1, i64 144115587075855440  %7 = getelementptr i64, ptr %1, i64 144115586975855441  %8 = getelementptr i64, ptr %1, i64 144115587275855442  %9 = getelementptr i64, ptr %1, i64 144115587575855443  %10 = getelementptr i64, ptr %1, i64 144115587475855444  %11 = getelementptr i64, ptr %1, i64 144115587375855445  %12 = getelementptr i64, ptr %1, i64 144115587675855446  %13 = getelementptr i64, ptr %1, i64 144115587975855447  %14 = getelementptr i64, ptr %1, i64 144115587875855448  %15 = getelementptr i64, ptr %1, i64 144115587775855449  %16 = getelementptr i64, ptr %1, i64 144115588075855450  %17 = getelementptr i64, ptr %1, i64 144115588375855451  %18 = getelementptr i64, ptr %1, i64 144115588275855452  %19 = getelementptr i64, ptr %1, i64 144115588175855453  br label %20454 45520:                                               ; preds = %2, %109456  %21 = phi i32 [ 0, %2 ], [ %110, %109 ]457  br label %22458 45922:                                               ; preds = %22, %20460  %23 = phi i64 [ 0, %20 ], [ %107, %22 ]461  %24 = mul i64 %23, 400000462  %25 = getelementptr i64, ptr %3, i64 %24463  %26 = or disjoint i64 %23, 1464  %27 = mul i64 %26, 400000465  %28 = getelementptr i64, ptr %3, i64 %27466  %29 = or disjoint i64 %23, 2467  %30 = mul i64 %29, 400000468  %31 = getelementptr i64, ptr %3, i64 %30469  %32 = or disjoint i64 %23, 3470  %33 = mul i64 %32, 400000471  %34 = getelementptr i64, ptr %3, i64 %33472  %35 = mul i64 %23, 400000473  %36 = add i64 %35, 1600000474  %37 = getelementptr i64, ptr %3, i64 %36475  %38 = mul i64 %23, 400000476  %39 = add i64 %38, 2000000477  %40 = getelementptr i64, ptr %3, i64 %39478  %41 = mul i64 %23, 400000479  %42 = add i64 %41, 2400000480  %43 = getelementptr i64, ptr %3, i64 %42481  %44 = mul i64 %23, 400000482  %45 = add i64 %44, 2800000483  %46 = getelementptr i64, ptr %3, i64 %45484  %47 = mul i64 %23, 400000485  %48 = add i64 %47, 3200000486  %49 = getelementptr i64, ptr %3, i64 %48487  %50 = mul i64 %23, 400000488  %51 = add i64 %50, 3600000489  %52 = getelementptr i64, ptr %3, i64 %51490  %53 = mul i64 %23, 400000491  %54 = add i64 %53, 4000000492  %55 = getelementptr i64, ptr %3, i64 %54493  %56 = mul i64 %23, 400000494  %57 = add i64 %56, 4400000495  %58 = getelementptr i64, ptr %3, i64 %57496  %59 = getelementptr inbounds i64, ptr %25, i64 400000497  %60 = getelementptr inbounds i64, ptr %28, i64 400000498  %61 = getelementptr inbounds i64, ptr %31, i64 400000499  %62 = getelementptr inbounds i64, ptr %34, i64 400000500  %63 = getelementptr inbounds i64, ptr %37, i64 400000501  %64 = getelementptr inbounds i64, ptr %40, i64 400000502  %65 = getelementptr inbounds i64, ptr %43, i64 400000503  %66 = getelementptr inbounds i64, ptr %46, i64 400000504  %67 = getelementptr inbounds i64, ptr %49, i64 400000505  %68 = getelementptr inbounds i64, ptr %52, i64 400000506  %69 = getelementptr inbounds i64, ptr %55, i64 400000507  %70 = getelementptr inbounds i64, ptr %58, i64 400000508  store i64 %0, ptr %59, align 8509  store i64 %0, ptr %60, align 8510  store i64 %0, ptr %61, align 8511  store i64 %0, ptr %62, align 8512  store i64 %0, ptr %63, align 8513  store i64 %0, ptr %64, align 8514  store i64 %0, ptr %65, align 8515  store i64 %0, ptr %66, align 8516  store i64 %0, ptr %67, align 8517  store i64 %0, ptr %68, align 8518  store i64 %0, ptr %69, align 8519  store i64 %0, ptr %70, align 8520  %71 = getelementptr inbounds i64, ptr %25, i64 700000521  %72 = getelementptr inbounds i64, ptr %28, i64 700000522  %73 = getelementptr inbounds i64, ptr %31, i64 700000523  %74 = getelementptr inbounds i64, ptr %34, i64 700000524  %75 = getelementptr inbounds i64, ptr %37, i64 700000525  %76 = getelementptr inbounds i64, ptr %40, i64 700000526  %77 = getelementptr inbounds i64, ptr %43, i64 700000527  %78 = getelementptr inbounds i64, ptr %46, i64 700000528  %79 = getelementptr inbounds i64, ptr %49, i64 700000529  %80 = getelementptr inbounds i64, ptr %52, i64 700000530  %81 = getelementptr inbounds i64, ptr %55, i64 700000531  %82 = getelementptr inbounds i64, ptr %58, i64 700000532  store i64 %0, ptr %71, align 8533  store i64 %0, ptr %72, align 8534  store i64 %0, ptr %73, align 8535  store i64 %0, ptr %74, align 8536  store i64 %0, ptr %75, align 8537  store i64 %0, ptr %76, align 8538  store i64 %0, ptr %77, align 8539  store i64 %0, ptr %78, align 8540  store i64 %0, ptr %79, align 8541  store i64 %0, ptr %80, align 8542  store i64 %0, ptr %81, align 8543  store i64 %0, ptr %82, align 8544  %83 = getelementptr inbounds i64, ptr %25, i64 600000545  %84 = getelementptr inbounds i64, ptr %28, i64 600000546  %85 = getelementptr inbounds i64, ptr %31, i64 600000547  %86 = getelementptr inbounds i64, ptr %34, i64 600000548  %87 = getelementptr inbounds i64, ptr %37, i64 600000549  %88 = getelementptr inbounds i64, ptr %40, i64 600000550  %89 = getelementptr inbounds i64, ptr %43, i64 600000551  %90 = getelementptr inbounds i64, ptr %46, i64 600000552  %91 = getelementptr inbounds i64, ptr %49, i64 600000553  %92 = getelementptr inbounds i64, ptr %52, i64 600000554  %93 = getelementptr inbounds i64, ptr %55, i64 600000555  %94 = getelementptr inbounds i64, ptr %58, i64 600000556  store i64 %0, ptr %83, align 8557  store i64 %0, ptr %84, align 8558  store i64 %0, ptr %85, align 8559  store i64 %0, ptr %86, align 8560  store i64 %0, ptr %87, align 8561  store i64 %0, ptr %88, align 8562  store i64 %0, ptr %89, align 8563  store i64 %0, ptr %90, align 8564  store i64 %0, ptr %91, align 8565  store i64 %0, ptr %92, align 8566  store i64 %0, ptr %93, align 8567  store i64 %0, ptr %94, align 8568  %95 = getelementptr inbounds i64, ptr %25, i64 500000569  %96 = getelementptr inbounds i64, ptr %28, i64 500000570  %97 = getelementptr inbounds i64, ptr %31, i64 500000571  %98 = getelementptr inbounds i64, ptr %34, i64 500000572  %99 = getelementptr inbounds i64, ptr %37, i64 500000573  %100 = getelementptr inbounds i64, ptr %40, i64 500000574  %101 = getelementptr inbounds i64, ptr %43, i64 500000575  %102 = getelementptr inbounds i64, ptr %46, i64 500000576  %103 = getelementptr inbounds i64, ptr %49, i64 500000577  %104 = getelementptr inbounds i64, ptr %52, i64 500000578  %105 = getelementptr inbounds i64, ptr %55, i64 500000579  %106 = getelementptr inbounds i64, ptr %58, i64 500000580  store i64 %0, ptr %95, align 8581  store i64 %0, ptr %96, align 8582  store i64 %0, ptr %97, align 8583  store i64 %0, ptr %98, align 8584  store i64 %0, ptr %99, align 8585  store i64 %0, ptr %100, align 8586  store i64 %0, ptr %101, align 8587  store i64 %0, ptr %102, align 8588  store i64 %0, ptr %103, align 8589  store i64 %0, ptr %104, align 8590  store i64 %0, ptr %105, align 8591  store i64 %0, ptr %106, align 8592  %107 = add i64 %23, 12593  %108 = icmp eq i64 %107, 996594  br i1 %108, label %109, label %22595 596109:                                              ; preds = %22597  store i64 %0, ptr %4, align 8598  store i64 %0, ptr %5, align 8599  store i64 %0, ptr %6, align 8600  store i64 %0, ptr %7, align 8601  store i64 %0, ptr %8, align 8602  store i64 %0, ptr %9, align 8603  store i64 %0, ptr %10, align 8604  store i64 %0, ptr %11, align 8605  store i64 %0, ptr %12, align 8606  store i64 %0, ptr %13, align 8607  store i64 %0, ptr %14, align 8608  store i64 %0, ptr %15, align 8609  store i64 %0, ptr %16, align 8610  store i64 %0, ptr %17, align 8611  store i64 %0, ptr %18, align 8612  store i64 %0, ptr %19, align 8613  %110 = add nuw nsw i32 %21, 1614  %111 = icmp eq i32 %110, 400000615  br i1 %111, label %112, label %20616 617112:                                              ; preds = %109618  ret i32 0619}620