645 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py2; RUN: opt < %s -mtriple=aarch64-unknown-linux-gnu -mattr=+sve2 -passes="print<cost-model>" -cost-kind=all 2>&1 -disable-output | FileCheck %s3 4target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"5 6define void @sdiv() {7; CHECK-LABEL: 'sdiv'8; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = sdiv <2 x i64> undef, undef9; CHECK-NEXT: Cost Model: Found costs of 4 for: %V4i64 = sdiv <4 x i64> undef, undef10; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = sdiv <8 x i64> undef, undef11; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = sdiv <2 x i32> undef, undef12; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = sdiv <4 x i32> undef, undef13; CHECK-NEXT: Cost Model: Found costs of 4 for: %V6i32 = sdiv <6 x i32> undef, undef14; CHECK-NEXT: Cost Model: Found costs of 4 for: %V8i32 = sdiv <8 x i32> undef, undef15; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = sdiv <16 x i32> undef, undef16; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = sdiv <2 x i16> undef, undef17; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = sdiv <4 x i16> undef, undef18; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = sdiv <8 x i16> undef, undef19; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = sdiv <16 x i16> undef, undef20; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = sdiv <32 x i16> undef, undef21; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = sdiv <2 x i8> undef, undef22; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = sdiv <4 x i8> undef, undef23; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V6i8 = sdiv <6 x i8> undef, undef24; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = sdiv <8 x i8> undef, undef25; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = sdiv <16 x i8> undef, undef26; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = sdiv <32 x i8> undef, undef27; CHECK-NEXT: Cost Model: Found costs of RThru:64 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = sdiv <64 x i8> undef, undef28; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = sdiv <vscale x 2 x i64> undef, undef29; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i64 = sdiv <vscale x 4 x i64> undef, undef30; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = sdiv <vscale x 8 x i64> undef, undef31; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = sdiv <vscale x 2 x i32> undef, undef32; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = sdiv <vscale x 4 x i32> undef, undef33; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i32 = sdiv <vscale x 8 x i32> undef, undef34; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = sdiv <vscale x 16 x i32> undef, undef35; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = sdiv <vscale x 2 x i16> undef, undef36; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = sdiv <vscale x 4 x i16> undef, undef37; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = sdiv <vscale x 8 x i16> undef, undef38; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = sdiv <vscale x 16 x i16> undef, undef39; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = sdiv <vscale x 32 x i16> undef, undef40; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = sdiv <vscale x 2 x i8> undef, undef41; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = sdiv <vscale x 4 x i8> undef, undef42; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = sdiv <vscale x 8 x i8> undef, undef43; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = sdiv <vscale x 16 x i8> undef, undef44; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = sdiv <vscale x 32 x i8> undef, undef45; CHECK-NEXT: Cost Model: Found costs of RThru:64 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = sdiv <vscale x 64 x i8> undef, undef46; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void47;48 %V2i64 = sdiv <2 x i64> undef, undef49 %V4i64 = sdiv <4 x i64> undef, undef50 %V8i64 = sdiv <8 x i64> undef, undef51 %V2i32 = sdiv <2 x i32> undef, undef52 %V4i32 = sdiv <4 x i32> undef, undef53 %V6i32 = sdiv <6 x i32> undef, undef54 %V8i32 = sdiv <8 x i32> undef, undef55 %V16i32 = sdiv <16 x i32> undef, undef56 %V2i16 = sdiv <2 x i16> undef, undef57 %V4i16 = sdiv <4 x i16> undef, undef58 %V8i16 = sdiv <8 x i16> undef, undef59 %V16i16 = sdiv <16 x i16> undef, undef60 %V32i16 = sdiv <32 x i16> undef, undef61 %V2i8 = sdiv <2 x i8> undef, undef62 %V4i8 = sdiv <4 x i8> undef, undef63 %V6i8 = sdiv <6 x i8> undef, undef64 %V8i8 = sdiv <8 x i8> undef, undef65 %V16i8 = sdiv <16 x i8> undef, undef66 %V32i8 = sdiv <32 x i8> undef, undef67 %V64i8 = sdiv <64 x i8> undef, undef68 %NV2i64 = sdiv <vscale x 2 x i64> undef, undef69 %NV4i64 = sdiv <vscale x 4 x i64> undef, undef70 %NV8i64 = sdiv <vscale x 8 x i64> undef, undef71 %NV2i32 = sdiv <vscale x 2 x i32> undef, undef72 %NV4i32 = sdiv <vscale x 4 x i32> undef, undef73 %NV8i32 = sdiv <vscale x 8 x i32> undef, undef74 %NV16i32 = sdiv <vscale x 16 x i32> undef, undef75 %NV2i16 = sdiv <vscale x 2 x i16> undef, undef76 %NV4i16 = sdiv <vscale x 4 x i16> undef, undef77 %NV8i16 = sdiv <vscale x 8 x i16> undef, undef78 %NV16i16 = sdiv <vscale x 16 x i16> undef, undef79 %NV32i16 = sdiv <vscale x 32 x i16> undef, undef80 %NV2i8 = sdiv <vscale x 2 x i8> undef, undef81 %NV4i8 = sdiv <vscale x 4 x i8> undef, undef82 %NV8i8 = sdiv <vscale x 8 x i8> undef, undef83 %NV16i8 = sdiv <vscale x 16 x i8> undef, undef84 %NV32i8 = sdiv <vscale x 32 x i8> undef, undef85 %NV64i8 = sdiv <vscale x 64 x i8> undef, undef86 ret void87}88 89define void @udiv() {90; CHECK-LABEL: 'udiv'91; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = udiv <2 x i64> undef, undef92; CHECK-NEXT: Cost Model: Found costs of 4 for: %V4i64 = udiv <4 x i64> undef, undef93; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = udiv <8 x i64> undef, undef94; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = udiv <2 x i32> undef, undef95; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = udiv <4 x i32> undef, undef96; CHECK-NEXT: Cost Model: Found costs of 4 for: %V6i32 = udiv <6 x i32> undef, undef97; CHECK-NEXT: Cost Model: Found costs of 4 for: %V8i32 = udiv <8 x i32> undef, undef98; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = udiv <16 x i32> undef, undef99; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = udiv <2 x i16> undef, undef100; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = udiv <4 x i16> undef, undef101; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = udiv <8 x i16> undef, undef102; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = udiv <16 x i16> undef, undef103; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = udiv <32 x i16> undef, undef104; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = udiv <2 x i8> undef, undef105; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = udiv <4 x i8> undef, undef106; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V6i8 = udiv <6 x i8> undef, undef107; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = udiv <8 x i8> undef, undef108; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = udiv <16 x i8> undef, undef109; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = udiv <32 x i8> undef, undef110; CHECK-NEXT: Cost Model: Found costs of RThru:64 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = udiv <64 x i8> undef, undef111; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = udiv <vscale x 2 x i64> undef, undef112; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i64 = udiv <vscale x 4 x i64> undef, undef113; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = udiv <vscale x 8 x i64> undef, undef114; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = udiv <vscale x 2 x i32> undef, undef115; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = udiv <vscale x 4 x i32> undef, undef116; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i32 = udiv <vscale x 8 x i32> undef, undef117; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = udiv <vscale x 16 x i32> undef, undef118; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = udiv <vscale x 2 x i16> undef, undef119; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = udiv <vscale x 4 x i16> undef, undef120; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = udiv <vscale x 8 x i16> undef, undef121; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = udiv <vscale x 16 x i16> undef, undef122; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = udiv <vscale x 32 x i16> undef, undef123; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = udiv <vscale x 2 x i8> undef, undef124; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = udiv <vscale x 4 x i8> undef, undef125; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = udiv <vscale x 8 x i8> undef, undef126; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = udiv <vscale x 16 x i8> undef, undef127; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = udiv <vscale x 32 x i8> undef, undef128; CHECK-NEXT: Cost Model: Found costs of RThru:64 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = udiv <vscale x 64 x i8> undef, undef129; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void130;131 %V2i64 = udiv <2 x i64> undef, undef132 %V4i64 = udiv <4 x i64> undef, undef133 %V8i64 = udiv <8 x i64> undef, undef134 %V2i32 = udiv <2 x i32> undef, undef135 %V4i32 = udiv <4 x i32> undef, undef136 %V6i32 = udiv <6 x i32> undef, undef137 %V8i32 = udiv <8 x i32> undef, undef138 %V16i32 = udiv <16 x i32> undef, undef139 %V2i16 = udiv <2 x i16> undef, undef140 %V4i16 = udiv <4 x i16> undef, undef141 %V8i16 = udiv <8 x i16> undef, undef142 %V16i16 = udiv <16 x i16> undef, undef143 %V32i16 = udiv <32 x i16> undef, undef144 %V2i8 = udiv <2 x i8> undef, undef145 %V4i8 = udiv <4 x i8> undef, undef146 %V6i8 = udiv <6 x i8> undef, undef147 %V8i8 = udiv <8 x i8> undef, undef148 %V16i8 = udiv <16 x i8> undef, undef149 %V32i8 = udiv <32 x i8> undef, undef150 %V64i8 = udiv <64 x i8> undef, undef151 %NV2i64 = udiv <vscale x 2 x i64> undef, undef152 %NV4i64 = udiv <vscale x 4 x i64> undef, undef153 %NV8i64 = udiv <vscale x 8 x i64> undef, undef154 %NV2i32 = udiv <vscale x 2 x i32> undef, undef155 %NV4i32 = udiv <vscale x 4 x i32> undef, undef156 %NV8i32 = udiv <vscale x 8 x i32> undef, undef157 %NV16i32 = udiv <vscale x 16 x i32> undef, undef158 %NV2i16 = udiv <vscale x 2 x i16> undef, undef159 %NV4i16 = udiv <vscale x 4 x i16> undef, undef160 %NV8i16 = udiv <vscale x 8 x i16> undef, undef161 %NV16i16 = udiv <vscale x 16 x i16> undef, undef162 %NV32i16 = udiv <vscale x 32 x i16> undef, undef163 %NV2i8 = udiv <vscale x 2 x i8> undef, undef164 %NV4i8 = udiv <vscale x 4 x i8> undef, undef165 %NV8i8 = udiv <vscale x 8 x i8> undef, undef166 %NV16i8 = udiv <vscale x 16 x i8> undef, undef167 %NV32i8 = udiv <vscale x 32 x i8> undef, undef168 %NV64i8 = udiv <vscale x 64 x i8> undef, undef169 ret void170}171 172define void @sdiv_uniformconst() {173; CHECK-LABEL: 'sdiv_uniformconst'174; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = sdiv <2 x i64> undef, splat (i64 7)175; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = sdiv <4 x i64> undef, splat (i64 7)176; CHECK-NEXT: Cost Model: Found costs of RThru:32 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = sdiv <8 x i64> undef, splat (i64 7)177; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = sdiv <2 x i32> undef, splat (i32 7)178; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = sdiv <4 x i32> undef, splat (i32 7)179; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = sdiv <8 x i32> undef, splat (i32 7)180; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = sdiv <16 x i32> undef, splat (i32 7)181; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = sdiv <2 x i16> undef, splat (i16 7)182; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = sdiv <4 x i16> undef, splat (i16 7)183; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = sdiv <8 x i16> undef, splat (i16 7)184; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = sdiv <16 x i16> undef, splat (i16 7)185; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = sdiv <32 x i16> undef, splat (i16 7)186; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = sdiv <2 x i8> undef, splat (i8 7)187; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = sdiv <4 x i8> undef, splat (i8 7)188; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = sdiv <8 x i8> undef, splat (i8 7)189; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = sdiv <16 x i8> undef, splat (i8 7)190; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = sdiv <32 x i8> undef, splat (i8 7)191; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = sdiv <64 x i8> undef, splat (i8 7)192; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 7)193; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 7)194; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 7)195; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 7)196; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 7)197; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 7)198; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 7)199; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 7)200; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 7)201; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 7)202; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 7)203; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 7)204; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 7)205; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 7)206; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 7)207; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 7)208; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 7)209; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 7)210; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void211;212 %V2i64 = sdiv <2 x i64> undef, splat (i64 7)213 %V4i64 = sdiv <4 x i64> undef, splat (i64 7)214 %V8i64 = sdiv <8 x i64> undef, splat (i64 7)215 %V2i32 = sdiv <2 x i32> undef, splat (i32 7)216 %V4i32 = sdiv <4 x i32> undef, splat (i32 7)217 %V8i32 = sdiv <8 x i32> undef, splat (i32 7)218 %V16i32 = sdiv <16 x i32> undef, splat (i32 7)219 %V2i16 = sdiv <2 x i16> undef, splat (i16 7)220 %V4i16 = sdiv <4 x i16> undef, splat (i16 7)221 %V8i16 = sdiv <8 x i16> undef, splat (i16 7)222 %V16i16 = sdiv <16 x i16> undef, splat (i16 7)223 %V32i16 = sdiv <32 x i16> undef, splat (i16 7)224 %V2i8 = sdiv <2 x i8> undef, splat (i8 7)225 %V4i8 = sdiv <4 x i8> undef, splat (i8 7)226 %V8i8 = sdiv <8 x i8> undef, splat (i8 7)227 %V16i8 = sdiv <16 x i8> undef, splat (i8 7)228 %V32i8 = sdiv <32 x i8> undef, splat (i8 7)229 %V64i8 = sdiv <64 x i8> undef, splat (i8 7)230 %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 7)231 %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 7)232 %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 7)233 %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 7)234 %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 7)235 %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 7)236 %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 7)237 %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 7)238 %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 7)239 %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 7)240 %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 7)241 %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 7)242 %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 7)243 %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 7)244 %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 7)245 %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 7)246 %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 7)247 %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 7)248 ret void249}250 251define void @udiv_uniformconst() {252; CHECK-LABEL: 'udiv_uniformconst'253; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = udiv <2 x i64> undef, splat (i64 7)254; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = udiv <4 x i64> undef, splat (i64 7)255; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = udiv <8 x i64> undef, splat (i64 7)256; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = udiv <2 x i32> undef, splat (i32 7)257; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = udiv <4 x i32> undef, splat (i32 7)258; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = udiv <8 x i32> undef, splat (i32 7)259; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = udiv <16 x i32> undef, splat (i32 7)260; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = udiv <2 x i16> undef, splat (i16 7)261; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = udiv <4 x i16> undef, splat (i16 7)262; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = udiv <8 x i16> undef, splat (i16 7)263; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = udiv <16 x i16> undef, splat (i16 7)264; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = udiv <32 x i16> undef, splat (i16 7)265; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = udiv <2 x i8> undef, splat (i8 7)266; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = udiv <4 x i8> undef, splat (i8 7)267; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = udiv <8 x i8> undef, splat (i8 7)268; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = udiv <16 x i8> undef, splat (i8 7)269; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = udiv <32 x i8> undef, splat (i8 7)270; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = udiv <64 x i8> undef, splat (i8 7)271; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 7)272; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 7)273; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 7)274; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 7)275; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 7)276; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 7)277; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 7)278; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 7)279; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 7)280; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 7)281; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 7)282; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 7)283; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 7)284; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 7)285; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 7)286; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 7)287; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 7)288; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 7)289; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void290;291 %V2i64 = udiv <2 x i64> undef, splat (i64 7)292 %V4i64 = udiv <4 x i64> undef, splat (i64 7)293 %V8i64 = udiv <8 x i64> undef, splat (i64 7)294 %V2i32 = udiv <2 x i32> undef, splat (i32 7)295 %V4i32 = udiv <4 x i32> undef, splat (i32 7)296 %V8i32 = udiv <8 x i32> undef, splat (i32 7)297 %V16i32 = udiv <16 x i32> undef, splat (i32 7)298 %V2i16 = udiv <2 x i16> undef, splat (i16 7)299 %V4i16 = udiv <4 x i16> undef, splat (i16 7)300 %V8i16 = udiv <8 x i16> undef, splat (i16 7)301 %V16i16 = udiv <16 x i16> undef, splat (i16 7)302 %V32i16 = udiv <32 x i16> undef, splat (i16 7)303 %V2i8 = udiv <2 x i8> undef, splat (i8 7)304 %V4i8 = udiv <4 x i8> undef, splat (i8 7)305 %V8i8 = udiv <8 x i8> undef, splat (i8 7)306 %V16i8 = udiv <16 x i8> undef, splat (i8 7)307 %V32i8 = udiv <32 x i8> undef, splat (i8 7)308 %V64i8 = udiv <64 x i8> undef, splat (i8 7)309 %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 7)310 %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 7)311 %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 7)312 %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 7)313 %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 7)314 %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 7)315 %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 7)316 %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 7)317 %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 7)318 %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 7)319 %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 7)320 %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 7)321 %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 7)322 %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 7)323 %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 7)324 %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 7)325 %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 7)326 %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 7)327 ret void328}329 330define void @sdiv_uniformconstpow2() {331; CHECK-LABEL: 'sdiv_uniformconstpow2'332; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = sdiv <2 x i64> undef, splat (i64 16)333; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = sdiv <4 x i64> undef, splat (i64 16)334; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = sdiv <8 x i64> undef, splat (i64 16)335; CHECK-NEXT: Cost Model: Found costs of 4 for: %V2i32 = sdiv <2 x i32> undef, splat (i32 16)336; CHECK-NEXT: Cost Model: Found costs of 4 for: %V4i32 = sdiv <4 x i32> undef, splat (i32 16)337; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = sdiv <8 x i32> undef, splat (i32 16)338; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = sdiv <16 x i32> undef, splat (i32 16)339; CHECK-NEXT: Cost Model: Found costs of 4 for: %V2i16 = sdiv <2 x i16> undef, splat (i16 16)340; CHECK-NEXT: Cost Model: Found costs of 4 for: %V4i16 = sdiv <4 x i16> undef, splat (i16 16)341; CHECK-NEXT: Cost Model: Found costs of 4 for: %V8i16 = sdiv <8 x i16> undef, splat (i16 16)342; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = sdiv <16 x i16> undef, splat (i16 16)343; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = sdiv <32 x i16> undef, splat (i16 16)344; CHECK-NEXT: Cost Model: Found costs of 4 for: %V2i8 = sdiv <2 x i8> undef, splat (i8 16)345; CHECK-NEXT: Cost Model: Found costs of 4 for: %V4i8 = sdiv <4 x i8> undef, splat (i8 16)346; CHECK-NEXT: Cost Model: Found costs of 4 for: %V8i8 = sdiv <8 x i8> undef, splat (i8 16)347; CHECK-NEXT: Cost Model: Found costs of 4 for: %V16i8 = sdiv <16 x i8> undef, splat (i8 16)348; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = sdiv <32 x i8> undef, splat (i8 16)349; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = sdiv <64 x i8> undef, splat (i8 16)350; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 16)351; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 16)352; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 16)353; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 16)354; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 16)355; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 16)356; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 16)357; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 16)358; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 16)359; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 16)360; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 16)361; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 16)362; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 16)363; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 16)364; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 16)365; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 16)366; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 16)367; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 16)368; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void369;370 %V2i64 = sdiv <2 x i64> undef, splat (i64 16)371 %V4i64 = sdiv <4 x i64> undef, splat (i64 16)372 %V8i64 = sdiv <8 x i64> undef, splat (i64 16)373 %V2i32 = sdiv <2 x i32> undef, splat (i32 16)374 %V4i32 = sdiv <4 x i32> undef, splat (i32 16)375 %V8i32 = sdiv <8 x i32> undef, splat (i32 16)376 %V16i32 = sdiv <16 x i32> undef, splat (i32 16)377 %V2i16 = sdiv <2 x i16> undef, splat (i16 16)378 %V4i16 = sdiv <4 x i16> undef, splat (i16 16)379 %V8i16 = sdiv <8 x i16> undef, splat (i16 16)380 %V16i16 = sdiv <16 x i16> undef, splat (i16 16)381 %V32i16 = sdiv <32 x i16> undef, splat (i16 16)382 %V2i8 = sdiv <2 x i8> undef, splat (i8 16)383 %V4i8 = sdiv <4 x i8> undef, splat (i8 16)384 %V8i8 = sdiv <8 x i8> undef, splat (i8 16)385 %V16i8 = sdiv <16 x i8> undef, splat (i8 16)386 %V32i8 = sdiv <32 x i8> undef, splat (i8 16)387 %V64i8 = sdiv <64 x i8> undef, splat (i8 16)388 %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 16)389 %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 16)390 %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 16)391 %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 16)392 %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 16)393 %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 16)394 %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 16)395 %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 16)396 %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 16)397 %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 16)398 %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 16)399 %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 16)400 %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 16)401 %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 16)402 %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 16)403 %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 16)404 %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 16)405 %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 16)406 ret void407}408 409define void @udiv_uniformconstpow2() {410; CHECK-LABEL: 'udiv_uniformconstpow2'411; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = udiv <2 x i64> undef, splat (i64 16)412; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = udiv <4 x i64> undef, splat (i64 16)413; CHECK-NEXT: Cost Model: Found costs of 4 for: %V8i64 = udiv <8 x i64> undef, splat (i64 16)414; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = udiv <2 x i32> undef, splat (i32 16)415; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = udiv <4 x i32> undef, splat (i32 16)416; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = udiv <8 x i32> undef, splat (i32 16)417; CHECK-NEXT: Cost Model: Found costs of 4 for: %V16i32 = udiv <16 x i32> undef, splat (i32 16)418; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = udiv <2 x i16> undef, splat (i16 16)419; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = udiv <4 x i16> undef, splat (i16 16)420; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = udiv <8 x i16> undef, splat (i16 16)421; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = udiv <16 x i16> undef, splat (i16 16)422; CHECK-NEXT: Cost Model: Found costs of 4 for: %V32i16 = udiv <32 x i16> undef, splat (i16 16)423; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = udiv <2 x i8> undef, splat (i8 16)424; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = udiv <4 x i8> undef, splat (i8 16)425; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = udiv <8 x i8> undef, splat (i8 16)426; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = udiv <16 x i8> undef, splat (i8 16)427; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = udiv <32 x i8> undef, splat (i8 16)428; CHECK-NEXT: Cost Model: Found costs of 4 for: %V64i8 = udiv <64 x i8> undef, splat (i8 16)429; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 16)430; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 16)431; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 16)432; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 16)433; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 16)434; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 16)435; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 16)436; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 16)437; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 16)438; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 16)439; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 16)440; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 16)441; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 16)442; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 16)443; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 16)444; CHECK-NEXT: Cost Model: Found costs of RThru:1 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 16)445; CHECK-NEXT: Cost Model: Found costs of RThru:2 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 16)446; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 16)447; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void448;449 %V2i64 = udiv <2 x i64> undef, splat (i64 16)450 %V4i64 = udiv <4 x i64> undef, splat (i64 16)451 %V8i64 = udiv <8 x i64> undef, splat (i64 16)452 %V2i32 = udiv <2 x i32> undef, splat (i32 16)453 %V4i32 = udiv <4 x i32> undef, splat (i32 16)454 %V8i32 = udiv <8 x i32> undef, splat (i32 16)455 %V16i32 = udiv <16 x i32> undef, splat (i32 16)456 %V2i16 = udiv <2 x i16> undef, splat (i16 16)457 %V4i16 = udiv <4 x i16> undef, splat (i16 16)458 %V8i16 = udiv <8 x i16> undef, splat (i16 16)459 %V16i16 = udiv <16 x i16> undef, splat (i16 16)460 %V32i16 = udiv <32 x i16> undef, splat (i16 16)461 %V2i8 = udiv <2 x i8> undef, splat (i8 16)462 %V4i8 = udiv <4 x i8> undef, splat (i8 16)463 %V8i8 = udiv <8 x i8> undef, splat (i8 16)464 %V16i8 = udiv <16 x i8> undef, splat (i8 16)465 %V32i8 = udiv <32 x i8> undef, splat (i8 16)466 %V64i8 = udiv <64 x i8> undef, splat (i8 16)467 %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 16)468 %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 16)469 %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 16)470 %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 16)471 %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 16)472 %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 16)473 %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 16)474 %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 16)475 %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 16)476 %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 16)477 %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 16)478 %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 16)479 %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 16)480 %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 16)481 %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 16)482 %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 16)483 %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 16)484 %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 16)485 ret void486}487 488define void @sdiv_uniformconstnegpow2() {489; CHECK-LABEL: 'sdiv_uniformconstnegpow2'490; CHECK-NEXT: Cost Model: Found costs of 4 for: %V2i64 = sdiv <2 x i64> undef, splat (i64 -16)491; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = sdiv <4 x i64> undef, splat (i64 -16)492; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = sdiv <8 x i64> undef, splat (i64 -16)493; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = sdiv <2 x i32> undef, splat (i32 -16)494; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = sdiv <4 x i32> undef, splat (i32 -16)495; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = sdiv <8 x i32> undef, splat (i32 -16)496; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = sdiv <16 x i32> undef, splat (i32 -16)497; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = sdiv <2 x i16> undef, splat (i16 -16)498; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = sdiv <4 x i16> undef, splat (i16 -16)499; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = sdiv <8 x i16> undef, splat (i16 -16)500; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = sdiv <16 x i16> undef, splat (i16 -16)501; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = sdiv <32 x i16> undef, splat (i16 -16)502; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = sdiv <2 x i8> undef, splat (i8 -16)503; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = sdiv <4 x i8> undef, splat (i8 -16)504; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = sdiv <8 x i8> undef, splat (i8 -16)505; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = sdiv <16 x i8> undef, splat (i8 -16)506; CHECK-NEXT: Cost Model: Found costs of RThru:10 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = sdiv <32 x i8> undef, splat (i8 -16)507; CHECK-NEXT: Cost Model: Found costs of RThru:20 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = sdiv <64 x i8> undef, splat (i8 -16)508; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 -16)509; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 -16)510; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 -16)511; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 -16)512; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 -16)513; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 -16)514; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 -16)515; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 -16)516; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 -16)517; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 -16)518; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 -16)519; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 -16)520; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 -16)521; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 -16)522; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 -16)523; CHECK-NEXT: Cost Model: Found costs of RThru:3 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 -16)524; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 -16)525; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 -16)526; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void527;528 %V2i64 = sdiv <2 x i64> undef, splat (i64 -16)529 %V4i64 = sdiv <4 x i64> undef, splat (i64 -16)530 %V8i64 = sdiv <8 x i64> undef, splat (i64 -16)531 %V2i32 = sdiv <2 x i32> undef, splat (i32 -16)532 %V4i32 = sdiv <4 x i32> undef, splat (i32 -16)533 %V8i32 = sdiv <8 x i32> undef, splat (i32 -16)534 %V16i32 = sdiv <16 x i32> undef, splat (i32 -16)535 %V2i16 = sdiv <2 x i16> undef, splat (i16 -16)536 %V4i16 = sdiv <4 x i16> undef, splat (i16 -16)537 %V8i16 = sdiv <8 x i16> undef, splat (i16 -16)538 %V16i16 = sdiv <16 x i16> undef, splat (i16 -16)539 %V32i16 = sdiv <32 x i16> undef, splat (i16 -16)540 %V2i8 = sdiv <2 x i8> undef, splat (i8 -16)541 %V4i8 = sdiv <4 x i8> undef, splat (i8 -16)542 %V8i8 = sdiv <8 x i8> undef, splat (i8 -16)543 %V16i8 = sdiv <16 x i8> undef, splat (i8 -16)544 %V32i8 = sdiv <32 x i8> undef, splat (i8 -16)545 %V64i8 = sdiv <64 x i8> undef, splat (i8 -16)546 %NV2i64 = sdiv <vscale x 2 x i64> undef, splat (i64 -16)547 %NV4i64 = sdiv <vscale x 4 x i64> undef, splat (i64 -16)548 %NV8i64 = sdiv <vscale x 8 x i64> undef, splat (i64 -16)549 %NV2i32 = sdiv <vscale x 2 x i32> undef, splat (i32 -16)550 %NV4i32 = sdiv <vscale x 4 x i32> undef, splat (i32 -16)551 %NV8i32 = sdiv <vscale x 8 x i32> undef, splat (i32 -16)552 %NV16i32 = sdiv <vscale x 16 x i32> undef, splat (i32 -16)553 %NV2i16 = sdiv <vscale x 2 x i16> undef, splat (i16 -16)554 %NV4i16 = sdiv <vscale x 4 x i16> undef, splat (i16 -16)555 %NV8i16 = sdiv <vscale x 8 x i16> undef, splat (i16 -16)556 %NV16i16 = sdiv <vscale x 16 x i16> undef, splat (i16 -16)557 %NV32i16 = sdiv <vscale x 32 x i16> undef, splat (i16 -16)558 %NV2i8 = sdiv <vscale x 2 x i8> undef, splat (i8 -16)559 %NV4i8 = sdiv <vscale x 4 x i8> undef, splat (i8 -16)560 %NV8i8 = sdiv <vscale x 8 x i8> undef, splat (i8 -16)561 %NV16i8 = sdiv <vscale x 16 x i8> undef, splat (i8 -16)562 %NV32i8 = sdiv <vscale x 32 x i8> undef, splat (i8 -16)563 %NV64i8 = sdiv <vscale x 64 x i8> undef, splat (i8 -16)564 ret void565}566 567define void @udiv_uniformconstnegpow2() {568; CHECK-LABEL: 'udiv_uniformconstnegpow2'569; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V2i64 = udiv <2 x i64> undef, splat (i64 -16)570; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V4i64 = udiv <4 x i64> undef, splat (i64 -16)571; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V8i64 = udiv <8 x i64> undef, splat (i64 -16)572; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i32 = udiv <2 x i32> undef, splat (i32 -16)573; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V4i32 = udiv <4 x i32> undef, splat (i32 -16)574; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V8i32 = udiv <8 x i32> undef, splat (i32 -16)575; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V16i32 = udiv <16 x i32> undef, splat (i32 -16)576; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i16 = udiv <2 x i16> undef, splat (i16 -16)577; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i16 = udiv <4 x i16> undef, splat (i16 -16)578; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V8i16 = udiv <8 x i16> undef, splat (i16 -16)579; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V16i16 = udiv <16 x i16> undef, splat (i16 -16)580; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V32i16 = udiv <32 x i16> undef, splat (i16 -16)581; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V2i8 = udiv <2 x i8> undef, splat (i8 -16)582; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V4i8 = udiv <4 x i8> undef, splat (i8 -16)583; CHECK-NEXT: Cost Model: Found costs of RThru:5 CodeSize:4 Lat:4 SizeLat:4 for: %V8i8 = udiv <8 x i8> undef, splat (i8 -16)584; CHECK-NEXT: Cost Model: Found costs of RThru:6 CodeSize:4 Lat:4 SizeLat:4 for: %V16i8 = udiv <16 x i8> undef, splat (i8 -16)585; CHECK-NEXT: Cost Model: Found costs of RThru:12 CodeSize:4 Lat:4 SizeLat:4 for: %V32i8 = udiv <32 x i8> undef, splat (i8 -16)586; CHECK-NEXT: Cost Model: Found costs of RThru:24 CodeSize:4 Lat:4 SizeLat:4 for: %V64i8 = udiv <64 x i8> undef, splat (i8 -16)587; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 -16)588; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 -16)589; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 -16)590; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 -16)591; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 -16)592; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 -16)593; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 -16)594; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 -16)595; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 -16)596; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 -16)597; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 -16)598; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 -16)599; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 -16)600; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 -16)601; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 -16)602; CHECK-NEXT: Cost Model: Found costs of 4 for: %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 -16)603; CHECK-NEXT: Cost Model: Found costs of RThru:8 CodeSize:4 Lat:4 SizeLat:4 for: %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 -16)604; CHECK-NEXT: Cost Model: Found costs of RThru:16 CodeSize:4 Lat:4 SizeLat:4 for: %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 -16)605; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void606;607 %V2i64 = udiv <2 x i64> undef, splat (i64 -16)608 %V4i64 = udiv <4 x i64> undef, splat (i64 -16)609 %V8i64 = udiv <8 x i64> undef, splat (i64 -16)610 %V2i32 = udiv <2 x i32> undef, splat (i32 -16)611 %V4i32 = udiv <4 x i32> undef, splat (i32 -16)612 %V8i32 = udiv <8 x i32> undef, splat (i32 -16)613 %V16i32 = udiv <16 x i32> undef, splat (i32 -16)614 %V2i16 = udiv <2 x i16> undef, splat (i16 -16)615 %V4i16 = udiv <4 x i16> undef, splat (i16 -16)616 %V8i16 = udiv <8 x i16> undef, splat (i16 -16)617 %V16i16 = udiv <16 x i16> undef, splat (i16 -16)618 %V32i16 = udiv <32 x i16> undef, splat (i16 -16)619 %V2i8 = udiv <2 x i8> undef, splat (i8 -16)620 %V4i8 = udiv <4 x i8> undef, splat (i8 -16)621 %V8i8 = udiv <8 x i8> undef, splat (i8 -16)622 %V16i8 = udiv <16 x i8> undef, splat (i8 -16)623 %V32i8 = udiv <32 x i8> undef, splat (i8 -16)624 %V64i8 = udiv <64 x i8> undef, splat (i8 -16)625 %NV2i64 = udiv <vscale x 2 x i64> undef, splat (i64 -16)626 %NV4i64 = udiv <vscale x 4 x i64> undef, splat (i64 -16)627 %NV8i64 = udiv <vscale x 8 x i64> undef, splat (i64 -16)628 %NV2i32 = udiv <vscale x 2 x i32> undef, splat (i32 -16)629 %NV4i32 = udiv <vscale x 4 x i32> undef, splat (i32 -16)630 %NV8i32 = udiv <vscale x 8 x i32> undef, splat (i32 -16)631 %NV16i32 = udiv <vscale x 16 x i32> undef, splat (i32 -16)632 %NV2i16 = udiv <vscale x 2 x i16> undef, splat (i16 -16)633 %NV4i16 = udiv <vscale x 4 x i16> undef, splat (i16 -16)634 %NV8i16 = udiv <vscale x 8 x i16> undef, splat (i16 -16)635 %NV16i16 = udiv <vscale x 16 x i16> undef, splat (i16 -16)636 %NV32i16 = udiv <vscale x 32 x i16> undef, splat (i16 -16)637 %NV2i8 = udiv <vscale x 2 x i8> undef, splat (i8 -16)638 %NV4i8 = udiv <vscale x 4 x i8> undef, splat (i8 -16)639 %NV8i8 = udiv <vscale x 8 x i8> undef, splat (i8 -16)640 %NV16i8 = udiv <vscale x 16 x i8> undef, splat (i8 -16)641 %NV32i8 = udiv <vscale x 32 x i8> undef, splat (i8 -16)642 %NV64i8 = udiv <vscale x 64 x i8> undef, splat (i8 -16)643 ret void644}645