30 lines · c
1// RUN: %clang_cc1 -triple aarch64 -target-feature +sme -verify -emit-llvm-only %s2 3// REQUIRES: aarch64-registered-target4 5#include <arm_sme.h>6 7void test_features(uint32_t slice, svfloat16x2_t zn2, svfloat16x4_t zn4,8 svbfloat16x2_t bzn2, svbfloat16x4_t bzn4) __arm_streaming __arm_inout("za") {9 // expected-error@+1 {{'svadd_za16_f16_vg1x2' needs target feature sme,(sme-f16f16|sme-f8f16)}}10 svadd_za16_f16_vg1x2(slice, zn2);11 // expected-error@+1 {{'svadd_za16_f16_vg1x4' needs target feature sme,(sme-f16f16|sme-f8f16)}}12 svadd_za16_f16_vg1x4(slice, zn4);13 // expected-error@+1 {{'svsub_za16_f16_vg1x2' needs target feature sme,(sme-f16f16|sme-f8f16)}}14 svsub_za16_f16_vg1x2(slice, zn2);15 // expected-error@+1 {{'svsub_za16_f16_vg1x4' needs target feature sme,(sme-f16f16|sme-f8f16)}}16 svsub_za16_f16_vg1x4(slice, zn4);17 18 // expected-error@+1 {{'svadd_za16_bf16_vg1x2' needs target feature sme,sme-b16b16}}19 svadd_za16_bf16_vg1x2(slice, bzn2);20 // expected-error@+1 {{'svadd_za16_bf16_vg1x4' needs target feature sme,sme-b16b16}}21 svadd_za16_bf16_vg1x4(slice, bzn4);22 // expected-error@+1 {{'svsub_za16_bf16_vg1x2' needs target feature sme,sme-b16b16}}23 svsub_za16_bf16_vg1x2(slice, bzn2);24 // expected-error@+1 {{'svsub_za16_bf16_vg1x4' needs target feature sme,sme-b16b16}}25 svsub_za16_bf16_vg1x4(slice, bzn4);26}27 28 29 30