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