================
@@ -0,0 +1,48 @@
+// REQUIRES: aarch64-registered-target
+
+// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -verify
-emit-llvm -o - %s
+
+#include <arm_sve.h>
+
+svfloat16_t missing_sve2p3_luti6_lane(svfloat16x2_t table, svuint8_t indices) {
+ return svluti6_lane_f16_x2(table, indices, 1); // expected-error
{{'svluti6_lane_f16_x2' needs target feature
(sve,sve2p3)|(sme,(sve2p3|sme2p3))}}
+}
+
+__attribute__((target("sve2p3")))
+svfloat16_t has_sve2p3_luti6_lane(svfloat16x2_t table, svuint8_t indices) {
+ return svluti6_lane_f16_x2(table, indices, 0);
+}
+
+__attribute__((target("sve2p3,bf16")))
+svbfloat16_t has_sve2p3_luti6_lane_bf16(svbfloat16x2_t table,
+ svuint8_t indices) {
+ return svluti6_lane_bf16_x2(table, indices, 1);
+}
----------------
kmclaughlin-arm wrote:
There are a few tests in here which have the same requirements, it's probably
worth grouping them into one function for each set of features?
Or alternatively we could just check one intrinsic for each set of features,
since I think these are just testing that `SMETargetGuard` & `SMETargetGuard`
are correct?
https://github.com/llvm/llvm-project/pull/187046
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits