brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · 4a507b0 Raw
50 lines · c
1// RUN: %clang_cc1 -triple aarch64-linux-gnu -target-feature +neon -target-feature +bf16 -target-feature +faminmax -target-feature +fp8 -emit-llvm -verify %s -o /dev/null2 3// REQUIRES: aarch64-registered-target4 5#include <arm_neon.h>6 7void test_features(float16x8_t a, float32x4_t b, mfloat8x16_t u, fpm_t fpm) {8  (void) vmlalbq_f16_mf8_fpm(a, u, u, fpm);9  // expected-error@-1 {{'vmlalbq_f16_mf8_fpm' requires target feature 'fp8fma'}}10  (void) vmlaltq_f16_mf8_fpm(a, u, u, fpm);11  // expected-error@-1 {{'vmlaltq_f16_mf8_fpm' requires target feature 'fp8fma'}}12  (void) vmlallbbq_f32_mf8_fpm(b, u, u, fpm);13  // expected-error@-1 {{'vmlallbbq_f32_mf8_fpm' requires target feature 'fp8fma'}}14  (void) vmlallbtq_f32_mf8_fpm(b, u, u, fpm);15  // expected-error@-1 {{'vmlallbtq_f32_mf8_fpm' requires target feature 'fp8fma'}}16  (void) vmlalltbq_f32_mf8_fpm(b, u, u, fpm);17  // expected-error@-1 {{'vmlalltbq_f32_mf8_fpm' requires target feature 'fp8fma'}}18  (void) vmlallttq_f32_mf8_fpm(b, u, u, fpm);19  // expected-error@-1 {{'vmlallttq_f32_mf8_fpm' requires target feature 'fp8fma'}}20}21 22void test_imm(float16x8_t d, float32x4_t c, mfloat8x16_t a, mfloat8x8_t b, fpm_t fpm) {23(void) vmlalbq_lane_f16_mf8_fpm(d, a, b, -1, fpm);24// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}25(void) vmlalbq_laneq_f16_mf8_fpm(d, a, a, -1, fpm);26// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}27(void) vmlaltq_lane_f16_mf8_fpm(d, a, b, -1, fpm);28// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}29(void) vmlaltq_laneq_f16_mf8_fpm(d, a, a, -1, fpm);30// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}31 32(void) vmlallbbq_lane_f32_mf8_fpm(c, a, b, -1, fpm);33// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}34(void) vmlallbbq_laneq_f32_mf8_fpm(c, a, a, -1, fpm);35// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}36(void) vmlallbtq_lane_f32_mf8_fpm(c, a, b, -1, fpm);37// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}38(void) vmlallbtq_laneq_f32_mf8_fpm(c, a, a, -1, fpm);39// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}40(void) vmlalltbq_lane_f32_mf8_fpm(c, a, b, -1, fpm);41// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}42(void) vmlalltbq_laneq_f32_mf8_fpm(c, a, a, -1, fpm);43// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}44(void) vmlallttq_lane_f32_mf8_fpm(c, a, b, -1, fpm);45// expected-error@-1 {{argument value -1 is outside the valid range [0, 7]}}46(void) vmlallttq_laneq_f32_mf8_fpm(c, a, a, -1, fpm);47// expected-error@-1 {{argument value -1 is outside the valid range [0, 15]}}48}49 50