1; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py 2; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx1010 < %s | FileCheck -check-prefixes=ALL,FAST %s 3; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx90a < %s | FileCheck -check-prefixes=ALL,FAST %s 4; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx900 < %s | FileCheck -check-prefixes=ALL,FAST %s 5; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa < %s | FileCheck -check-prefixes=ALL,SLOW %s 6 7; RUN: opt -passes="print<cost-model>" -cost-kind=code-size 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx1010 < %s | FileCheck -check-prefixes=ALL-SIZE,FAST-SIZE %s 8; RUN: opt -passes="print<cost-model>" -cost-kind=code-size 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx90a < %s | FileCheck -check-prefixes=ALL-SIZE,FAST-SIZE %s 9; RUN: opt -passes="print<cost-model>" -cost-kind=code-size 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx900 < %s | FileCheck -check-prefixes=ALL-SIZE,FAST-SIZE %s 10; RUN: opt -passes="print<cost-model>" -cost-kind=code-size 2>&1 -disable-output -mtriple=amdgcn-unknown-amdhsa < %s | FileCheck -check-prefixes=ALL-SIZE,SLOW-SIZE %s 11; END. 12 13define i32 @fptoui_double_i64(i32 %arg) { 14; ALL-LABEL: 'fptoui_double_i64' 15; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = fptoui double undef to i64 16; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I64 = fptoui <2 x double> undef to <2 x i64> 17; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I64 = fptoui <4 x double> undef to <4 x i64> 18; ALL-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I64 = fptoui <8 x double> undef to <8 x i64> 19; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 20; 21; ALL-SIZE-LABEL: 'fptoui_double_i64' 22; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = fptoui double undef to i64 23; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I64 = fptoui <2 x double> undef to <2 x i64> 24; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I64 = fptoui <4 x double> undef to <4 x i64> 25; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I64 = fptoui <8 x double> undef to <8 x i64> 26; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 27; 28 %I64 = fptoui double undef to i64 29 %V2I64 = fptoui <2 x double> undef to <2 x i64> 30 %V4I64 = fptoui <4 x double> undef to <4 x i64> 31 %V8I64 = fptoui <8 x double> undef to <8 x i64> 32 ret i32 undef 33} 34 35define i32 @fptoui_double_i32(i32 %arg) { 36; ALL-LABEL: 'fptoui_double_i32' 37; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = fptoui double undef to i32 38; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I32 = fptoui <2 x double> undef to <2 x i32> 39; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I32 = fptoui <4 x double> undef to <4 x i32> 40; ALL-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I32 = fptoui <8 x double> undef to <8 x i32> 41; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 42; 43; ALL-SIZE-LABEL: 'fptoui_double_i32' 44; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = fptoui double undef to i32 45; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I32 = fptoui <2 x double> undef to <2 x i32> 46; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I32 = fptoui <4 x double> undef to <4 x i32> 47; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I32 = fptoui <8 x double> undef to <8 x i32> 48; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 49; 50 %I32 = fptoui double undef to i32 51 %V2I32 = fptoui <2 x double> undef to <2 x i32> 52 %V4I32 = fptoui <4 x double> undef to <4 x i32> 53 %V8I32 = fptoui <8 x double> undef to <8 x i32> 54 ret i32 undef 55} 56 57define i32 @fptoui_double_i16(i32 %arg) { 58; FAST-LABEL: 'fptoui_double_i16' 59; FAST-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui double undef to i16 60; FAST-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V2I16 = fptoui <2 x double> undef to <2 x i16> 61; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: %V4I16 = fptoui <4 x double> undef to <4 x i16> 62; FAST-NEXT: Cost Model: Found an estimated cost of 22 for instruction: %V8I16 = fptoui <8 x double> undef to <8 x i16> 63; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 64; 65; SLOW-LABEL: 'fptoui_double_i16' 66; SLOW-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui double undef to i16 67; SLOW-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I16 = fptoui <2 x double> undef to <2 x i16> 68; SLOW-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I16 = fptoui <4 x double> undef to <4 x i16> 69; SLOW-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I16 = fptoui <8 x double> undef to <8 x i16> 70; SLOW-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 71; 72; FAST-SIZE-LABEL: 'fptoui_double_i16' 73; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui double undef to i16 74; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V2I16 = fptoui <2 x double> undef to <2 x i16> 75; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 10 for instruction: %V4I16 = fptoui <4 x double> undef to <4 x i16> 76; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 22 for instruction: %V8I16 = fptoui <8 x double> undef to <8 x i16> 77; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 78; 79; SLOW-SIZE-LABEL: 'fptoui_double_i16' 80; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui double undef to i16 81; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I16 = fptoui <2 x double> undef to <2 x i16> 82; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I16 = fptoui <4 x double> undef to <4 x i16> 83; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I16 = fptoui <8 x double> undef to <8 x i16> 84; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 85; 86 %I16 = fptoui double undef to i16 87 %V2I16 = fptoui <2 x double> undef to <2 x i16> 88 %V4I16 = fptoui <4 x double> undef to <4 x i16> 89 %V8I16 = fptoui <8 x double> undef to <8 x i16> 90 ret i32 undef 91} 92 93define i32 @fptoui_double_i8(i32 %arg) { 94; FAST-LABEL: 'fptoui_double_i8' 95; FAST-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui double undef to i8 96; FAST-NEXT: Cost Model: Found an estimated cost of 6 for instruction: %V2I8 = fptoui <2 x double> undef to <2 x i8> 97; FAST-NEXT: Cost Model: Found an estimated cost of 12 for instruction: %V4I8 = fptoui <4 x double> undef to <4 x i8> 98; FAST-NEXT: Cost Model: Found an estimated cost of 24 for instruction: %V8I8 = fptoui <8 x double> undef to <8 x i8> 99; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 100; 101; SLOW-LABEL: 'fptoui_double_i8' 102; SLOW-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui double undef to i8 103; SLOW-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I8 = fptoui <2 x double> undef to <2 x i8> 104; SLOW-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I8 = fptoui <4 x double> undef to <4 x i8> 105; SLOW-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I8 = fptoui <8 x double> undef to <8 x i8> 106; SLOW-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 107; 108; FAST-SIZE-LABEL: 'fptoui_double_i8' 109; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui double undef to i8 110; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 6 for instruction: %V2I8 = fptoui <2 x double> undef to <2 x i8> 111; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 12 for instruction: %V4I8 = fptoui <4 x double> undef to <4 x i8> 112; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 24 for instruction: %V8I8 = fptoui <8 x double> undef to <8 x i8> 113; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 114; 115; SLOW-SIZE-LABEL: 'fptoui_double_i8' 116; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui double undef to i8 117; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I8 = fptoui <2 x double> undef to <2 x i8> 118; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I8 = fptoui <4 x double> undef to <4 x i8> 119; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I8 = fptoui <8 x double> undef to <8 x i8> 120; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 121; 122 %I8 = fptoui double undef to i8 123 %V2I8 = fptoui <2 x double> undef to <2 x i8> 124 %V4I8 = fptoui <4 x double> undef to <4 x i8> 125 %V8I8 = fptoui <8 x double> undef to <8 x i8> 126 ret i32 undef 127} 128 129define i32 @fptoui_float_i64(i32 %arg) { 130; ALL-LABEL: 'fptoui_float_i64' 131; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = fptoui float undef to i64 132; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I64 = fptoui <2 x float> undef to <2 x i64> 133; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I64 = fptoui <4 x float> undef to <4 x i64> 134; ALL-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I64 = fptoui <8 x float> undef to <8 x i64> 135; ALL-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I64 = fptoui <16 x float> undef to <16 x i64> 136; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 137; 138; ALL-SIZE-LABEL: 'fptoui_float_i64' 139; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = fptoui float undef to i64 140; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I64 = fptoui <2 x float> undef to <2 x i64> 141; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I64 = fptoui <4 x float> undef to <4 x i64> 142; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I64 = fptoui <8 x float> undef to <8 x i64> 143; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I64 = fptoui <16 x float> undef to <16 x i64> 144; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 145; 146 %I64 = fptoui float undef to i64 147 %V2I64 = fptoui <2 x float> undef to <2 x i64> 148 %V4I64 = fptoui <4 x float> undef to <4 x i64> 149 %V8I64 = fptoui <8 x float> undef to <8 x i64> 150 %V16I64 = fptoui <16 x float> undef to <16 x i64> 151 ret i32 undef 152} 153 154define i32 @fptoui_float_i32(i32 %arg) { 155; ALL-LABEL: 'fptoui_float_i32' 156; ALL-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = fptoui float undef to i32 157; ALL-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I32 = fptoui <2 x float> undef to <2 x i32> 158; ALL-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I32 = fptoui <4 x float> undef to <4 x i32> 159; ALL-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I32 = fptoui <8 x float> undef to <8 x i32> 160; ALL-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I32 = fptoui <16 x float> undef to <16 x i32> 161; ALL-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 162; 163; ALL-SIZE-LABEL: 'fptoui_float_i32' 164; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = fptoui float undef to i32 165; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I32 = fptoui <2 x float> undef to <2 x i32> 166; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I32 = fptoui <4 x float> undef to <4 x i32> 167; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I32 = fptoui <8 x float> undef to <8 x i32> 168; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I32 = fptoui <16 x float> undef to <16 x i32> 169; ALL-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 170; 171 %I32 = fptoui float undef to i32 172 %V2I32 = fptoui <2 x float> undef to <2 x i32> 173 %V4I32 = fptoui <4 x float> undef to <4 x i32> 174 %V8I32 = fptoui <8 x float> undef to <8 x i32> 175 %V16I32 = fptoui <16 x float> undef to <16 x i32> 176 ret i32 undef 177} 178 179define i32 @fptoui_float_i16(i32 %arg) { 180; FAST-LABEL: 'fptoui_float_i16' 181; FAST-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui float undef to i16 182; FAST-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V2I16 = fptoui <2 x float> undef to <2 x i16> 183; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: %V4I16 = fptoui <4 x float> undef to <4 x i16> 184; FAST-NEXT: Cost Model: Found an estimated cost of 22 for instruction: %V8I16 = fptoui <8 x float> undef to <8 x i16> 185; FAST-NEXT: Cost Model: Found an estimated cost of 46 for instruction: %V16I16 = fptoui <16 x float> undef to <16 x i16> 186; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 187; 188; SLOW-LABEL: 'fptoui_float_i16' 189; SLOW-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui float undef to i16 190; SLOW-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I16 = fptoui <2 x float> undef to <2 x i16> 191; SLOW-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I16 = fptoui <4 x float> undef to <4 x i16> 192; SLOW-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I16 = fptoui <8 x float> undef to <8 x i16> 193; SLOW-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I16 = fptoui <16 x float> undef to <16 x i16> 194; SLOW-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 195; 196; FAST-SIZE-LABEL: 'fptoui_float_i16' 197; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui float undef to i16 198; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V2I16 = fptoui <2 x float> undef to <2 x i16> 199; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 10 for instruction: %V4I16 = fptoui <4 x float> undef to <4 x i16> 200; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 22 for instruction: %V8I16 = fptoui <8 x float> undef to <8 x i16> 201; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 46 for instruction: %V16I16 = fptoui <16 x float> undef to <16 x i16> 202; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 203; 204; SLOW-SIZE-LABEL: 'fptoui_float_i16' 205; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = fptoui float undef to i16 206; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I16 = fptoui <2 x float> undef to <2 x i16> 207; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I16 = fptoui <4 x float> undef to <4 x i16> 208; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I16 = fptoui <8 x float> undef to <8 x i16> 209; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I16 = fptoui <16 x float> undef to <16 x i16> 210; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 211; 212 %I16 = fptoui float undef to i16 213 %V2I16 = fptoui <2 x float> undef to <2 x i16> 214 %V4I16 = fptoui <4 x float> undef to <4 x i16> 215 %V8I16 = fptoui <8 x float> undef to <8 x i16> 216 %V16I16 = fptoui <16 x float> undef to <16 x i16> 217 ret i32 undef 218} 219 220define i32 @fptoui_float_i8(i32 %arg) { 221; FAST-LABEL: 'fptoui_float_i8' 222; FAST-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui float undef to i8 223; FAST-NEXT: Cost Model: Found an estimated cost of 6 for instruction: %V2I8 = fptoui <2 x float> undef to <2 x i8> 224; FAST-NEXT: Cost Model: Found an estimated cost of 12 for instruction: %V4I8 = fptoui <4 x float> undef to <4 x i8> 225; FAST-NEXT: Cost Model: Found an estimated cost of 24 for instruction: %V8I8 = fptoui <8 x float> undef to <8 x i8> 226; FAST-NEXT: Cost Model: Found an estimated cost of 48 for instruction: %V16I8 = fptoui <16 x float> undef to <16 x i8> 227; FAST-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 228; 229; SLOW-LABEL: 'fptoui_float_i8' 230; SLOW-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui float undef to i8 231; SLOW-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I8 = fptoui <2 x float> undef to <2 x i8> 232; SLOW-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I8 = fptoui <4 x float> undef to <4 x i8> 233; SLOW-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I8 = fptoui <8 x float> undef to <8 x i8> 234; SLOW-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I8 = fptoui <16 x float> undef to <16 x i8> 235; SLOW-NEXT: Cost Model: Found an estimated cost of 10 for instruction: ret i32 undef 236; 237; FAST-SIZE-LABEL: 'fptoui_float_i8' 238; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui float undef to i8 239; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 6 for instruction: %V2I8 = fptoui <2 x float> undef to <2 x i8> 240; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 12 for instruction: %V4I8 = fptoui <4 x float> undef to <4 x i8> 241; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 24 for instruction: %V8I8 = fptoui <8 x float> undef to <8 x i8> 242; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 48 for instruction: %V16I8 = fptoui <16 x float> undef to <16 x i8> 243; FAST-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 244; 245; SLOW-SIZE-LABEL: 'fptoui_float_i8' 246; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I8 = fptoui float undef to i8 247; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2I8 = fptoui <2 x float> undef to <2 x i8> 248; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4I8 = fptoui <4 x float> undef to <4 x i8> 249; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8I8 = fptoui <8 x float> undef to <8 x i8> 250; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16I8 = fptoui <16 x float> undef to <16 x i8> 251; SLOW-SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret i32 undef 252; 253 %I8 = fptoui float undef to i8 254 %V2I8 = fptoui <2 x float> undef to <2 x i8> 255 %V4I8 = fptoui <4 x float> undef to <4 x i8> 256 %V8I8 = fptoui <8 x float> undef to <8 x i8> 257 %V16I8 = fptoui <16 x float> undef to <16 x i8> 258 ret i32 undef 259} 260