[clang] [Clang][SVE2.1] Make a part of the name optional for `svwhileXX` builtins with predicate-as-counter (PR #75200)

Momchil Velikov via cfe-commits cfe-commits at lists.llvm.org
Tue Dec 12 07:23:50 PST 2023


https://github.com/momchil-velikov created https://github.com/llvm/llvm-project/pull/75200


The `_s64`/`_u64` part can be omitted now. It's inferred from the argument types.

>From 1cab2e8cfb0427e5d97e0f306460d1d83123d78b Mon Sep 17 00:00:00 2001
From: Momchil Velikov <momchil.velikov at arm.com>
Date: Tue, 12 Dec 2023 15:08:33 +0000
Subject: [PATCH] [Clang][SVE2.1] Make the part of the name optional for
 `svewhileXX` builtins with predicate-as-counter

The `_s64`/`_u64` part can be omitted now. It's inferred from
the argument types.
---
 clang/include/clang/Basic/arm_sve.td          |  16 +--
 .../acle_sve2p1_while_pn.c                    | 136 +++++++++---------
 2 files changed, 80 insertions(+), 72 deletions(-)

diff --git a/clang/include/clang/Basic/arm_sve.td b/clang/include/clang/Basic/arm_sve.td
index 85656c00c5b3eb..f24c9ef7491f16 100644
--- a/clang/include/clang/Basic/arm_sve.td
+++ b/clang/include/clang/Basic/arm_sve.td
@@ -1946,14 +1946,14 @@ def SVPSEL_COUNT_ALIAS_H : SInst<"svpsel_lane_c16", "}}Pm", "Ps", MergeNone, "",
 def SVPSEL_COUNT_ALIAS_S : SInst<"svpsel_lane_c32", "}}Pm", "Pi", MergeNone, "", [], []>;
 def SVPSEL_COUNT_ALIAS_D : SInst<"svpsel_lane_c64", "}}Pm", "Pl", MergeNone, "", [], []>;
 
-def SVWHILEGE_COUNT  : SInst<"svwhilege_{d}",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilege_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILEGT_COUNT  : SInst<"svwhilegt_{d}",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilegt_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILELE_COUNT  : SInst<"svwhilele_{d}",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilele_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILELT_COUNT  : SInst<"svwhilelt_{d}",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilelt_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILELO_COUNT  : SInst<"svwhilelo_{d}",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilelo_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILELS_COUNT  : SInst<"svwhilels_{d}",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilels_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILEHI_COUNT  : SInst<"svwhilehi_{d}",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilehi_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
-def SVWHILEHS_COUNT  : SInst<"svwhilehs_{d}",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilehs_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILEGE_COUNT  : SInst<"svwhilege_{d}[_{1}]",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilege_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILEGT_COUNT  : SInst<"svwhilegt_{d}[_{1}]",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilegt_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILELE_COUNT  : SInst<"svwhilele_{d}[_{1}]",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilele_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILELT_COUNT  : SInst<"svwhilelt_{d}[_{1}]",  "}lli", "QcQsQiQl", MergeNone, "aarch64_sve_whilelt_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILELO_COUNT  : SInst<"svwhilelo_{d}[_{1}]",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilelo_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILELS_COUNT  : SInst<"svwhilels_{d}[_{1}]",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilels_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILEHI_COUNT  : SInst<"svwhilehi_{d}[_{1}]",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilehi_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
+def SVWHILEHS_COUNT  : SInst<"svwhilehs_{d}[_{1}]",  "}nni", "QcQsQiQl", MergeNone, "aarch64_sve_whilehs_{d}", [IsOverloadNone], [ImmCheck<2, ImmCheck2_4_Mul2>]>;
 
 def SVLD1B_X2 : MInst<"svld1[_{2}]_x2", "2}c", "cUc", [IsStructLoad], MemEltTyDefault, "aarch64_sve_ld1_pn_x2">;
 def SVLD1H_X2 : MInst<"svld1[_{2}]_x2", "2}c", "sUshb", [IsStructLoad], MemEltTyDefault, "aarch64_sve_ld1_pn_x2">;
diff --git a/clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_pn.c b/clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_pn.c
index 3dbb38582b676c..08c1ee949c1116 100644
--- a/clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_pn.c
+++ b/clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_pn.c
@@ -1,12 +1,20 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2p1 -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2p1 -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve2p1 -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve2p1 -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2p1 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 
 // REQUIRES: aarch64-registered-target
 
 #include <arm_sve.h>
 
+#ifdef SVE_OVERLOADED_FORMS
+#define SVE_ACLE_FUNC(A1, A2_UNUSED) A1
+#else
+#define SVE_ACLE_FUNC(A1, A2) A1##A2
+#endif
+
 
 // WHILEGE
 
@@ -22,7 +30,7 @@
 //
 svcount_t test_svwhilege_c8_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilege_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilege_c8,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilege_c8_vl4(
@@ -37,7 +45,7 @@ svcount_t test_svwhilege_c8_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c8_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilege_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilege_c8,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilege_c16_vl2(
@@ -52,7 +60,7 @@ svcount_t test_svwhilege_c8_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c16_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilege_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilege_c16,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilege_c16_vl4(
@@ -67,7 +75,7 @@ svcount_t test_svwhilege_c16_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c16_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilege_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilege_c16,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilege_c32_vl2(
@@ -82,7 +90,7 @@ svcount_t test_svwhilege_c16_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c32_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilege_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilege_c32,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilege_c32_vl4(
@@ -97,7 +105,7 @@ svcount_t test_svwhilege_c32_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c32_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilege_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilege_c32,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilege_c64_vl2(
@@ -112,7 +120,7 @@ svcount_t test_svwhilege_c32_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c64_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilege_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilege_c64,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilege_c64_vl4(
@@ -127,7 +135,7 @@ svcount_t test_svwhilege_c64_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilege_c64_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilege_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilege_c64,_s64)(op1, op2, 4);
 }
 
 // WHILEGT
@@ -145,7 +153,7 @@ svcount_t test_svwhilege_c64_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c8_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilegt_c8,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c8_vl4(
@@ -160,7 +168,7 @@ svcount_t test_svwhilegt_c8_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c8_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilegt_c8,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c16_vl2(
@@ -175,7 +183,7 @@ svcount_t test_svwhilegt_c8_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c16_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilegt_c16,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c16_vl4(
@@ -190,7 +198,7 @@ svcount_t test_svwhilegt_c16_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c16_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilegt_c16,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c32_vl2(
@@ -205,7 +213,7 @@ svcount_t test_svwhilegt_c16_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c32_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilegt_c32,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c32_vl4(
@@ -220,7 +228,7 @@ svcount_t test_svwhilegt_c32_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c32_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilegt_c32,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c64_vl2(
@@ -235,7 +243,7 @@ svcount_t test_svwhilegt_c32_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c64_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilegt_c64,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilegt_c64_vl4(
@@ -250,7 +258,7 @@ svcount_t test_svwhilegt_c64_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilegt_c64_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilegt_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilegt_c64,_s64)(op1, op2, 4);
 }
 
 
@@ -268,7 +276,7 @@ svcount_t test_svwhilegt_c64_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilehi_c8_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehi_c8,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c8_vl4(
@@ -283,7 +291,7 @@ svcount_t test_svwhilehi_c8_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c8_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehi_c8,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c16_vl2(
@@ -298,7 +306,7 @@ svcount_t test_svwhilehi_c8_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c16_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehi_c16,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c16_vl4(
@@ -313,7 +321,7 @@ svcount_t test_svwhilehi_c16_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c16_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehi_c16,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c32_vl2(
@@ -328,7 +336,7 @@ svcount_t test_svwhilehi_c16_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c32_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehi_c32,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c32_vl4(
@@ -343,7 +351,7 @@ svcount_t test_svwhilehi_c32_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c32_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehi_c32,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c64_vl2(
@@ -358,7 +366,7 @@ svcount_t test_svwhilehi_c32_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c64_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehi_c64,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehi_c64_vl4(
@@ -373,7 +381,7 @@ svcount_t test_svwhilehi_c64_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehi_c64_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehi_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehi_c64,_u64)(op1, op2, 4);
 }
 
 
@@ -391,7 +399,7 @@ svcount_t test_svwhilehi_c64_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c8_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehs_c8,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c8_vl4(
@@ -406,7 +414,7 @@ svcount_t test_svwhilehs_c8_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c8_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehs_c8,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c16_vl2(
@@ -421,7 +429,7 @@ svcount_t test_svwhilehs_c8_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c16_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehs_c16,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c16_vl4(
@@ -436,7 +444,7 @@ svcount_t test_svwhilehs_c16_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c16_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehs_c16,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c32_vl2(
@@ -451,7 +459,7 @@ svcount_t test_svwhilehs_c16_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c32_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehs_c32,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c32_vl4(
@@ -466,7 +474,7 @@ svcount_t test_svwhilehs_c32_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c32_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehs_c32,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c64_vl2(
@@ -481,7 +489,7 @@ svcount_t test_svwhilehs_c32_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c64_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilehs_c64,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilehs_c64_vl4(
@@ -496,7 +504,7 @@ svcount_t test_svwhilehs_c64_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilehs_c64_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilehs_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilehs_c64,_u64)(op1, op2, 4);
 }
 
 
@@ -514,7 +522,7 @@ svcount_t test_svwhilehs_c64_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilele_c8_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilele_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilele_c8,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilele_c8_vl4(
@@ -529,7 +537,7 @@ svcount_t test_svwhilele_c8_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c8_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilele_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilele_c8,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilele_c16_vl2(
@@ -544,7 +552,7 @@ svcount_t test_svwhilele_c8_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c16_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilele_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilele_c16,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilele_c16_vl4(
@@ -559,7 +567,7 @@ svcount_t test_svwhilele_c16_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c16_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilele_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilele_c16,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilele_c32_vl2(
@@ -574,7 +582,7 @@ svcount_t test_svwhilele_c16_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c32_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilele_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilele_c32,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilele_c32_vl4(
@@ -589,7 +597,7 @@ svcount_t test_svwhilele_c32_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c32_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilele_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilele_c32,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilele_c64_vl2(
@@ -604,7 +612,7 @@ svcount_t test_svwhilele_c32_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c64_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilele_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilele_c64,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilele_c64_vl4(
@@ -619,7 +627,7 @@ svcount_t test_svwhilele_c64_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilele_c64_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilele_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilele_c64,_s64)(op1, op2, 4);
 }
 
 
@@ -637,7 +645,7 @@ svcount_t test_svwhilele_c64_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelo_c8_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelo_c8,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c8_vl4(
@@ -652,7 +660,7 @@ svcount_t test_svwhilelo_c8_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c8_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelo_c8,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c16_vl2(
@@ -667,7 +675,7 @@ svcount_t test_svwhilelo_c8_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c16_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelo_c16,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c16_vl4(
@@ -682,7 +690,7 @@ svcount_t test_svwhilelo_c16_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c16_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelo_c16,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c32_vl2(
@@ -697,7 +705,7 @@ svcount_t test_svwhilelo_c16_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c32_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelo_c32,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c32_vl4(
@@ -712,7 +720,7 @@ svcount_t test_svwhilelo_c32_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c32_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelo_c32,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c64_vl2(
@@ -727,7 +735,7 @@ svcount_t test_svwhilelo_c32_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c64_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelo_c64,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelo_c64_vl4(
@@ -742,7 +750,7 @@ svcount_t test_svwhilelo_c64_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelo_c64_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilelo_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelo_c64,_u64)(op1, op2, 4);
 }
 
 
@@ -760,7 +768,7 @@ svcount_t test_svwhilelo_c64_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c8_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilels_c8,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilels_c8_vl4(
@@ -775,7 +783,7 @@ svcount_t test_svwhilels_c8_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c8_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilels_c8,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilels_c16_vl2(
@@ -790,7 +798,7 @@ svcount_t test_svwhilels_c8_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c16_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilels_c16,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilels_c16_vl4(
@@ -805,7 +813,7 @@ svcount_t test_svwhilels_c16_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c16_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilels_c16,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilels_c32_vl2(
@@ -820,7 +828,7 @@ svcount_t test_svwhilels_c16_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c32_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilels_c32,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilels_c32_vl4(
@@ -835,7 +843,7 @@ svcount_t test_svwhilels_c32_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c32_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilels_c32,_u64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilels_c64_vl2(
@@ -850,7 +858,7 @@ svcount_t test_svwhilels_c32_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c64_vl2(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilels_c64,_u64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilels_c64_vl4(
@@ -865,7 +873,7 @@ svcount_t test_svwhilels_c64_vl2(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilels_c64_vl4(uint64_t op1, uint64_t op2)
 {
-  return svwhilels_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilels_c64,_u64)(op1, op2, 4);
 }
 
 
@@ -883,7 +891,7 @@ svcount_t test_svwhilels_c64_vl4(uint64_t op1, uint64_t op2)
 //
 svcount_t test_svwhilelt_c8_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c8(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelt_c8,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c8_vl4(
@@ -898,7 +906,7 @@ svcount_t test_svwhilelt_c8_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c8_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c8(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelt_c8,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c16_vl2(
@@ -913,7 +921,7 @@ svcount_t test_svwhilelt_c8_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c16_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c16(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelt_c16,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c16_vl4(
@@ -928,7 +936,7 @@ svcount_t test_svwhilelt_c16_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c16_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c16(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelt_c16,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c32_vl2(
@@ -943,7 +951,7 @@ svcount_t test_svwhilelt_c16_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c32_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c32(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelt_c32,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c32_vl4(
@@ -958,7 +966,7 @@ svcount_t test_svwhilelt_c32_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c32_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c32(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelt_c32,_s64)(op1, op2, 4);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c64_vl2(
@@ -973,7 +981,7 @@ svcount_t test_svwhilelt_c32_vl4(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c64_vl2(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c64(op1, op2, 2);
+  return SVE_ACLE_FUNC(svwhilelt_c64,_s64)(op1, op2, 2);
 }
 
 // CHECK-LABEL: @test_svwhilelt_c64_vl4(
@@ -988,5 +996,5 @@ svcount_t test_svwhilelt_c64_vl2(int64_t op1, int64_t op2)
 //
 svcount_t test_svwhilelt_c64_vl4(int64_t op1, int64_t op2)
 {
-  return svwhilelt_c64(op1, op2, 4);
+  return SVE_ACLE_FUNC(svwhilelt_c64,_s64)(op1, op2, 4);
 }



More information about the cfe-commits mailing list