1; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py 2; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2 3; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+sse3 | FileCheck %s --check-prefixes=SSE3 4; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+ssse3 | FileCheck %s --check-prefixes=SSSE3 5; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+sse4.1 | FileCheck %s --check-prefixes=SSE41 6; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+sse4.2 | FileCheck %s --check-prefixes=SSE42 7; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+avx | FileCheck %s --check-prefixes=AVX 8; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+avx2 | FileCheck %s --check-prefixes=AVX 9; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+avx512f | FileCheck %s --check-prefixes=AVX512 10; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefixes=AVX512 11; 12; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mcpu=slm | FileCheck %s --check-prefixes=SSE42 13; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mcpu=goldmont | FileCheck %s --check-prefixes=SSE42 14; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -cost-model -analyze -mcpu=btver2 | FileCheck %s --check-prefixes=AVX 15 16define i32 @cmp_float_oeq(i32 %arg) { 17; SSE2-LABEL: 'cmp_float_oeq' 18; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 19; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 20; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 21; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 22; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 23; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 24; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 25; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 26; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 27; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 28; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 29; 30; SSE3-LABEL: 'cmp_float_oeq' 31; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 32; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 33; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 34; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 35; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 36; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 37; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 38; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 39; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 40; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 41; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 42; 43; SSSE3-LABEL: 'cmp_float_oeq' 44; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 45; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 46; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 47; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 48; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 49; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 50; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 51; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 52; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 53; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 54; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 55; 56; SSE41-LABEL: 'cmp_float_oeq' 57; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 58; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 59; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 60; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 61; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 62; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 63; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 64; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 65; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 66; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 67; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 68; 69; SSE42-LABEL: 'cmp_float_oeq' 70; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 71; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 72; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 73; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 74; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 75; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 76; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 77; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 78; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 79; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 80; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 81; 82; AVX-LABEL: 'cmp_float_oeq' 83; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 84; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 85; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 86; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 87; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 88; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 89; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 90; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 91; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 92; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 93; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 94; 95; AVX512-LABEL: 'cmp_float_oeq' 96; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oeq float undef, undef 97; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oeq <2 x float> undef, undef 98; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oeq <4 x float> undef, undef 99; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp oeq <8 x float> undef, undef 100; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp oeq <16 x float> undef, undef 101; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oeq double undef, undef 102; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oeq <2 x double> undef, undef 103; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp oeq <4 x double> undef, undef 104; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp oeq <8 x double> undef, undef 105; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp oeq <16 x double> undef, undef 106; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 107; 108 %F32 = fcmp oeq float undef, undef 109 %V2F32 = fcmp oeq <2 x float> undef, undef 110 %V4F32 = fcmp oeq <4 x float> undef, undef 111 %V8F32 = fcmp oeq <8 x float> undef, undef 112 %V16F32 = fcmp oeq <16 x float> undef, undef 113 114 %F64 = fcmp oeq double undef, undef 115 %V2F64 = fcmp oeq <2 x double> undef, undef 116 %V4F64 = fcmp oeq <4 x double> undef, undef 117 %V8F64 = fcmp oeq <8 x double> undef, undef 118 %V16F64 = fcmp oeq <16 x double> undef, undef 119 120 ret i32 undef 121} 122 123define i32 @cmp_float_one(i32 %arg) { 124; SSE2-LABEL: 'cmp_float_one' 125; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 126; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 127; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 128; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 129; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 130; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 131; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 132; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 133; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 134; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 135; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 136; 137; SSE3-LABEL: 'cmp_float_one' 138; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 139; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 140; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 141; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 142; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 143; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 144; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 145; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 146; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 147; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 148; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 149; 150; SSSE3-LABEL: 'cmp_float_one' 151; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 152; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 153; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 154; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 155; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 156; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 157; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 158; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 159; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 160; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 161; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 162; 163; SSE41-LABEL: 'cmp_float_one' 164; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 165; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 166; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 167; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 168; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 169; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 170; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 171; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 172; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 173; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 174; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 175; 176; SSE42-LABEL: 'cmp_float_one' 177; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 178; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 179; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 180; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 181; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 182; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 183; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 184; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 185; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 186; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 187; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 188; 189; AVX-LABEL: 'cmp_float_one' 190; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 191; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 192; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 193; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 194; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 195; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 196; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 197; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 198; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 199; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 200; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 201; 202; AVX512-LABEL: 'cmp_float_one' 203; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp one float undef, undef 204; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp one <2 x float> undef, undef 205; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp one <4 x float> undef, undef 206; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp one <8 x float> undef, undef 207; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp one <16 x float> undef, undef 208; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp one double undef, undef 209; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp one <2 x double> undef, undef 210; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp one <4 x double> undef, undef 211; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp one <8 x double> undef, undef 212; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp one <16 x double> undef, undef 213; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 214; 215 %F32 = fcmp one float undef, undef 216 %V2F32 = fcmp one <2 x float> undef, undef 217 %V4F32 = fcmp one <4 x float> undef, undef 218 %V8F32 = fcmp one <8 x float> undef, undef 219 %V16F32 = fcmp one <16 x float> undef, undef 220 221 %F64 = fcmp one double undef, undef 222 %V2F64 = fcmp one <2 x double> undef, undef 223 %V4F64 = fcmp one <4 x double> undef, undef 224 %V8F64 = fcmp one <8 x double> undef, undef 225 %V16F64 = fcmp one <16 x double> undef, undef 226 227 ret i32 undef 228} 229 230define i32 @cmp_float_ord(i32 %arg) { 231; SSE2-LABEL: 'cmp_float_ord' 232; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 233; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 234; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 235; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 236; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 237; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 238; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 239; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 240; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 241; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 242; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 243; 244; SSE3-LABEL: 'cmp_float_ord' 245; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 246; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 247; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 248; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 249; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 250; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 251; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 252; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 253; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 254; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 255; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 256; 257; SSSE3-LABEL: 'cmp_float_ord' 258; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 259; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 260; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 261; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 262; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 263; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 264; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 265; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 266; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 267; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 268; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 269; 270; SSE41-LABEL: 'cmp_float_ord' 271; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 272; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 273; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 274; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 275; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 276; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 277; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 278; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 279; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 280; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 281; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 282; 283; SSE42-LABEL: 'cmp_float_ord' 284; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 285; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 286; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 287; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 288; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 289; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 290; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 291; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 292; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 293; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 294; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 295; 296; AVX-LABEL: 'cmp_float_ord' 297; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 298; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 299; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 300; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 301; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 302; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 303; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 304; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 305; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 306; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 307; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 308; 309; AVX512-LABEL: 'cmp_float_ord' 310; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ord float undef, undef 311; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ord <2 x float> undef, undef 312; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ord <4 x float> undef, undef 313; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ord <8 x float> undef, undef 314; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ord <16 x float> undef, undef 315; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ord double undef, undef 316; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ord <2 x double> undef, undef 317; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ord <4 x double> undef, undef 318; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ord <8 x double> undef, undef 319; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ord <16 x double> undef, undef 320; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 321; 322 %F32 = fcmp ord float undef, undef 323 %V2F32 = fcmp ord <2 x float> undef, undef 324 %V4F32 = fcmp ord <4 x float> undef, undef 325 %V8F32 = fcmp ord <8 x float> undef, undef 326 %V16F32 = fcmp ord <16 x float> undef, undef 327 328 %F64 = fcmp ord double undef, undef 329 %V2F64 = fcmp ord <2 x double> undef, undef 330 %V4F64 = fcmp ord <4 x double> undef, undef 331 %V8F64 = fcmp ord <8 x double> undef, undef 332 %V16F64 = fcmp ord <16 x double> undef, undef 333 334 ret i32 undef 335} 336 337define i32 @cmp_float_oge(i32 %arg) { 338; SSE2-LABEL: 'cmp_float_oge' 339; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 340; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 341; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 342; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 343; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 344; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 345; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 346; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 347; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 348; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 349; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 350; 351; SSE3-LABEL: 'cmp_float_oge' 352; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 353; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 354; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 355; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 356; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 357; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 358; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 359; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 360; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 361; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 362; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 363; 364; SSSE3-LABEL: 'cmp_float_oge' 365; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 366; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 367; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 368; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 369; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 370; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 371; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 372; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 373; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 374; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 375; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 376; 377; SSE41-LABEL: 'cmp_float_oge' 378; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 379; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 380; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 381; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 382; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 383; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 384; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 385; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 386; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 387; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 388; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 389; 390; SSE42-LABEL: 'cmp_float_oge' 391; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 392; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 393; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 394; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 395; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 396; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 397; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 398; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 399; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 400; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 401; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 402; 403; AVX-LABEL: 'cmp_float_oge' 404; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 405; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 406; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 407; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 408; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 409; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 410; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 411; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 412; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 413; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 414; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 415; 416; AVX512-LABEL: 'cmp_float_oge' 417; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp oge float undef, undef 418; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp oge <2 x float> undef, undef 419; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp oge <4 x float> undef, undef 420; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp oge <8 x float> undef, undef 421; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp oge <16 x float> undef, undef 422; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp oge double undef, undef 423; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp oge <2 x double> undef, undef 424; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp oge <4 x double> undef, undef 425; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp oge <8 x double> undef, undef 426; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp oge <16 x double> undef, undef 427; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 428; 429 %F32 = fcmp oge float undef, undef 430 %V2F32 = fcmp oge <2 x float> undef, undef 431 %V4F32 = fcmp oge <4 x float> undef, undef 432 %V8F32 = fcmp oge <8 x float> undef, undef 433 %V16F32 = fcmp oge <16 x float> undef, undef 434 435 %F64 = fcmp oge double undef, undef 436 %V2F64 = fcmp oge <2 x double> undef, undef 437 %V4F64 = fcmp oge <4 x double> undef, undef 438 %V8F64 = fcmp oge <8 x double> undef, undef 439 %V16F64 = fcmp oge <16 x double> undef, undef 440 441 ret i32 undef 442} 443 444define i32 @cmp_float_ogt(i32 %arg) { 445; SSE2-LABEL: 'cmp_float_ogt' 446; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 447; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 448; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 449; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 450; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 451; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 452; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 453; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 454; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 455; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 456; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 457; 458; SSE3-LABEL: 'cmp_float_ogt' 459; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 460; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 461; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 462; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 463; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 464; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 465; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 466; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 467; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 468; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 469; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 470; 471; SSSE3-LABEL: 'cmp_float_ogt' 472; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 473; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 474; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 475; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 476; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 477; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 478; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 479; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 480; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 481; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 482; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 483; 484; SSE41-LABEL: 'cmp_float_ogt' 485; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 486; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 487; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 488; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 489; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 490; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 491; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 492; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 493; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 494; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 495; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 496; 497; SSE42-LABEL: 'cmp_float_ogt' 498; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 499; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 500; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 501; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 502; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 503; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 504; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 505; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 506; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 507; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 508; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 509; 510; AVX-LABEL: 'cmp_float_ogt' 511; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 512; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 513; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 514; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 515; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 516; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 517; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 518; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 519; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 520; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 521; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 522; 523; AVX512-LABEL: 'cmp_float_ogt' 524; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ogt float undef, undef 525; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ogt <2 x float> undef, undef 526; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ogt <4 x float> undef, undef 527; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ogt <8 x float> undef, undef 528; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ogt <16 x float> undef, undef 529; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ogt double undef, undef 530; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ogt <2 x double> undef, undef 531; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ogt <4 x double> undef, undef 532; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ogt <8 x double> undef, undef 533; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ogt <16 x double> undef, undef 534; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 535; 536 %F32 = fcmp ogt float undef, undef 537 %V2F32 = fcmp ogt <2 x float> undef, undef 538 %V4F32 = fcmp ogt <4 x float> undef, undef 539 %V8F32 = fcmp ogt <8 x float> undef, undef 540 %V16F32 = fcmp ogt <16 x float> undef, undef 541 542 %F64 = fcmp ogt double undef, undef 543 %V2F64 = fcmp ogt <2 x double> undef, undef 544 %V4F64 = fcmp ogt <4 x double> undef, undef 545 %V8F64 = fcmp ogt <8 x double> undef, undef 546 %V16F64 = fcmp ogt <16 x double> undef, undef 547 548 ret i32 undef 549} 550 551define i32 @cmp_float_ole(i32 %arg) { 552; SSE2-LABEL: 'cmp_float_ole' 553; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 554; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 555; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 556; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 557; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 558; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 559; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 560; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 561; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 562; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 563; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 564; 565; SSE3-LABEL: 'cmp_float_ole' 566; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 567; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 568; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 569; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 570; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 571; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 572; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 573; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 574; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 575; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 576; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 577; 578; SSSE3-LABEL: 'cmp_float_ole' 579; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 580; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 581; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 582; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 583; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 584; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 585; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 586; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 587; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 588; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 589; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 590; 591; SSE41-LABEL: 'cmp_float_ole' 592; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 593; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 594; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 595; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 596; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 597; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 598; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 599; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 600; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 601; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 602; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 603; 604; SSE42-LABEL: 'cmp_float_ole' 605; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 606; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 607; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 608; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 609; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 610; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 611; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 612; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 613; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 614; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 615; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 616; 617; AVX-LABEL: 'cmp_float_ole' 618; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 619; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 620; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 621; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 622; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 623; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 624; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 625; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 626; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 627; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 628; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 629; 630; AVX512-LABEL: 'cmp_float_ole' 631; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ole float undef, undef 632; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ole <2 x float> undef, undef 633; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ole <4 x float> undef, undef 634; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ole <8 x float> undef, undef 635; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ole <16 x float> undef, undef 636; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ole double undef, undef 637; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ole <2 x double> undef, undef 638; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ole <4 x double> undef, undef 639; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ole <8 x double> undef, undef 640; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ole <16 x double> undef, undef 641; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 642; 643 %F32 = fcmp ole float undef, undef 644 %V2F32 = fcmp ole <2 x float> undef, undef 645 %V4F32 = fcmp ole <4 x float> undef, undef 646 %V8F32 = fcmp ole <8 x float> undef, undef 647 %V16F32 = fcmp ole <16 x float> undef, undef 648 649 %F64 = fcmp ole double undef, undef 650 %V2F64 = fcmp ole <2 x double> undef, undef 651 %V4F64 = fcmp ole <4 x double> undef, undef 652 %V8F64 = fcmp ole <8 x double> undef, undef 653 %V16F64 = fcmp ole <16 x double> undef, undef 654 655 ret i32 undef 656} 657 658define i32 @cmp_float_olt(i32 %arg) { 659; SSE2-LABEL: 'cmp_float_olt' 660; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 661; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 662; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 663; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 664; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 665; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 666; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 667; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 668; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 669; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 670; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 671; 672; SSE3-LABEL: 'cmp_float_olt' 673; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 674; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 675; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 676; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 677; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 678; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 679; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 680; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 681; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 682; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 683; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 684; 685; SSSE3-LABEL: 'cmp_float_olt' 686; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 687; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 688; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 689; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 690; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 691; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 692; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 693; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 694; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 695; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 696; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 697; 698; SSE41-LABEL: 'cmp_float_olt' 699; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 700; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 701; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 702; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 703; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 704; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 705; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 706; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 707; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 708; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 709; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 710; 711; SSE42-LABEL: 'cmp_float_olt' 712; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 713; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 714; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 715; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 716; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 717; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 718; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 719; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 720; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 721; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 722; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 723; 724; AVX-LABEL: 'cmp_float_olt' 725; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 726; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 727; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 728; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 729; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 730; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 731; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 732; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 733; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 734; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 735; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 736; 737; AVX512-LABEL: 'cmp_float_olt' 738; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp olt float undef, undef 739; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp olt <2 x float> undef, undef 740; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp olt <4 x float> undef, undef 741; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp olt <8 x float> undef, undef 742; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp olt <16 x float> undef, undef 743; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp olt double undef, undef 744; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp olt <2 x double> undef, undef 745; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp olt <4 x double> undef, undef 746; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp olt <8 x double> undef, undef 747; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp olt <16 x double> undef, undef 748; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 749; 750 %F32 = fcmp olt float undef, undef 751 %V2F32 = fcmp olt <2 x float> undef, undef 752 %V4F32 = fcmp olt <4 x float> undef, undef 753 %V8F32 = fcmp olt <8 x float> undef, undef 754 %V16F32 = fcmp olt <16 x float> undef, undef 755 756 %F64 = fcmp olt double undef, undef 757 %V2F64 = fcmp olt <2 x double> undef, undef 758 %V4F64 = fcmp olt <4 x double> undef, undef 759 %V8F64 = fcmp olt <8 x double> undef, undef 760 %V16F64 = fcmp olt <16 x double> undef, undef 761 762 ret i32 undef 763} 764 765define i32 @cmp_float_ueq(i32 %arg) { 766; SSE2-LABEL: 'cmp_float_ueq' 767; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 768; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 769; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 770; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 771; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 772; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 773; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 774; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 775; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 776; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 777; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 778; 779; SSE3-LABEL: 'cmp_float_ueq' 780; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 781; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 782; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 783; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 784; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 785; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 786; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 787; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 788; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 789; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 790; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 791; 792; SSSE3-LABEL: 'cmp_float_ueq' 793; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 794; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 795; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 796; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 797; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 798; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 799; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 800; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 801; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 802; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 803; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 804; 805; SSE41-LABEL: 'cmp_float_ueq' 806; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 807; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 808; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 809; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 810; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 811; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 812; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 813; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 814; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 815; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 816; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 817; 818; SSE42-LABEL: 'cmp_float_ueq' 819; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 820; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 821; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 822; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 823; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 824; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 825; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 826; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 827; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 828; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 829; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 830; 831; AVX-LABEL: 'cmp_float_ueq' 832; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 833; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 834; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 835; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 836; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 837; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 838; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 839; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 840; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 841; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 842; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 843; 844; AVX512-LABEL: 'cmp_float_ueq' 845; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ueq float undef, undef 846; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ueq <2 x float> undef, undef 847; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ueq <4 x float> undef, undef 848; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ueq <8 x float> undef, undef 849; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ueq <16 x float> undef, undef 850; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ueq double undef, undef 851; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ueq <2 x double> undef, undef 852; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ueq <4 x double> undef, undef 853; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ueq <8 x double> undef, undef 854; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ueq <16 x double> undef, undef 855; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 856; 857 %F32 = fcmp ueq float undef, undef 858 %V2F32 = fcmp ueq <2 x float> undef, undef 859 %V4F32 = fcmp ueq <4 x float> undef, undef 860 %V8F32 = fcmp ueq <8 x float> undef, undef 861 %V16F32 = fcmp ueq <16 x float> undef, undef 862 863 %F64 = fcmp ueq double undef, undef 864 %V2F64 = fcmp ueq <2 x double> undef, undef 865 %V4F64 = fcmp ueq <4 x double> undef, undef 866 %V8F64 = fcmp ueq <8 x double> undef, undef 867 %V16F64 = fcmp ueq <16 x double> undef, undef 868 869 ret i32 undef 870} 871 872define i32 @cmp_float_une(i32 %arg) { 873; SSE2-LABEL: 'cmp_float_une' 874; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 875; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 876; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 877; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 878; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 879; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 880; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 881; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 882; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 883; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 884; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 885; 886; SSE3-LABEL: 'cmp_float_une' 887; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 888; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 889; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 890; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 891; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 892; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 893; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 894; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 895; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 896; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 897; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 898; 899; SSSE3-LABEL: 'cmp_float_une' 900; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 901; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 902; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 903; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 904; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 905; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 906; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 907; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 908; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 909; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 910; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 911; 912; SSE41-LABEL: 'cmp_float_une' 913; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 914; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 915; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 916; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 917; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 918; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 919; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 920; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 921; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 922; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 923; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 924; 925; SSE42-LABEL: 'cmp_float_une' 926; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 927; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 928; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 929; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 930; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 931; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 932; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 933; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 934; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 935; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 936; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 937; 938; AVX-LABEL: 'cmp_float_une' 939; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 940; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 941; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 942; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 943; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 944; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 945; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 946; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 947; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 948; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 949; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 950; 951; AVX512-LABEL: 'cmp_float_une' 952; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp une float undef, undef 953; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp une <2 x float> undef, undef 954; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp une <4 x float> undef, undef 955; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp une <8 x float> undef, undef 956; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp une <16 x float> undef, undef 957; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp une double undef, undef 958; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp une <2 x double> undef, undef 959; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp une <4 x double> undef, undef 960; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp une <8 x double> undef, undef 961; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp une <16 x double> undef, undef 962; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 963; 964 %F32 = fcmp une float undef, undef 965 %V2F32 = fcmp une <2 x float> undef, undef 966 %V4F32 = fcmp une <4 x float> undef, undef 967 %V8F32 = fcmp une <8 x float> undef, undef 968 %V16F32 = fcmp une <16 x float> undef, undef 969 970 %F64 = fcmp une double undef, undef 971 %V2F64 = fcmp une <2 x double> undef, undef 972 %V4F64 = fcmp une <4 x double> undef, undef 973 %V8F64 = fcmp une <8 x double> undef, undef 974 %V16F64 = fcmp une <16 x double> undef, undef 975 976 ret i32 undef 977} 978 979define i32 @cmp_float_uno(i32 %arg) { 980; SSE2-LABEL: 'cmp_float_uno' 981; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 982; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 983; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 984; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 985; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 986; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 987; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 988; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 989; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 990; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 991; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 992; 993; SSE3-LABEL: 'cmp_float_uno' 994; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 995; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 996; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 997; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 998; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 999; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1000; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1001; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1002; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1003; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1004; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1005; 1006; SSSE3-LABEL: 'cmp_float_uno' 1007; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 1008; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 1009; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 1010; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 1011; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 1012; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1013; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1014; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1015; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1016; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1017; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1018; 1019; SSE41-LABEL: 'cmp_float_uno' 1020; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 1021; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 1022; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 1023; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 1024; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 1025; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1026; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1027; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1028; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1029; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1030; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1031; 1032; SSE42-LABEL: 'cmp_float_uno' 1033; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 1034; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 1035; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 1036; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 1037; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 1038; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1039; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1040; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1041; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1042; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1043; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1044; 1045; AVX-LABEL: 'cmp_float_uno' 1046; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 1047; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 1048; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 1049; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 1050; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 1051; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1052; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1053; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1054; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1055; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1056; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1057; 1058; AVX512-LABEL: 'cmp_float_uno' 1059; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uno float undef, undef 1060; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uno <2 x float> undef, undef 1061; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uno <4 x float> undef, undef 1062; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp uno <8 x float> undef, undef 1063; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp uno <16 x float> undef, undef 1064; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uno double undef, undef 1065; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uno <2 x double> undef, undef 1066; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp uno <4 x double> undef, undef 1067; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp uno <8 x double> undef, undef 1068; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp uno <16 x double> undef, undef 1069; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1070; 1071 %F32 = fcmp uno float undef, undef 1072 %V2F32 = fcmp uno <2 x float> undef, undef 1073 %V4F32 = fcmp uno <4 x float> undef, undef 1074 %V8F32 = fcmp uno <8 x float> undef, undef 1075 %V16F32 = fcmp uno <16 x float> undef, undef 1076 1077 %F64 = fcmp uno double undef, undef 1078 %V2F64 = fcmp uno <2 x double> undef, undef 1079 %V4F64 = fcmp uno <4 x double> undef, undef 1080 %V8F64 = fcmp uno <8 x double> undef, undef 1081 %V16F64 = fcmp uno <16 x double> undef, undef 1082 1083 ret i32 undef 1084} 1085 1086define i32 @cmp_float_uge(i32 %arg) { 1087; SSE2-LABEL: 'cmp_float_uge' 1088; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1089; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1090; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1091; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1092; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1093; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1094; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1095; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1096; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1097; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1098; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1099; 1100; SSE3-LABEL: 'cmp_float_uge' 1101; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1102; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1103; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1104; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1105; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1106; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1107; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1108; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1109; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1110; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1111; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1112; 1113; SSSE3-LABEL: 'cmp_float_uge' 1114; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1115; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1116; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1117; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1118; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1119; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1120; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1121; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1122; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1123; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1124; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1125; 1126; SSE41-LABEL: 'cmp_float_uge' 1127; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1128; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1129; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1130; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1131; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1132; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1133; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1134; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1135; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1136; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1137; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1138; 1139; SSE42-LABEL: 'cmp_float_uge' 1140; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1141; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1142; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1143; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1144; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1145; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1146; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1147; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1148; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1149; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1150; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1151; 1152; AVX-LABEL: 'cmp_float_uge' 1153; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1154; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1155; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1156; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1157; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1158; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1159; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1160; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1161; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1162; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1163; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1164; 1165; AVX512-LABEL: 'cmp_float_uge' 1166; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp uge float undef, undef 1167; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp uge <2 x float> undef, undef 1168; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp uge <4 x float> undef, undef 1169; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp uge <8 x float> undef, undef 1170; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp uge <16 x float> undef, undef 1171; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp uge double undef, undef 1172; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp uge <2 x double> undef, undef 1173; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp uge <4 x double> undef, undef 1174; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp uge <8 x double> undef, undef 1175; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp uge <16 x double> undef, undef 1176; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1177; 1178 %F32 = fcmp uge float undef, undef 1179 %V2F32 = fcmp uge <2 x float> undef, undef 1180 %V4F32 = fcmp uge <4 x float> undef, undef 1181 %V8F32 = fcmp uge <8 x float> undef, undef 1182 %V16F32 = fcmp uge <16 x float> undef, undef 1183 1184 %F64 = fcmp uge double undef, undef 1185 %V2F64 = fcmp uge <2 x double> undef, undef 1186 %V4F64 = fcmp uge <4 x double> undef, undef 1187 %V8F64 = fcmp uge <8 x double> undef, undef 1188 %V16F64 = fcmp uge <16 x double> undef, undef 1189 1190 ret i32 undef 1191} 1192 1193define i32 @cmp_float_ugt(i32 %arg) { 1194; SSE2-LABEL: 'cmp_float_ugt' 1195; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1196; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1197; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1198; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1199; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1200; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1201; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1202; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1203; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1204; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1205; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1206; 1207; SSE3-LABEL: 'cmp_float_ugt' 1208; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1209; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1210; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1211; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1212; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1213; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1214; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1215; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1216; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1217; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1218; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1219; 1220; SSSE3-LABEL: 'cmp_float_ugt' 1221; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1222; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1223; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1224; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1225; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1226; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1227; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1228; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1229; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1230; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1231; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1232; 1233; SSE41-LABEL: 'cmp_float_ugt' 1234; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1235; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1236; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1237; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1238; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1239; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1240; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1241; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1242; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1243; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1244; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1245; 1246; SSE42-LABEL: 'cmp_float_ugt' 1247; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1248; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1249; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1250; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1251; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1252; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1253; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1254; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1255; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1256; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1257; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1258; 1259; AVX-LABEL: 'cmp_float_ugt' 1260; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1261; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1262; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1263; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1264; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1265; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1266; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1267; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1268; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1269; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1270; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1271; 1272; AVX512-LABEL: 'cmp_float_ugt' 1273; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ugt float undef, undef 1274; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ugt <2 x float> undef, undef 1275; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ugt <4 x float> undef, undef 1276; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ugt <8 x float> undef, undef 1277; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ugt <16 x float> undef, undef 1278; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ugt double undef, undef 1279; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ugt <2 x double> undef, undef 1280; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ugt <4 x double> undef, undef 1281; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ugt <8 x double> undef, undef 1282; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ugt <16 x double> undef, undef 1283; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1284; 1285 %F32 = fcmp ugt float undef, undef 1286 %V2F32 = fcmp ugt <2 x float> undef, undef 1287 %V4F32 = fcmp ugt <4 x float> undef, undef 1288 %V8F32 = fcmp ugt <8 x float> undef, undef 1289 %V16F32 = fcmp ugt <16 x float> undef, undef 1290 1291 %F64 = fcmp ugt double undef, undef 1292 %V2F64 = fcmp ugt <2 x double> undef, undef 1293 %V4F64 = fcmp ugt <4 x double> undef, undef 1294 %V8F64 = fcmp ugt <8 x double> undef, undef 1295 %V16F64 = fcmp ugt <16 x double> undef, undef 1296 1297 ret i32 undef 1298} 1299 1300define i32 @cmp_float_ule(i32 %arg) { 1301; SSE2-LABEL: 'cmp_float_ule' 1302; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1303; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1304; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1305; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1306; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1307; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1308; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1309; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1310; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1311; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1312; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1313; 1314; SSE3-LABEL: 'cmp_float_ule' 1315; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1316; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1317; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1318; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1319; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1320; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1321; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1322; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1323; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1324; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1325; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1326; 1327; SSSE3-LABEL: 'cmp_float_ule' 1328; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1329; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1330; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1331; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1332; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1333; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1334; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1335; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1336; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1337; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1338; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1339; 1340; SSE41-LABEL: 'cmp_float_ule' 1341; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1342; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1343; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1344; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1345; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1346; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1347; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1348; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1349; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1350; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1351; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1352; 1353; SSE42-LABEL: 'cmp_float_ule' 1354; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1355; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1356; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1357; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1358; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1359; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1360; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1361; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1362; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1363; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1364; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1365; 1366; AVX-LABEL: 'cmp_float_ule' 1367; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1368; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1369; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1370; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1371; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1372; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1373; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1374; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1375; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1376; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1377; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1378; 1379; AVX512-LABEL: 'cmp_float_ule' 1380; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ule float undef, undef 1381; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ule <2 x float> undef, undef 1382; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ule <4 x float> undef, undef 1383; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ule <8 x float> undef, undef 1384; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ule <16 x float> undef, undef 1385; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ule double undef, undef 1386; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ule <2 x double> undef, undef 1387; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ule <4 x double> undef, undef 1388; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ule <8 x double> undef, undef 1389; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ule <16 x double> undef, undef 1390; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1391; 1392 %F32 = fcmp ule float undef, undef 1393 %V2F32 = fcmp ule <2 x float> undef, undef 1394 %V4F32 = fcmp ule <4 x float> undef, undef 1395 %V8F32 = fcmp ule <8 x float> undef, undef 1396 %V16F32 = fcmp ule <16 x float> undef, undef 1397 1398 %F64 = fcmp ule double undef, undef 1399 %V2F64 = fcmp ule <2 x double> undef, undef 1400 %V4F64 = fcmp ule <4 x double> undef, undef 1401 %V8F64 = fcmp ule <8 x double> undef, undef 1402 %V16F64 = fcmp ule <16 x double> undef, undef 1403 1404 ret i32 undef 1405} 1406 1407define i32 @cmp_float_ult(i32 %arg) { 1408; SSE2-LABEL: 'cmp_float_ult' 1409; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1410; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1411; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1412; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1413; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1414; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1415; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1416; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1417; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1418; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1419; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1420; 1421; SSE3-LABEL: 'cmp_float_ult' 1422; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1423; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1424; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1425; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1426; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1427; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1428; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1429; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1430; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1431; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1432; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1433; 1434; SSSE3-LABEL: 'cmp_float_ult' 1435; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1436; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1437; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1438; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1439; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1440; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1441; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1442; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1443; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1444; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1445; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1446; 1447; SSE41-LABEL: 'cmp_float_ult' 1448; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1449; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1450; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1451; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1452; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1453; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1454; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1455; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1456; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1457; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1458; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1459; 1460; SSE42-LABEL: 'cmp_float_ult' 1461; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1462; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1463; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1464; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1465; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1466; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1467; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1468; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1469; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1470; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1471; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1472; 1473; AVX-LABEL: 'cmp_float_ult' 1474; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1475; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1476; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1477; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1478; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1479; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1480; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1481; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1482; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1483; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1484; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1485; 1486; AVX512-LABEL: 'cmp_float_ult' 1487; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp ult float undef, undef 1488; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp ult <2 x float> undef, undef 1489; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp ult <4 x float> undef, undef 1490; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp ult <8 x float> undef, undef 1491; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp ult <16 x float> undef, undef 1492; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp ult double undef, undef 1493; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp ult <2 x double> undef, undef 1494; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp ult <4 x double> undef, undef 1495; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp ult <8 x double> undef, undef 1496; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp ult <16 x double> undef, undef 1497; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1498; 1499 %F32 = fcmp ult float undef, undef 1500 %V2F32 = fcmp ult <2 x float> undef, undef 1501 %V4F32 = fcmp ult <4 x float> undef, undef 1502 %V8F32 = fcmp ult <8 x float> undef, undef 1503 %V16F32 = fcmp ult <16 x float> undef, undef 1504 1505 %F64 = fcmp ult double undef, undef 1506 %V2F64 = fcmp ult <2 x double> undef, undef 1507 %V4F64 = fcmp ult <4 x double> undef, undef 1508 %V8F64 = fcmp ult <8 x double> undef, undef 1509 %V16F64 = fcmp ult <16 x double> undef, undef 1510 1511 ret i32 undef 1512} 1513 1514define i32 @cmp_float_false(i32 %arg) { 1515; SSE2-LABEL: 'cmp_float_false' 1516; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1517; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1518; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1519; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1520; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1521; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1522; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1523; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1524; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1525; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1526; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1527; 1528; SSE3-LABEL: 'cmp_float_false' 1529; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1530; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1531; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1532; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1533; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1534; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1535; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1536; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1537; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1538; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1539; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1540; 1541; SSSE3-LABEL: 'cmp_float_false' 1542; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1543; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1544; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1545; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1546; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1547; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1548; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1549; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1550; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1551; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1552; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1553; 1554; SSE41-LABEL: 'cmp_float_false' 1555; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1556; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1557; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1558; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1559; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1560; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1561; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1562; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1563; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1564; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1565; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1566; 1567; SSE42-LABEL: 'cmp_float_false' 1568; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1569; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1570; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1571; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1572; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1573; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1574; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1575; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1576; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1577; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1578; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1579; 1580; AVX-LABEL: 'cmp_float_false' 1581; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1582; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1583; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1584; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1585; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1586; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1587; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1588; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1589; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1590; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1591; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1592; 1593; AVX512-LABEL: 'cmp_float_false' 1594; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp false float undef, undef 1595; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp false <2 x float> undef, undef 1596; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp false <4 x float> undef, undef 1597; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp false <8 x float> undef, undef 1598; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp false <16 x float> undef, undef 1599; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp false double undef, undef 1600; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp false <2 x double> undef, undef 1601; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp false <4 x double> undef, undef 1602; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp false <8 x double> undef, undef 1603; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp false <16 x double> undef, undef 1604; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1605; 1606 %F32 = fcmp false float undef, undef 1607 %V2F32 = fcmp false <2 x float> undef, undef 1608 %V4F32 = fcmp false <4 x float> undef, undef 1609 %V8F32 = fcmp false <8 x float> undef, undef 1610 %V16F32 = fcmp false <16 x float> undef, undef 1611 1612 %F64 = fcmp false double undef, undef 1613 %V2F64 = fcmp false <2 x double> undef, undef 1614 %V4F64 = fcmp false <4 x double> undef, undef 1615 %V8F64 = fcmp false <8 x double> undef, undef 1616 %V16F64 = fcmp false <16 x double> undef, undef 1617 1618 ret i32 undef 1619} 1620 1621define i32 @cmp_float_true(i32 %arg) { 1622; SSE2-LABEL: 'cmp_float_true' 1623; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1624; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1625; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1626; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1627; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1628; SSE2-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1629; SSE2-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1630; SSE2-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1631; SSE2-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1632; SSE2-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1633; SSE2-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1634; 1635; SSE3-LABEL: 'cmp_float_true' 1636; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1637; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1638; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1639; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1640; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1641; SSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1642; SSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1643; SSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1644; SSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1645; SSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1646; SSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1647; 1648; SSSE3-LABEL: 'cmp_float_true' 1649; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1650; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1651; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1652; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1653; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1654; SSSE3-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1655; SSSE3-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1656; SSSE3-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1657; SSSE3-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1658; SSSE3-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1659; SSSE3-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1660; 1661; SSE41-LABEL: 'cmp_float_true' 1662; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1663; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1664; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1665; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1666; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1667; SSE41-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1668; SSE41-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1669; SSE41-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1670; SSE41-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1671; SSE41-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1672; SSE41-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1673; 1674; SSE42-LABEL: 'cmp_float_true' 1675; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1676; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1677; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1678; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1679; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1680; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1681; SSE42-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1682; SSE42-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1683; SSE42-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1684; SSE42-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1685; SSE42-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1686; 1687; AVX-LABEL: 'cmp_float_true' 1688; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1689; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1690; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1691; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1692; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1693; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1694; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1695; AVX-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1696; AVX-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1697; AVX-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1698; AVX-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1699; 1700; AVX512-LABEL: 'cmp_float_true' 1701; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F32 = fcmp true float undef, undef 1702; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F32 = fcmp true <2 x float> undef, undef 1703; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F32 = fcmp true <4 x float> undef, undef 1704; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F32 = fcmp true <8 x float> undef, undef 1705; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16F32 = fcmp true <16 x float> undef, undef 1706; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %F64 = fcmp true double undef, undef 1707; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2F64 = fcmp true <2 x double> undef, undef 1708; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4F64 = fcmp true <4 x double> undef, undef 1709; AVX512-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8F64 = fcmp true <8 x double> undef, undef 1710; AVX512-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16F64 = fcmp true <16 x double> undef, undef 1711; AVX512-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1712; 1713 %F32 = fcmp true float undef, undef 1714 %V2F32 = fcmp true <2 x float> undef, undef 1715 %V4F32 = fcmp true <4 x float> undef, undef 1716 %V8F32 = fcmp true <8 x float> undef, undef 1717 %V16F32 = fcmp true <16 x float> undef, undef 1718 1719 %F64 = fcmp true double undef, undef 1720 %V2F64 = fcmp true <2 x double> undef, undef 1721 %V4F64 = fcmp true <4 x double> undef, undef 1722 %V8F64 = fcmp true <8 x double> undef, undef 1723 %V16F64 = fcmp true <16 x double> undef, undef 1724 1725 ret i32 undef 1726} 1727