diff options
author | David Green <david.green@arm.com> | 2025-07-25 10:09:54 +0100 |
---|---|---|
committer | David Green <david.green@arm.com> | 2025-07-25 10:09:54 +0100 |
commit | 66dd09a232dd360938d2bec6e5152ec0f0e4ac1a (patch) | |
tree | df0a71863b488c5c076689367ca672762271413b /llvm | |
parent | 272da501398650789d9f4f22b63d543ca7ebbd92 (diff) | |
download | llvm-66dd09a232dd360938d2bec6e5152ec0f0e4ac1a.zip llvm-66dd09a232dd360938d2bec6e5152ec0f0e4ac1a.tar.gz llvm-66dd09a232dd360938d2bec6e5152ec0f0e4ac1a.tar.bz2 |
[AArch64] Change sve-fcmp.ll to test scalable vectors. NFC
Whilst testing fixed length vectors with +sve might be useful, this was just a
mistake in the generation of the test and should be using scalable vectors.
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll | 788 |
1 files changed, 394 insertions, 394 deletions
diff --git a/llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll b/llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll index 9801d14..388362f 100644 --- a/llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll +++ b/llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll @@ -3,619 +3,619 @@ define void @fcmp_oeq(i32 %arg) { ; CHECK-LABEL: 'fcmp_oeq' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp oeq <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp oeq <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp oeq <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp oeq <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp oeq <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp oeq <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp oeq <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp oeq <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp oeq <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp oeq <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp oeq <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp oeq <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp oeq <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp oeq <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp oeq <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp oeq <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp oeq <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp oeq <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp oeq <2 x float> undef, undef - %v4f32 = fcmp oeq <4 x float> undef, undef - %v8f32 = fcmp oeq <8 x float> undef, undef - %v2f64 = fcmp oeq <2 x double> undef, undef - %v4f64 = fcmp oeq <4 x double> undef, undef - %v2f16 = fcmp oeq <2 x half> undef, undef - %v4f16 = fcmp oeq <4 x half> undef, undef - %v8f16 = fcmp oeq <8 x half> undef, undef - %v16f16 = fcmp oeq <16 x half> undef, undef + %v2f32 = fcmp oeq <vscale x 2 x float> undef, undef + %v4f32 = fcmp oeq <vscale x 4 x float> undef, undef + %v8f32 = fcmp oeq <vscale x 8 x float> undef, undef + %v2f64 = fcmp oeq <vscale x 2 x double> undef, undef + %v4f64 = fcmp oeq <vscale x 4 x double> undef, undef + %v2f16 = fcmp oeq <vscale x 2 x half> undef, undef + %v4f16 = fcmp oeq <vscale x 4 x half> undef, undef + %v8f16 = fcmp oeq <vscale x 8 x half> undef, undef + %v16f16 = fcmp oeq <vscale x 16 x half> undef, undef ret void } define void @fcmp_oeq_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_oeq_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp oeq <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp oeq <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp oeq <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp oeq <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp oeq <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp oeq <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp oeq <2 x bfloat> undef, undef - %v4bf16 = fcmp oeq <4 x bfloat> undef, undef - %v8bf16 = fcmp oeq <8 x bfloat> undef, undef + %v2bf16 = fcmp oeq <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp oeq <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp oeq <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ogt(i32 %arg) { ; CHECK-LABEL: 'fcmp_ogt' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ogt <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ogt <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ogt <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ogt <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ogt <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ogt <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ogt <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ogt <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ogt <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ogt <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ogt <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ogt <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ogt <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ogt <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ogt <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ogt <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ogt <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ogt <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ogt <2 x float> undef, undef - %v4f32 = fcmp ogt <4 x float> undef, undef - %v8f32 = fcmp ogt <8 x float> undef, undef - %v2f64 = fcmp ogt <2 x double> undef, undef - %v4f64 = fcmp ogt <4 x double> undef, undef - %v2f16 = fcmp ogt <2 x half> undef, undef - %v4f16 = fcmp ogt <4 x half> undef, undef - %v8f16 = fcmp ogt <8 x half> undef, undef - %v16f16 = fcmp ogt <16 x half> undef, undef + %v2f32 = fcmp ogt <vscale x 2 x float> undef, undef + %v4f32 = fcmp ogt <vscale x 4 x float> undef, undef + %v8f32 = fcmp ogt <vscale x 8 x float> undef, undef + %v2f64 = fcmp ogt <vscale x 2 x double> undef, undef + %v4f64 = fcmp ogt <vscale x 4 x double> undef, undef + %v2f16 = fcmp ogt <vscale x 2 x half> undef, undef + %v4f16 = fcmp ogt <vscale x 4 x half> undef, undef + %v8f16 = fcmp ogt <vscale x 8 x half> undef, undef + %v16f16 = fcmp ogt <vscale x 16 x half> undef, undef ret void } define void @fcmp_ogt_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ogt_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ogt <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ogt <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ogt <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ogt <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ogt <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ogt <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ogt <2 x bfloat> undef, undef - %v4bf16 = fcmp ogt <4 x bfloat> undef, undef - %v8bf16 = fcmp ogt <8 x bfloat> undef, undef + %v2bf16 = fcmp ogt <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ogt <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ogt <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_oge(i32 %arg) { ; CHECK-LABEL: 'fcmp_oge' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp oge <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp oge <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp oge <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp oge <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp oge <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp oge <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp oge <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp oge <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp oge <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp oge <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp oge <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp oge <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp oge <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp oge <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp oge <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp oge <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp oge <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp oge <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp oge <2 x float> undef, undef - %v4f32 = fcmp oge <4 x float> undef, undef - %v8f32 = fcmp oge <8 x float> undef, undef - %v2f64 = fcmp oge <2 x double> undef, undef - %v4f64 = fcmp oge <4 x double> undef, undef - %v2f16 = fcmp oge <2 x half> undef, undef - %v4f16 = fcmp oge <4 x half> undef, undef - %v8f16 = fcmp oge <8 x half> undef, undef - %v16f16 = fcmp oge <16 x half> undef, undef + %v2f32 = fcmp oge <vscale x 2 x float> undef, undef + %v4f32 = fcmp oge <vscale x 4 x float> undef, undef + %v8f32 = fcmp oge <vscale x 8 x float> undef, undef + %v2f64 = fcmp oge <vscale x 2 x double> undef, undef + %v4f64 = fcmp oge <vscale x 4 x double> undef, undef + %v2f16 = fcmp oge <vscale x 2 x half> undef, undef + %v4f16 = fcmp oge <vscale x 4 x half> undef, undef + %v8f16 = fcmp oge <vscale x 8 x half> undef, undef + %v16f16 = fcmp oge <vscale x 16 x half> undef, undef ret void } define void @fcmp_oge_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_oge_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp oge <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp oge <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp oge <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp oge <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp oge <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp oge <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp oge <2 x bfloat> undef, undef - %v4bf16 = fcmp oge <4 x bfloat> undef, undef - %v8bf16 = fcmp oge <8 x bfloat> undef, undef + %v2bf16 = fcmp oge <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp oge <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp oge <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_olt(i32 %arg) { ; CHECK-LABEL: 'fcmp_olt' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp olt <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp olt <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp olt <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp olt <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp olt <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp olt <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp olt <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp olt <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp olt <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp olt <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp olt <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp olt <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp olt <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp olt <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp olt <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp olt <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp olt <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp olt <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp olt <2 x float> undef, undef - %v4f32 = fcmp olt <4 x float> undef, undef - %v8f32 = fcmp olt <8 x float> undef, undef - %v2f64 = fcmp olt <2 x double> undef, undef - %v4f64 = fcmp olt <4 x double> undef, undef - %v2f16 = fcmp olt <2 x half> undef, undef - %v4f16 = fcmp olt <4 x half> undef, undef - %v8f16 = fcmp olt <8 x half> undef, undef - %v16f16 = fcmp olt <16 x half> undef, undef + %v2f32 = fcmp olt <vscale x 2 x float> undef, undef + %v4f32 = fcmp olt <vscale x 4 x float> undef, undef + %v8f32 = fcmp olt <vscale x 8 x float> undef, undef + %v2f64 = fcmp olt <vscale x 2 x double> undef, undef + %v4f64 = fcmp olt <vscale x 4 x double> undef, undef + %v2f16 = fcmp olt <vscale x 2 x half> undef, undef + %v4f16 = fcmp olt <vscale x 4 x half> undef, undef + %v8f16 = fcmp olt <vscale x 8 x half> undef, undef + %v16f16 = fcmp olt <vscale x 16 x half> undef, undef ret void } define void @fcmp_olt_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_olt_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp olt <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp olt <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp olt <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp olt <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp olt <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp olt <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp olt <2 x bfloat> undef, undef - %v4bf16 = fcmp olt <4 x bfloat> undef, undef - %v8bf16 = fcmp olt <8 x bfloat> undef, undef + %v2bf16 = fcmp olt <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp olt <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp olt <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ole(i32 %arg) { ; CHECK-LABEL: 'fcmp_ole' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ole <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ole <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ole <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ole <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ole <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ole <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ole <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ole <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ole <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ole <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ole <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ole <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ole <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ole <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ole <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ole <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ole <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ole <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ole <2 x float> undef, undef - %v4f32 = fcmp ole <4 x float> undef, undef - %v8f32 = fcmp ole <8 x float> undef, undef - %v2f64 = fcmp ole <2 x double> undef, undef - %v4f64 = fcmp ole <4 x double> undef, undef - %v2f16 = fcmp ole <2 x half> undef, undef - %v4f16 = fcmp ole <4 x half> undef, undef - %v8f16 = fcmp ole <8 x half> undef, undef - %v16f16 = fcmp ole <16 x half> undef, undef + %v2f32 = fcmp ole <vscale x 2 x float> undef, undef + %v4f32 = fcmp ole <vscale x 4 x float> undef, undef + %v8f32 = fcmp ole <vscale x 8 x float> undef, undef + %v2f64 = fcmp ole <vscale x 2 x double> undef, undef + %v4f64 = fcmp ole <vscale x 4 x double> undef, undef + %v2f16 = fcmp ole <vscale x 2 x half> undef, undef + %v4f16 = fcmp ole <vscale x 4 x half> undef, undef + %v8f16 = fcmp ole <vscale x 8 x half> undef, undef + %v16f16 = fcmp ole <vscale x 16 x half> undef, undef ret void } define void @fcmp_ole_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ole_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ole <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ole <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ole <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ole <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ole <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ole <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ole <2 x bfloat> undef, undef - %v4bf16 = fcmp ole <4 x bfloat> undef, undef - %v8bf16 = fcmp ole <8 x bfloat> undef, undef + %v2bf16 = fcmp ole <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ole <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ole <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_one(i32 %arg) { ; CHECK-LABEL: 'fcmp_one' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp one <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp one <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp one <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp one <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp one <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp one <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp one <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp one <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp one <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp one <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp one <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp one <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp one <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp one <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp one <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp one <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp one <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp one <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp one <2 x float> undef, undef - %v4f32 = fcmp one <4 x float> undef, undef - %v8f32 = fcmp one <8 x float> undef, undef - %v2f64 = fcmp one <2 x double> undef, undef - %v4f64 = fcmp one <4 x double> undef, undef - %v2f16 = fcmp one <2 x half> undef, undef - %v4f16 = fcmp one <4 x half> undef, undef - %v8f16 = fcmp one <8 x half> undef, undef - %v16f16 = fcmp one <16 x half> undef, undef + %v2f32 = fcmp one <vscale x 2 x float> undef, undef + %v4f32 = fcmp one <vscale x 4 x float> undef, undef + %v8f32 = fcmp one <vscale x 8 x float> undef, undef + %v2f64 = fcmp one <vscale x 2 x double> undef, undef + %v4f64 = fcmp one <vscale x 4 x double> undef, undef + %v2f16 = fcmp one <vscale x 2 x half> undef, undef + %v4f16 = fcmp one <vscale x 4 x half> undef, undef + %v8f16 = fcmp one <vscale x 8 x half> undef, undef + %v16f16 = fcmp one <vscale x 16 x half> undef, undef ret void } define void @fcmp_one_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_one_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp one <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp one <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp one <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp one <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp one <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp one <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp one <2 x bfloat> undef, undef - %v4bf16 = fcmp one <4 x bfloat> undef, undef - %v8bf16 = fcmp one <8 x bfloat> undef, undef + %v2bf16 = fcmp one <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp one <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp one <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ord(i32 %arg) { ; CHECK-LABEL: 'fcmp_ord' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ord <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ord <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ord <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ord <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ord <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ord <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ord <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ord <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ord <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ord <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ord <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ord <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ord <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ord <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ord <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ord <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ord <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ord <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ord <2 x float> undef, undef - %v4f32 = fcmp ord <4 x float> undef, undef - %v8f32 = fcmp ord <8 x float> undef, undef - %v2f64 = fcmp ord <2 x double> undef, undef - %v4f64 = fcmp ord <4 x double> undef, undef - %v2f16 = fcmp ord <2 x half> undef, undef - %v4f16 = fcmp ord <4 x half> undef, undef - %v8f16 = fcmp ord <8 x half> undef, undef - %v16f16 = fcmp ord <16 x half> undef, undef + %v2f32 = fcmp ord <vscale x 2 x float> undef, undef + %v4f32 = fcmp ord <vscale x 4 x float> undef, undef + %v8f32 = fcmp ord <vscale x 8 x float> undef, undef + %v2f64 = fcmp ord <vscale x 2 x double> undef, undef + %v4f64 = fcmp ord <vscale x 4 x double> undef, undef + %v2f16 = fcmp ord <vscale x 2 x half> undef, undef + %v4f16 = fcmp ord <vscale x 4 x half> undef, undef + %v8f16 = fcmp ord <vscale x 8 x half> undef, undef + %v16f16 = fcmp ord <vscale x 16 x half> undef, undef ret void } define void @fcmp_ord_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ord_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ord <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ord <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ord <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ord <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ord <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ord <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ord <2 x bfloat> undef, undef - %v4bf16 = fcmp ord <4 x bfloat> undef, undef - %v8bf16 = fcmp ord <8 x bfloat> undef, undef + %v2bf16 = fcmp ord <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ord <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ord <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ueq(i32 %arg) { ; CHECK-LABEL: 'fcmp_ueq' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ueq <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ueq <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ueq <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ueq <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ueq <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ueq <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ueq <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ueq <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ueq <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ueq <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ueq <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ueq <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ueq <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ueq <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ueq <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ueq <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ueq <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ueq <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ueq <2 x float> undef, undef - %v4f32 = fcmp ueq <4 x float> undef, undef - %v8f32 = fcmp ueq <8 x float> undef, undef - %v2f64 = fcmp ueq <2 x double> undef, undef - %v4f64 = fcmp ueq <4 x double> undef, undef - %v2f16 = fcmp ueq <2 x half> undef, undef - %v4f16 = fcmp ueq <4 x half> undef, undef - %v8f16 = fcmp ueq <8 x half> undef, undef - %v16f16 = fcmp ueq <16 x half> undef, undef + %v2f32 = fcmp ueq <vscale x 2 x float> undef, undef + %v4f32 = fcmp ueq <vscale x 4 x float> undef, undef + %v8f32 = fcmp ueq <vscale x 8 x float> undef, undef + %v2f64 = fcmp ueq <vscale x 2 x double> undef, undef + %v4f64 = fcmp ueq <vscale x 4 x double> undef, undef + %v2f16 = fcmp ueq <vscale x 2 x half> undef, undef + %v4f16 = fcmp ueq <vscale x 4 x half> undef, undef + %v8f16 = fcmp ueq <vscale x 8 x half> undef, undef + %v16f16 = fcmp ueq <vscale x 16 x half> undef, undef ret void } define void @fcmp_ueq_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ueq_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ueq <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ueq <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ueq <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ueq <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ueq <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ueq <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ueq <2 x bfloat> undef, undef - %v4bf16 = fcmp ueq <4 x bfloat> undef, undef - %v8bf16 = fcmp ueq <8 x bfloat> undef, undef + %v2bf16 = fcmp ueq <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ueq <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ueq <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ugt(i32 %arg) { ; CHECK-LABEL: 'fcmp_ugt' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ugt <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ugt <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ugt <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ugt <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ugt <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ugt <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ugt <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ugt <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ugt <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ugt <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ugt <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ugt <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ugt <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ugt <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ugt <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ugt <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ugt <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ugt <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ugt <2 x float> undef, undef - %v4f32 = fcmp ugt <4 x float> undef, undef - %v8f32 = fcmp ugt <8 x float> undef, undef - %v2f64 = fcmp ugt <2 x double> undef, undef - %v4f64 = fcmp ugt <4 x double> undef, undef - %v2f16 = fcmp ugt <2 x half> undef, undef - %v4f16 = fcmp ugt <4 x half> undef, undef - %v8f16 = fcmp ugt <8 x half> undef, undef - %v16f16 = fcmp ugt <16 x half> undef, undef + %v2f32 = fcmp ugt <vscale x 2 x float> undef, undef + %v4f32 = fcmp ugt <vscale x 4 x float> undef, undef + %v8f32 = fcmp ugt <vscale x 8 x float> undef, undef + %v2f64 = fcmp ugt <vscale x 2 x double> undef, undef + %v4f64 = fcmp ugt <vscale x 4 x double> undef, undef + %v2f16 = fcmp ugt <vscale x 2 x half> undef, undef + %v4f16 = fcmp ugt <vscale x 4 x half> undef, undef + %v8f16 = fcmp ugt <vscale x 8 x half> undef, undef + %v16f16 = fcmp ugt <vscale x 16 x half> undef, undef ret void } define void @fcmp_ugt_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ugt_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ugt <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ugt <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ugt <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ugt <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ugt <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ugt <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ugt <2 x bfloat> undef, undef - %v4bf16 = fcmp ugt <4 x bfloat> undef, undef - %v8bf16 = fcmp ugt <8 x bfloat> undef, undef + %v2bf16 = fcmp ugt <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ugt <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ugt <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_uge(i32 %arg) { ; CHECK-LABEL: 'fcmp_uge' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp uge <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp uge <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp uge <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp uge <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp uge <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp uge <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp uge <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp uge <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp uge <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp uge <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp uge <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp uge <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp uge <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp uge <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp uge <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp uge <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp uge <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp uge <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp uge <2 x float> undef, undef - %v4f32 = fcmp uge <4 x float> undef, undef - %v8f32 = fcmp uge <8 x float> undef, undef - %v2f64 = fcmp uge <2 x double> undef, undef - %v4f64 = fcmp uge <4 x double> undef, undef - %v2f16 = fcmp uge <2 x half> undef, undef - %v4f16 = fcmp uge <4 x half> undef, undef - %v8f16 = fcmp uge <8 x half> undef, undef - %v16f16 = fcmp uge <16 x half> undef, undef + %v2f32 = fcmp uge <vscale x 2 x float> undef, undef + %v4f32 = fcmp uge <vscale x 4 x float> undef, undef + %v8f32 = fcmp uge <vscale x 8 x float> undef, undef + %v2f64 = fcmp uge <vscale x 2 x double> undef, undef + %v4f64 = fcmp uge <vscale x 4 x double> undef, undef + %v2f16 = fcmp uge <vscale x 2 x half> undef, undef + %v4f16 = fcmp uge <vscale x 4 x half> undef, undef + %v8f16 = fcmp uge <vscale x 8 x half> undef, undef + %v16f16 = fcmp uge <vscale x 16 x half> undef, undef ret void } define void @fcmp_uge_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_uge_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp uge <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp uge <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp uge <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp uge <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp uge <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp uge <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp uge <2 x bfloat> undef, undef - %v4bf16 = fcmp uge <4 x bfloat> undef, undef - %v8bf16 = fcmp uge <8 x bfloat> undef, undef + %v2bf16 = fcmp uge <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp uge <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp uge <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ult(i32 %arg) { ; CHECK-LABEL: 'fcmp_ult' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ult <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ult <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ult <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ult <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ult <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ult <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ult <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ult <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ult <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ult <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ult <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ult <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ult <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ult <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ult <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ult <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ult <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ult <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ult <2 x float> undef, undef - %v4f32 = fcmp ult <4 x float> undef, undef - %v8f32 = fcmp ult <8 x float> undef, undef - %v2f64 = fcmp ult <2 x double> undef, undef - %v4f64 = fcmp ult <4 x double> undef, undef - %v2f16 = fcmp ult <2 x half> undef, undef - %v4f16 = fcmp ult <4 x half> undef, undef - %v8f16 = fcmp ult <8 x half> undef, undef - %v16f16 = fcmp ult <16 x half> undef, undef + %v2f32 = fcmp ult <vscale x 2 x float> undef, undef + %v4f32 = fcmp ult <vscale x 4 x float> undef, undef + %v8f32 = fcmp ult <vscale x 8 x float> undef, undef + %v2f64 = fcmp ult <vscale x 2 x double> undef, undef + %v4f64 = fcmp ult <vscale x 4 x double> undef, undef + %v2f16 = fcmp ult <vscale x 2 x half> undef, undef + %v4f16 = fcmp ult <vscale x 4 x half> undef, undef + %v8f16 = fcmp ult <vscale x 8 x half> undef, undef + %v16f16 = fcmp ult <vscale x 16 x half> undef, undef ret void } define void @fcmp_ult_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ult_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ult <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ult <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ult <8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ult <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ult <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ult <vscale x 8 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ult <2 x bfloat> undef, undef - %v4bf16 = fcmp ult <4 x bfloat> undef, undef - %v8bf16 = fcmp ult <8 x bfloat> undef, undef + %v2bf16 = fcmp ult <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ult <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ult <vscale x 8 x bfloat> undef, undef ret void } define void @fcmp_ule(i32 %arg) { ; CHECK-LABEL: 'fcmp_ule' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ule <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ule <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ule <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ule <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ule <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ule <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ule <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ule <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ule <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp ule <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp ule <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp ule <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp ule <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp ule <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp ule <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp ule <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp ule <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp ule <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp ule <2 x float> undef, undef - %v4f32 = fcmp ule <4 x float> undef, undef - %v8f32 = fcmp ule <8 x float> undef, undef - %v2f64 = fcmp ule <2 x double> undef, undef - %v4f64 = fcmp ule <4 x double> undef, undef - %v2f16 = fcmp ule <2 x half> undef, undef - %v4f16 = fcmp ule <4 x half> undef, undef - %v8f16 = fcmp ule <8 x half> undef, undef - %v16f16 = fcmp ule <16 x half> undef, undef + %v2f32 = fcmp ule <vscale x 2 x float> undef, undef + %v4f32 = fcmp ule <vscale x 4 x float> undef, undef + %v8f32 = fcmp ule <vscale x 8 x float> undef, undef + %v2f64 = fcmp ule <vscale x 2 x double> undef, undef + %v4f64 = fcmp ule <vscale x 4 x double> undef, undef + %v2f16 = fcmp ule <vscale x 2 x half> undef, undef + %v4f16 = fcmp ule <vscale x 4 x half> undef, undef + %v8f16 = fcmp ule <vscale x 8 x half> undef, undef + %v16f16 = fcmp ule <vscale x 16 x half> undef, undef ret void } define void @fcmp_ule_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_ule_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp ule <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp ule <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp ule <8 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:7 Lat:7 SizeLat:7 for: %v16bf16 = fcmp ule <16 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp ule <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp ule <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp ule <vscale x 8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16bf16 = fcmp ule <vscale x 16 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp ule <2 x bfloat> undef, undef - %v4bf16 = fcmp ule <4 x bfloat> undef, undef - %v8bf16 = fcmp ule <8 x bfloat> undef, undef - %v16bf16 = fcmp ule <16 x bfloat> undef, undef + %v2bf16 = fcmp ule <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp ule <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp ule <vscale x 8 x bfloat> undef, undef + %v16bf16 = fcmp ule <vscale x 16 x bfloat> undef, undef ret void } define void @fcmp_une(i32 %arg) { ; CHECK-LABEL: 'fcmp_une' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp une <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp une <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp une <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp une <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp une <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp une <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp une <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp une <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp une <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp une <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp une <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp une <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp une <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp une <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp une <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp une <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp une <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp une <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp une <2 x float> undef, undef - %v4f32 = fcmp une <4 x float> undef, undef - %v8f32 = fcmp une <8 x float> undef, undef - %v2f64 = fcmp une <2 x double> undef, undef - %v4f64 = fcmp une <4 x double> undef, undef - %v2f16 = fcmp une <2 x half> undef, undef - %v4f16 = fcmp une <4 x half> undef, undef - %v8f16 = fcmp une <8 x half> undef, undef - %v16f16 = fcmp une <16 x half> undef, undef + %v2f32 = fcmp une <vscale x 2 x float> undef, undef + %v4f32 = fcmp une <vscale x 4 x float> undef, undef + %v8f32 = fcmp une <vscale x 8 x float> undef, undef + %v2f64 = fcmp une <vscale x 2 x double> undef, undef + %v4f64 = fcmp une <vscale x 4 x double> undef, undef + %v2f16 = fcmp une <vscale x 2 x half> undef, undef + %v4f16 = fcmp une <vscale x 4 x half> undef, undef + %v8f16 = fcmp une <vscale x 8 x half> undef, undef + %v16f16 = fcmp une <vscale x 16 x half> undef, undef ret void } define void @fcmp_une_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_une_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp une <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp une <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp une <8 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:7 Lat:7 SizeLat:7 for: %v16bf16 = fcmp une <16 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp une <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp une <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp une <vscale x 8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16bf16 = fcmp une <vscale x 16 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp une <2 x bfloat> undef, undef - %v4bf16 = fcmp une <4 x bfloat> undef, undef - %v8bf16 = fcmp une <8 x bfloat> undef, undef - %v16bf16 = fcmp une <16 x bfloat> undef, undef + %v2bf16 = fcmp une <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp une <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp une <vscale x 8 x bfloat> undef, undef + %v16bf16 = fcmp une <vscale x 16 x bfloat> undef, undef ret void } define void @fcmp_uno(i32 %arg) { ; CHECK-LABEL: 'fcmp_uno' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp uno <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp uno <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp uno <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp uno <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp uno <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp uno <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp uno <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp uno <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp uno <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp uno <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp uno <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp uno <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp uno <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp uno <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp uno <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp uno <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp uno <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp uno <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp uno <2 x float> undef, undef - %v4f32 = fcmp uno <4 x float> undef, undef - %v8f32 = fcmp uno <8 x float> undef, undef - %v2f64 = fcmp uno <2 x double> undef, undef - %v4f64 = fcmp uno <4 x double> undef, undef - %v2f16 = fcmp uno <2 x half> undef, undef - %v4f16 = fcmp uno <4 x half> undef, undef - %v8f16 = fcmp uno <8 x half> undef, undef - %v16f16 = fcmp uno <16 x half> undef, undef + %v2f32 = fcmp uno <vscale x 2 x float> undef, undef + %v4f32 = fcmp uno <vscale x 4 x float> undef, undef + %v8f32 = fcmp uno <vscale x 8 x float> undef, undef + %v2f64 = fcmp uno <vscale x 2 x double> undef, undef + %v4f64 = fcmp uno <vscale x 4 x double> undef, undef + %v2f16 = fcmp uno <vscale x 2 x half> undef, undef + %v4f16 = fcmp uno <vscale x 4 x half> undef, undef + %v8f16 = fcmp uno <vscale x 8 x half> undef, undef + %v16f16 = fcmp uno <vscale x 16 x half> undef, undef ret void } define void @fcmp_uno_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_uno_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp uno <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp uno <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp uno <8 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:7 Lat:7 SizeLat:7 for: %v16bf16 = fcmp uno <16 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp uno <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp uno <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp uno <vscale x 8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16bf16 = fcmp uno <vscale x 16 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp uno <2 x bfloat> undef, undef - %v4bf16 = fcmp uno <4 x bfloat> undef, undef - %v8bf16 = fcmp uno <8 x bfloat> undef, undef - %v16bf16 = fcmp uno <16 x bfloat> undef, undef + %v2bf16 = fcmp uno <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp uno <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp uno <vscale x 8 x bfloat> undef, undef + %v16bf16 = fcmp uno <vscale x 16 x bfloat> undef, undef ret void } define void @fcmp_true(i32 %arg) { ; CHECK-LABEL: 'fcmp_true' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp true <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp true <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp true <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp true <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp true <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp true <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp true <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp true <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp true <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp true <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp true <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp true <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp true <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp true <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp true <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp true <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp true <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp true <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp true <2 x float> undef, undef - %v4f32 = fcmp true <4 x float> undef, undef - %v8f32 = fcmp true <8 x float> undef, undef - %v2f64 = fcmp true <2 x double> undef, undef - %v4f64 = fcmp true <4 x double> undef, undef - %v2f16 = fcmp true <2 x half> undef, undef - %v4f16 = fcmp true <4 x half> undef, undef - %v8f16 = fcmp true <8 x half> undef, undef - %v16f16 = fcmp true <16 x half> undef, undef + %v2f32 = fcmp true <vscale x 2 x float> undef, undef + %v4f32 = fcmp true <vscale x 4 x float> undef, undef + %v8f32 = fcmp true <vscale x 8 x float> undef, undef + %v2f64 = fcmp true <vscale x 2 x double> undef, undef + %v4f64 = fcmp true <vscale x 4 x double> undef, undef + %v2f16 = fcmp true <vscale x 2 x half> undef, undef + %v4f16 = fcmp true <vscale x 4 x half> undef, undef + %v8f16 = fcmp true <vscale x 8 x half> undef, undef + %v16f16 = fcmp true <vscale x 16 x half> undef, undef ret void } define void @fcmp_true_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_true_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp true <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp true <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp true <8 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:7 Lat:7 SizeLat:7 for: %v16bf16 = fcmp true <16 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp true <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp true <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp true <vscale x 8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16bf16 = fcmp true <vscale x 16 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp true <2 x bfloat> undef, undef - %v4bf16 = fcmp true <4 x bfloat> undef, undef - %v8bf16 = fcmp true <8 x bfloat> undef, undef - %v16bf16 = fcmp true <16 x bfloat> undef, undef + %v2bf16 = fcmp true <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp true <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp true <vscale x 8 x bfloat> undef, undef + %v16bf16 = fcmp true <vscale x 16 x bfloat> undef, undef ret void } define void @fcmp_false(i32 %arg) { ; CHECK-LABEL: 'fcmp_false' -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp false <2 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp false <4 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp false <8 x float> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp false <2 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp false <4 x double> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp false <2 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp false <4 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp false <8 x half> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp false <16 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f32 = fcmp false <vscale x 2 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f32 = fcmp false <vscale x 4 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v8f32 = fcmp false <vscale x 8 x float> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f64 = fcmp false <vscale x 2 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v4f64 = fcmp false <vscale x 4 x double> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2f16 = fcmp false <vscale x 2 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4f16 = fcmp false <vscale x 4 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8f16 = fcmp false <vscale x 8 x half> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16f16 = fcmp false <vscale x 16 x half> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2f32 = fcmp false <2 x float> undef, undef - %v4f32 = fcmp false <4 x float> undef, undef - %v8f32 = fcmp false <8 x float> undef, undef - %v2f64 = fcmp false <2 x double> undef, undef - %v4f64 = fcmp false <4 x double> undef, undef - %v2f16 = fcmp false <2 x half> undef, undef - %v4f16 = fcmp false <4 x half> undef, undef - %v8f16 = fcmp false <8 x half> undef, undef - %v16f16 = fcmp false <16 x half> undef, undef + %v2f32 = fcmp false <vscale x 2 x float> undef, undef + %v4f32 = fcmp false <vscale x 4 x float> undef, undef + %v8f32 = fcmp false <vscale x 8 x float> undef, undef + %v2f64 = fcmp false <vscale x 2 x double> undef, undef + %v4f64 = fcmp false <vscale x 4 x double> undef, undef + %v2f16 = fcmp false <vscale x 2 x half> undef, undef + %v4f16 = fcmp false <vscale x 4 x half> undef, undef + %v8f16 = fcmp false <vscale x 8 x half> undef, undef + %v16f16 = fcmp false <vscale x 16 x half> undef, undef ret void } define void @fcmp_false_bfloat(i32 %arg) { ; CHECK-LABEL: 'fcmp_false_bfloat' -; CHECK-NEXT: Cost Model: Found costs of 3 for: %v2bf16 = fcmp false <2 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of 4 for: %v4bf16 = fcmp false <4 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:7 CodeSize:5 Lat:5 SizeLat:5 for: %v8bf16 = fcmp false <8 x bfloat> undef, undef -; CHECK-NEXT: Cost Model: Found costs of RThru:14 CodeSize:7 Lat:7 SizeLat:7 for: %v16bf16 = fcmp false <16 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v2bf16 = fcmp false <vscale x 2 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v4bf16 = fcmp false <vscale x 4 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 1 for: %v8bf16 = fcmp false <vscale x 8 x bfloat> undef, undef +; CHECK-NEXT: Cost Model: Found costs of 2 for: %v16bf16 = fcmp false <vscale x 16 x bfloat> undef, undef ; CHECK-NEXT: Cost Model: Found costs of RThru:0 CodeSize:1 Lat:1 SizeLat:1 for: ret void ; - %v2bf16 = fcmp false <2 x bfloat> undef, undef - %v4bf16 = fcmp false <4 x bfloat> undef, undef - %v8bf16 = fcmp false <8 x bfloat> undef, undef - %v16bf16 = fcmp false <16 x bfloat> undef, undef + %v2bf16 = fcmp false <vscale x 2 x bfloat> undef, undef + %v4bf16 = fcmp false <vscale x 4 x bfloat> undef, undef + %v8bf16 = fcmp false <vscale x 8 x bfloat> undef, undef + %v16bf16 = fcmp false <vscale x 16 x bfloat> undef, undef ret void } |