@@ -2,6 +2,7 @@
// PR1708

void __attribute__((noreturn)) abort(void);
void __attribute__((noreturn)) exit(int);

struct s { _Complex unsigned short x; };
struct s gs = { 100 + 200i };
@@ -1,4 +1,4 @@
// RUN: %clang_cc1 -w -emit-llvm -o /dev/null %s
// RUN: %clang_cc1 -std=c89 -w -emit-llvm -o /dev/null %s
// PR2264.
unsigned foo = 8L;
unsigned bar = 0L;
@@ -1,4 +1,4 @@
// RUN: %clang_cc1 -emit-llvm -o - %s
// RUN: %clang_cc1 -std=c89 -emit-llvm -o - %s
// <rdar://problem/6108358>

/* For posterity, the issue here begins initial "char []" decl for
@@ -1,4 +1,4 @@
// RUN: %clang_cc1 -emit-llvm -o %t %s
// RUN: %clang_cc1 -std=c89 -emit-llvm -o %t %s

typedef short T[4];
struct s {
@@ -1,4 +1,4 @@
// RUN: %clang_cc1 %s -emit-llvm -o -
// RUN: %clang_cc1 %s -std=c89 -emit-llvm -o -
// PR2797

unsigned int
@@ -15,6 +15,7 @@ static int block(int x) {
return (^(int x){return x+1;})(x);
}

extern int printf(const char *, ...);
static void print(int result) {
printf("%d\n", result);
}
@@ -131,19 +131,19 @@ void test1() {
// CHECK: @llvm.ppc.altivec.vaddecuq
// CHECK-LE: @llvm.ppc.altivec.vaddecuq

/* vec_mergee */
/* vec_mergee */
res_vbi = vec_mergee(vbi, vbi);
// CHECK: @llvm.ppc.altivec.vperm
// CHECK-LE: @llvm.ppc.altivec.vperm

res_vsi = vec_mergee(vsi, vsi);
// CHECK: @llvm.ppc.altivec.vperm
// CHECK-LE: @llvm.ppc.altivec.vperm

res_vui = vec_mergee(vui, vui);
// CHECK: @llvm.ppc.altivec.vperm
// CHECK-LE: @llvm.ppc.altivec.vperm
// CHECK-PPC: warning: implicit declaration of function 'vec_mergee'
// CHECK-PPC: error: call to undeclared function 'vec_mergee'

res_vbll = vec_mergee(vbll, vbll);
// CHECK: @llvm.ppc.altivec.vperm
@@ -177,8 +177,8 @@ void test1() {
res_vui = vec_mergeo(vui, vui);
// CHECK: @llvm.ppc.altivec.vperm
// CHECK-LE: @llvm.ppc.altivec.vperm
// CHECK-PPC: warning: implicit declaration of function 'vec_mergeo'
// CHECK-PPC: error: call to undeclared function 'vec_mergeo'

/* vec_cmpeq */
res_vbll = vec_cmpeq(vbll, vbll);
// CHECK: @llvm.ppc.altivec.vcmpequd
@@ -403,7 +403,7 @@ void test1() {
res_vsc = vec_cntlz(vsc);
// CHECK: call <16 x i8> @llvm.ctlz.v16i8(<16 x i8> %{{.+}}, i1 false)
// CHECK-LE: call <16 x i8> @llvm.ctlz.v16i8(<16 x i8> %{{.+}}, i1 false)
// CHECK-PPC: warning: implicit declaration of function 'vec_cntlz' is invalid in C99
// CHECK-PPC: error: call to undeclared function 'vec_cntlz'

res_vuc = vec_cntlz(vuc);
// CHECK: call <16 x i8> @llvm.ctlz.v16i8(<16 x i8> %{{.+}}, i1 false)
@@ -754,19 +754,19 @@ void test1() {
res_vsi = vec_vpksdss(vsll, vsll);
// CHECK: llvm.ppc.altivec.vpksdss
// CHECK-LE: llvm.ppc.altivec.vpksdss
// CHECK-PPC: warning: implicit declaration of function 'vec_vpksdss'
// CHECK-PPC: error: call to undeclared function 'vec_vpksdss'

/* vec_vpksdus */
res_vui = vec_vpksdus(vsll, vsll);
// CHECK: llvm.ppc.altivec.vpksdus
// CHECK-LE: llvm.ppc.altivec.vpksdus
// CHECK-PPC: warning: implicit declaration of function 'vec_vpksdus'
// CHECK-PPC: error: call to undeclared function 'vec_vpksdus'

/* vec_vpkudum */
res_vsi = vec_vpkudum(vsll, vsll);
// CHECK: vperm
// CHECK-LE: vperm
// CHECK-PPC: warning: implicit declaration of function 'vec_vpkudum'
// CHECK-PPC: error: call to undeclared function 'vec_vpkudum'

res_vui = vec_vpkudum(vull, vull);
// CHECK: vperm
@@ -775,13 +775,13 @@ void test1() {
res_vui = vec_vpkudus(vull, vull);
// CHECK: llvm.ppc.altivec.vpkudus
// CHECK-LE: llvm.ppc.altivec.vpkudus
// CHECK-PPC: warning: implicit declaration of function 'vec_vpkudus'
// CHECK-PPC: error: call to undeclared function 'vec_vpkudus'

/* vec_vupkhsw */
res_vsll = vec_vupkhsw(vsi);
// CHECK: llvm.ppc.altivec.vupkhsw
// CHECK-LE: llvm.ppc.altivec.vupklsw
// CHECK-PPC: warning: implicit declaration of function 'vec_vupkhsw'
// CHECK-PPC: error: call to undeclared function 'vec_vupkhsw'

res_vbll = vec_vupkhsw(vbi);
// CHECK: llvm.ppc.altivec.vupkhsw
@@ -791,7 +791,7 @@ void test1() {
res_vsll = vec_vupklsw(vsi);
// CHECK: llvm.ppc.altivec.vupklsw
// CHECK-LE: llvm.ppc.altivec.vupkhsw
// CHECK-PPC: warning: implicit declaration of function 'vec_vupklsw'
// CHECK-PPC: error: call to undeclared function 'vec_vupklsw'

res_vbll = vec_vupklsw(vbi);
// CHECK: llvm.ppc.altivec.vupklsw
@@ -845,20 +845,20 @@ void test1() {
// CHECK: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
// CHECK-LE: [[T1:%.+]] = and <16 x i8>
// CHECK-LE: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
// CHECK-PPC: warning: implicit declaration of function 'vec_nand' is invalid in C99
// CHECK-PPC: error: call to undeclared function 'vec_nand'

res_vsc = vec_nand(vbc, vbc);
// CHECK: [[T1:%.+]] = and <16 x i8>
// CHECK: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
// CHECK-LE: [[T1:%.+]] = and <16 x i8>
// CHECK-LE: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>

res_vuc = vec_nand(vuc, vuc);
// CHECK: [[T1:%.+]] = and <16 x i8>
// CHECK: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
// CHECK-LE: [[T1:%.+]] = and <16 x i8>
// CHECK-LE: xor <16 x i8> [[T1]], <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>

res_vss = vec_nand(vss, vss);
// CHECK: [[T1:%.+]] = and <8 x i16>
// CHECK: xor <8 x i16> [[T1]], <i16 -1, i16 -1, i16 -1, i16 -1, i16 -1, i16 -1, i16 -1, i16 -1>
@@ -937,7 +937,7 @@ void test1() {
// CHECK: or <16 x i8> {{%.+}}, [[T1]]
// CHECK-LE: [[T1:%.+]] = xor <16 x i8> {{%.+}}, <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
// CHECK-LE: or <16 x i8> {{%.+}}, [[T1]]
// CHECK-PPC: warning: implicit declaration of function 'vec_orc' is invalid in C99
// CHECK-PPC: error: call to undeclared function 'vec_orc'

res_vsc = vec_orc(vsc, vbc);
// CHECK: [[T1:%.+]] = xor <16 x i8> {{%.+}}, <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
@@ -1166,7 +1166,7 @@ void test1() {
res_vull = vec_vbpermq(vuc, vuc);
// CHECK: llvm.ppc.altivec.vbpermq
// CHECK-LE: llvm.ppc.altivec.vbpermq
// CHECK-PPC: warning: implicit declaration of function 'vec_vbpermq'
// CHECK-PPC: error: call to undeclared function 'vec_vbpermq'

/* vec_vgbbd */
res_vsc = vec_vgbbd(vsc);
@@ -1176,12 +1176,12 @@ void test1() {
res_vuc = vec_vgbbd(vuc);
// CHECK: llvm.ppc.altivec.vgbbd
// CHECK-LE: llvm.ppc.altivec.vgbbd
// CHECK-PPC: warning: implicit declaration of function 'vec_vgbbd'
// CHECK-PPC: error: call to undeclared function 'vec_vgbbd'

res_vuc = vec_gb(vuc);
// CHECK: llvm.ppc.altivec.vgbbd
// CHECK-LE: llvm.ppc.altivec.vgbbd
// CHECK-PPC: warning: implicit declaration of function 'vec_gb'
// CHECK-PPC: error: call to undeclared function 'vec_gb'

res_vsll = vec_gbb(vsll);
// CHECK: llvm.ppc.altivec.vgbbd
@@ -19,14 +19,14 @@ unsigned int test_pext_u32(unsigned int __X, unsigned int __Y) {
return _pext_u32(__X, __Y);
}

#ifdef __i386__
unsigned int test_mulx_u32(unsigned int __X, unsigned int __Y,
unsigned int *__P) {
// CHECK: @test_mulx_u32
// CHECK-NOT: mul i64
// B32: @test_mulx_u32
// B32: mul i64
return _mulx_u32(__X, __Y, __P);
}
#endif

#ifdef __x86_64__
unsigned long long test_bzhi_u64(unsigned long long __X, unsigned long long __Y) {
@@ -1,7 +1,7 @@
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -target-feature +mops -target-feature +mte -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-MOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -target-feature +mops -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -target-feature +mte -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -target-feature +mops -Wno-implicit-function-declaration -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -Wno-implicit-function-declaration -target-feature +mte -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s
// RUN: %clang_cc1 -triple aarch64-arm-unknown-eabi -Wno-implicit-function-declaration -w -S -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-NOMOPS %s

#include <arm_acle.h>
#include <stddef.h>
@@ -2,7 +2,7 @@
// RUN: -target-feature +sm4 -S -emit-llvm -o - %s \
// RUN: | FileCheck %s

// RUN: not %clang_cc1 -triple aarch64-linux-gnu -target-feature +neon \
// RUN: not %clang_cc1 -Wno-error=implicit-function-declaration -triple aarch64-linux-gnu -target-feature +neon \
// RUN: -S -emit-llvm -o - %s 2>&1 | FileCheck --check-prefix=CHECK-NO-CRYPTO %s

// REQUIRES: aarch64-registered-target || arm-registered-target
@@ -11,7 +11,7 @@

void test_vsm3partw1(uint32x4_t a, uint32x4_t b, uint32x4_t c) {
// CHECK-LABEL: @test_vsm3partw1(
// CHECK-NO-CRYPTO: warning: implicit declaration of function 'vsm3partw1q_u32' is invalid in C99
// CHECK-NO-CRYPTO: warning: call to undeclared function 'vsm3partw1q_u32'
// CHECK: call <4 x i32> @llvm.aarch64.crypto.sm3partw1
uint32x4_t result = vsm3partw1q_u32(a, b, c);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16x2_t test_svcreate2_bf16(svbfloat16_t x0, svbfloat16_t x1)
{
// expected-warning@+1 {{implicit declaration of function 'svcreate2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svcreate2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svcreate2,_bf16,,)(x0, x1);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16x3_t test_svcreate3_bf16(svbfloat16_t x0, svbfloat16_t x1, svbfloat16_t x2)
{
// expected-warning@+1 {{implicit declaration of function 'svcreate3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svcreate3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svcreate3,_bf16,,)(x0, x1, x2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16x4_t test_svcreate4_bf16(svbfloat16_t x0, svbfloat16_t x1, svbfloat16_t x2, svbfloat16_t x4)
{
// expected-warning@+1 {{implicit declaration of function 'svcreate4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svcreate4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svcreate4,_bf16,,)(x0, x1, x2, x4);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,7 +28,7 @@
//
svbfloat16_t test_svget2_bf16_0(svbfloat16x2_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget2,_bf16,,)(tuple, 0);
}

@@ -44,6 +44,6 @@ svbfloat16_t test_svget2_bf16_0(svbfloat16x2_t tuple)
//
svbfloat16_t test_svget2_bf16_1(svbfloat16x2_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget2,_bf16,,)(tuple, 1);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,7 +28,7 @@
//
svbfloat16_t test_svget3_bf16_0(svbfloat16x3_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget3,_bf16,,)(tuple, 0);
}

@@ -44,7 +44,7 @@ svbfloat16_t test_svget3_bf16_0(svbfloat16x3_t tuple)
//
svbfloat16_t test_svget3_bf16_1(svbfloat16x3_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget3,_bf16,,)(tuple, 1);
}

@@ -60,6 +60,6 @@ svbfloat16_t test_svget3_bf16_1(svbfloat16x3_t tuple)
//
svbfloat16_t test_svget3_bf16_2(svbfloat16x3_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget3,_bf16,,)(tuple, 2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,7 +28,7 @@
//
svbfloat16_t test_svget4_bf16_0(svbfloat16x4_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget4,_bf16,,)(tuple, 0);
}

@@ -44,7 +44,7 @@ svbfloat16_t test_svget4_bf16_0(svbfloat16x4_t tuple)
//
svbfloat16_t test_svget4_bf16_1(svbfloat16x4_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget4,_bf16,,)(tuple, 1);
}

@@ -60,7 +60,7 @@ svbfloat16_t test_svget4_bf16_1(svbfloat16x4_t tuple)
//
svbfloat16_t test_svget4_bf16_2(svbfloat16x4_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget4,_bf16,,)(tuple, 2);
}

@@ -76,6 +76,6 @@ svbfloat16_t test_svget4_bf16_2(svbfloat16x4_t tuple)
//
svbfloat16_t test_svget4_bf16_3(svbfloat16x4_t tuple)
{
// expected-warning@+1 {{implicit declaration of function 'svget4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svget4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svget4,_bf16,,)(tuple, 3);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -32,7 +32,7 @@
//
svbfloat16_t test_svld1_bf16(svbool_t pg, const bfloat16_t *base)
{
// expected-warning@+1 {{implicit declaration of function 'svld1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svld1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svld1,_bf16,,)(pg, base);
}

@@ -56,6 +56,6 @@ svbfloat16_t test_svld1_bf16(svbool_t pg, const bfloat16_t *base)
//
svbfloat16_t test_svld1_vnum_bf16(svbool_t pg, const bfloat16_t *base, int64_t vnum)
{
// expected-warning@+1 {{implicit declaration of function 'svld1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svld1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svld1_vnum,_bf16,,)(pg, base, vnum);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -30,6 +30,6 @@
//
svbfloat16_t test_svld1rq_bf16(svbool_t pg, const bfloat16_t *base)
{
// expected-warning@+1 {{implicit declaration of function 'svld1rq_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svld1rq_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svld1rq,_bf16,,)(pg, base);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -30,7 +30,7 @@
//
svbfloat16_t test_svldff1_bf16(svbool_t pg, const bfloat16_t *base)
{
// expected-warning@+1 {{implicit declaration of function 'svldff1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldff1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldff1,_bf16,,)(pg, base);
}

@@ -52,6 +52,6 @@ svbfloat16_t test_svldff1_bf16(svbool_t pg, const bfloat16_t *base)
//
svbfloat16_t test_svldff1_vnum_bf16(svbool_t pg, const bfloat16_t *base, int64_t vnum)
{
// expected-warning@+1 {{implicit declaration of function 'svldff1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldff1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldff1_vnum,_bf16,,)(pg, base, vnum);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// REQUIRES: aarch64-registered-target

#include <arm_sve.h>
@@ -29,7 +29,7 @@
//
svbfloat16_t test_svldnf1_bf16(svbool_t pg, const bfloat16_t *base)
{
// expected-warning@+1 {{implicit declaration of function 'svldnf1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldnf1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldnf1,_bf16,,)(pg, base);
}

@@ -51,6 +51,6 @@ svbfloat16_t test_svldnf1_bf16(svbool_t pg, const bfloat16_t *base)
//
svbfloat16_t test_svldnf1_vnum_bf16(svbool_t pg, const bfloat16_t *base, int64_t vnum)
{
// expected-warning@+1 {{implicit declaration of function 'svldnf1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldnf1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldnf1_vnum,_bf16,,)(pg, base, vnum);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -30,7 +30,7 @@
//
svbfloat16_t test_svldnt1_bf16(svbool_t pg, const bfloat16_t *base)
{
// expected-warning@+1 {{implicit declaration of function 'svldnt1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldnt1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldnt1,_bf16,,)(pg, base);
}

@@ -52,6 +52,6 @@ svbfloat16_t test_svldnt1_bf16(svbool_t pg, const bfloat16_t *base)
//
svbfloat16_t test_svldnt1_vnum_bf16(svbool_t pg, const bfloat16_t *base, int64_t vnum)
{
// expected-warning@+1 {{implicit declaration of function 'svldnt1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svldnt1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svldnt1_vnum,_bf16,,)(pg, base, vnum);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svrev_bf16(svbfloat16_t op)
{
// expected-warning@+1 {{implicit declaration of function 'svrev_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svrev_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svrev,_bf16,,)(op);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,7 +28,7 @@
//
svbfloat16x2_t test_svset2_bf16_0(svbfloat16x2_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset2,_bf16,,)(tuple, 0, x);
}

@@ -44,6 +44,6 @@ svbfloat16x2_t test_svset2_bf16_0(svbfloat16x2_t tuple, svbfloat16_t x)
//
svbfloat16x2_t test_svset2_bf16_1(svbfloat16x2_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset2,_bf16,,)(tuple, 1, x);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -29,7 +29,7 @@
//
svbfloat16x3_t test_svset3_bf16_0(svbfloat16x3_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset3,_bf16,,)(tuple, 0, x);
}

@@ -45,7 +45,7 @@ svbfloat16x3_t test_svset3_bf16_0(svbfloat16x3_t tuple, svbfloat16_t x)
//
svbfloat16x3_t test_svset3_bf16_1(svbfloat16x3_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset3,_bf16,,)(tuple, 1, x);
}

@@ -61,6 +61,6 @@ svbfloat16x3_t test_svset3_bf16_1(svbfloat16x3_t tuple, svbfloat16_t x)
//
svbfloat16x3_t test_svset3_bf16_2(svbfloat16x3_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset3_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset3,_bf16,,)(tuple, 2, x);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -29,7 +29,7 @@
//
svbfloat16x4_t test_svset4_bf16_0(svbfloat16x4_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset4,_bf16,,)(tuple, 0, x);
}

@@ -45,7 +45,7 @@ svbfloat16x4_t test_svset4_bf16_0(svbfloat16x4_t tuple, svbfloat16_t x)
//
svbfloat16x4_t test_svset4_bf16_1(svbfloat16x4_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset4,_bf16,,)(tuple, 1, x);
}

@@ -61,7 +61,7 @@ svbfloat16x4_t test_svset4_bf16_1(svbfloat16x4_t tuple, svbfloat16_t x)
//
svbfloat16x4_t test_svset4_bf16_2(svbfloat16x4_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset4,_bf16,,)(tuple, 2, x);
}

@@ -77,6 +77,6 @@ svbfloat16x4_t test_svset4_bf16_2(svbfloat16x4_t tuple, svbfloat16_t x)
//
svbfloat16x4_t test_svset4_bf16_3(svbfloat16x4_t tuple, svbfloat16_t x)
{
// expected-warning@+1 {{implicit declaration of function 'svset4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svset4_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svset4,_bf16,,)(tuple, 3, x);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -32,7 +32,7 @@
//
void test_svst1_bf16(svbool_t pg, bfloat16_t *base, svbfloat16_t data)
{
// expected-warning@+1 {{implicit declaration of function 'svst1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svst1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svst1,_bf16,,)(pg, base, data);
}

@@ -56,6 +56,6 @@ void test_svst1_bf16(svbool_t pg, bfloat16_t *base, svbfloat16_t data)
//
void test_svst1_vnum_bf16(svbool_t pg, bfloat16_t *base, int64_t vnum, svbfloat16_t data)
{
// expected-warning@+1 {{implicit declaration of function 'svst1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svst1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svst1_vnum,_bf16,,)(pg, base, vnum, data);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -no-opaque-pointers -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -no-opaque-pointers -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -30,7 +30,7 @@
//
void test_svstnt1_bf16(svbool_t pg, bfloat16_t *base, svbfloat16_t data)
{
// expected-warning@+1 {{implicit declaration of function 'svstnt1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svstnt1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svstnt1,_bf16,,)(pg, base, data);
}

@@ -52,6 +52,6 @@ void test_svstnt1_bf16(svbool_t pg, bfloat16_t *base, svbfloat16_t data)
//
void test_svstnt1_vnum_bf16(svbool_t pg, bfloat16_t *base, int64_t vnum, svbfloat16_t data)
{
// expected-warning@+1 {{implicit declaration of function 'svstnt1_vnum_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svstnt1_vnum_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svstnt1_vnum,_bf16,,)(pg, base, vnum, data);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svtrn1_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svtrn1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svtrn1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svtrn1,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svtrn1_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svtrn1q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svtrn1q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svtrn1q, _bf16, , )(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svtrn2_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svtrn2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svtrn2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svtrn2,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svtrn2_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svtrn2q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svtrn2q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svtrn2q, _bf16, , )(op1, op2);
}
@@ -1,7 +1,7 @@
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -17,6 +17,6 @@
//
svbfloat16_t test_svundef_bf16()
{
// expected-warning@+1 {{implicit declaration of function 'svundef_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svundef_bf16'; ISO C99 and later do not support implicit function declarations}}
return svundef_bf16();
}
@@ -1,7 +1,7 @@
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -17,6 +17,6 @@
//
svbfloat16x2_t test_svundef2_bf16()
{
// expected-warning@+1 {{implicit declaration of function 'svundef2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svundef2_bf16'; ISO C99 and later do not support implicit function declarations}}
return svundef2_bf16();
}
@@ -1,7 +1,7 @@
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -17,6 +17,6 @@
//
svbfloat16x3_t test_svundef3_bf16()
{
// expected-warning@+1 {{implicit declaration of function 'svundef3_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svundef3_bf16'; ISO C99 and later do not support implicit function declarations}}
return svundef3_bf16();
}
@@ -1,7 +1,7 @@
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -17,6 +17,6 @@
//
svbfloat16x4_t test_svundef4_bf16()
{
// expected-warning@+1 {{implicit declaration of function 'svundef4_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svundef4_bf16'; ISO C99 and later do not support implicit function declarations}}
return svundef4_bf16();
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svuzp1_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svuzp1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svuzp1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svuzp1,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svuzp1_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svuzp1q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svuzp1q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svuzp1q, _bf16, , )(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svuzp2_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svuzp2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svuzp2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svuzp2,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svuzp2_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svuzp2q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svuzp2q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svuzp2q, _bf16, , )(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svzip1_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svzip1_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svzip1_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svzip1,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svzip1_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svzip1q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svzip1q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svzip1q, _bf16, , )(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -28,6 +28,6 @@
//
svbfloat16_t test_svzip2_bf16(svbfloat16_t op1, svbfloat16_t op2)
{
// expected-warning@+1 {{implicit declaration of function 'svzip2_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svzip2_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svzip2,_bf16,,)(op1, op2);
}
@@ -3,7 +3,7 @@
// RUN: %clang_cc1 -target-feature +f64mm -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -target-feature +f64mm -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -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 +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error -verify-ignore-unexpected=note %s

// REQUIRES: aarch64-registered-target

@@ -27,6 +27,6 @@
// CPP-CHECK-NEXT: ret <vscale x 8 x bfloat> [[TMP0]]
//
svbfloat16_t test_svzip2_bf16(svbfloat16_t op1, svbfloat16_t op2) {
// expected-warning@+1 {{implicit declaration of function 'svzip2q_bf16'}}
// expected-warning@+1 {{call to undeclared function 'svzip2q_bf16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svzip2q, _bf16, , )(op1, op2);
}
@@ -5,8 +5,8 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve2 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify=overload -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify=overload -verify-ignore-unexpected=error %s

#include <arm_sve.h>

@@ -29,8 +29,8 @@
//
svint8_t test_svaba_s8(svint8_t op1, svint8_t op2, svint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_s8'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_s8'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_s8,,)(op1, op2, op3);
}

@@ -46,8 +46,8 @@ svint8_t test_svaba_s8(svint8_t op1, svint8_t op2, svint8_t op3)
//
svint16_t test_svaba_s16(svint16_t op1, svint16_t op2, svint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_s16'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_s16,,)(op1, op2, op3);
}

@@ -63,8 +63,8 @@ svint16_t test_svaba_s16(svint16_t op1, svint16_t op2, svint16_t op3)
//
svint32_t test_svaba_s32(svint32_t op1, svint32_t op2, svint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_s32'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_s32,,)(op1, op2, op3);
}

@@ -80,8 +80,8 @@ svint32_t test_svaba_s32(svint32_t op1, svint32_t op2, svint32_t op3)
//
svint64_t test_svaba_s64(svint64_t op1, svint64_t op2, svint64_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_s64'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_s64,,)(op1, op2, op3);
}

@@ -97,8 +97,8 @@ svint64_t test_svaba_s64(svint64_t op1, svint64_t op2, svint64_t op3)
//
svuint8_t test_svaba_u8(svuint8_t op1, svuint8_t op2, svuint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_u8'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_u8'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_u8,,)(op1, op2, op3);
}

@@ -114,8 +114,8 @@ svuint8_t test_svaba_u8(svuint8_t op1, svuint8_t op2, svuint8_t op3)
//
svuint16_t test_svaba_u16(svuint16_t op1, svuint16_t op2, svuint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_u16'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_u16,,)(op1, op2, op3);
}

@@ -131,8 +131,8 @@ svuint16_t test_svaba_u16(svuint16_t op1, svuint16_t op2, svuint16_t op3)
//
svuint32_t test_svaba_u32(svuint32_t op1, svuint32_t op2, svuint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_u32'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_u32,,)(op1, op2, op3);
}

@@ -148,8 +148,8 @@ svuint32_t test_svaba_u32(svuint32_t op1, svuint32_t op2, svuint32_t op3)
//
svuint64_t test_svaba_u64(svuint64_t op1, svuint64_t op2, svuint64_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_u64'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_u64,,)(op1, op2, op3);
}

@@ -169,8 +169,8 @@ svuint64_t test_svaba_u64(svuint64_t op1, svuint64_t op2, svuint64_t op3)
//
svint8_t test_svaba_n_s8(svint8_t op1, svint8_t op2, int8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_s8'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_s8'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_s8,,)(op1, op2, op3);
}

@@ -190,8 +190,8 @@ svint8_t test_svaba_n_s8(svint8_t op1, svint8_t op2, int8_t op3)
//
svint16_t test_svaba_n_s16(svint16_t op1, svint16_t op2, int16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_s16'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_s16,,)(op1, op2, op3);
}

@@ -211,8 +211,8 @@ svint16_t test_svaba_n_s16(svint16_t op1, svint16_t op2, int16_t op3)
//
svint32_t test_svaba_n_s32(svint32_t op1, svint32_t op2, int32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_s32'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_s32,,)(op1, op2, op3);
}

@@ -232,8 +232,8 @@ svint32_t test_svaba_n_s32(svint32_t op1, svint32_t op2, int32_t op3)
//
svint64_t test_svaba_n_s64(svint64_t op1, svint64_t op2, int64_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_s64'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_s64,,)(op1, op2, op3);
}

@@ -253,8 +253,8 @@ svint64_t test_svaba_n_s64(svint64_t op1, svint64_t op2, int64_t op3)
//
svuint8_t test_svaba_n_u8(svuint8_t op1, svuint8_t op2, uint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_u8'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_u8'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_u8,,)(op1, op2, op3);
}

@@ -274,8 +274,8 @@ svuint8_t test_svaba_n_u8(svuint8_t op1, svuint8_t op2, uint8_t op3)
//
svuint16_t test_svaba_n_u16(svuint16_t op1, svuint16_t op2, uint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_u16'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_u16,,)(op1, op2, op3);
}

@@ -295,8 +295,8 @@ svuint16_t test_svaba_n_u16(svuint16_t op1, svuint16_t op2, uint16_t op3)
//
svuint32_t test_svaba_n_u32(svuint32_t op1, svuint32_t op2, uint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_u32'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_u32,,)(op1, op2, op3);
}

@@ -316,7 +316,7 @@ svuint32_t test_svaba_n_u32(svuint32_t op1, svuint32_t op2, uint32_t op3)
//
svuint64_t test_svaba_n_u64(svuint64_t op1, svuint64_t op2, uint64_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svaba'}}
// expected-warning@+1 {{implicit declaration of function 'svaba_n_u64'}}
// overload-warning@+2 {{call to undeclared function 'svaba'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svaba_n_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svaba,_n_u64,,)(op1, op2, op3);
}
@@ -5,8 +5,8 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve2 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify=overload -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify=overload -verify-ignore-unexpected=error %s

#include <arm_sve.h>

@@ -29,8 +29,8 @@
//
svint16_t test_svabalb_s16(svint16_t op1, svint8_t op2, svint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_s16'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_s16,,)(op1, op2, op3);
}

@@ -46,8 +46,8 @@ svint16_t test_svabalb_s16(svint16_t op1, svint8_t op2, svint8_t op3)
//
svint32_t test_svabalb_s32(svint32_t op1, svint16_t op2, svint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_s32'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_s32,,)(op1, op2, op3);
}

@@ -63,8 +63,8 @@ svint32_t test_svabalb_s32(svint32_t op1, svint16_t op2, svint16_t op3)
//
svint64_t test_svabalb_s64(svint64_t op1, svint32_t op2, svint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_s64'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_s64,,)(op1, op2, op3);
}

@@ -80,8 +80,8 @@ svint64_t test_svabalb_s64(svint64_t op1, svint32_t op2, svint32_t op3)
//
svuint16_t test_svabalb_u16(svuint16_t op1, svuint8_t op2, svuint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_u16'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_u16,,)(op1, op2, op3);
}

@@ -97,8 +97,8 @@ svuint16_t test_svabalb_u16(svuint16_t op1, svuint8_t op2, svuint8_t op3)
//
svuint32_t test_svabalb_u32(svuint32_t op1, svuint16_t op2, svuint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_u32'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_u32,,)(op1, op2, op3);
}

@@ -114,8 +114,8 @@ svuint32_t test_svabalb_u32(svuint32_t op1, svuint16_t op2, svuint16_t op3)
//
svuint64_t test_svabalb_u64(svuint64_t op1, svuint32_t op2, svuint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_u64'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_u64,,)(op1, op2, op3);
}

@@ -135,8 +135,8 @@ svuint64_t test_svabalb_u64(svuint64_t op1, svuint32_t op2, svuint32_t op3)
//
svint16_t test_svabalb_n_s16(svint16_t op1, svint8_t op2, int8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_s16'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_s16,,)(op1, op2, op3);
}

@@ -156,8 +156,8 @@ svint16_t test_svabalb_n_s16(svint16_t op1, svint8_t op2, int8_t op3)
//
svint32_t test_svabalb_n_s32(svint32_t op1, svint16_t op2, int16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_s32'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_s32,,)(op1, op2, op3);
}

@@ -177,8 +177,8 @@ svint32_t test_svabalb_n_s32(svint32_t op1, svint16_t op2, int16_t op3)
//
svint64_t test_svabalb_n_s64(svint64_t op1, svint32_t op2, int32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_s64'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_s64,,)(op1, op2, op3);
}

@@ -198,8 +198,8 @@ svint64_t test_svabalb_n_s64(svint64_t op1, svint32_t op2, int32_t op3)
//
svuint16_t test_svabalb_n_u16(svuint16_t op1, svuint8_t op2, uint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_u16'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_u16,,)(op1, op2, op3);
}

@@ -219,8 +219,8 @@ svuint16_t test_svabalb_n_u16(svuint16_t op1, svuint8_t op2, uint8_t op3)
//
svuint32_t test_svabalb_n_u32(svuint32_t op1, svuint16_t op2, uint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_u32'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_u32,,)(op1, op2, op3);
}

@@ -240,7 +240,7 @@ svuint32_t test_svabalb_n_u32(svuint32_t op1, svuint16_t op2, uint16_t op3)
//
svuint64_t test_svabalb_n_u64(svuint64_t op1, svuint32_t op2, uint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalb'}}
// expected-warning@+1 {{implicit declaration of function 'svabalb_n_u64'}}
// overload-warning@+2 {{call to undeclared function 'svabalb'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalb_n_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalb,_n_u64,,)(op1, op2, op3);
}
@@ -5,8 +5,8 @@
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve2 -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve2 -fallow-half-arguments-and-returns -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 +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -std=c99 -verify=overload -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify -verify-ignore-unexpected=error %s
// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -fsyntax-only -Wno-error=implicit-function-declaration -verify=overload -verify-ignore-unexpected=error %s

#include <arm_sve.h>

@@ -29,8 +29,8 @@
//
svint16_t test_svabalt_s16(svint16_t op1, svint8_t op2, svint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_s16'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_s16,,)(op1, op2, op3);
}

@@ -46,8 +46,8 @@ svint16_t test_svabalt_s16(svint16_t op1, svint8_t op2, svint8_t op3)
//
svint32_t test_svabalt_s32(svint32_t op1, svint16_t op2, svint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_s32'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_s32,,)(op1, op2, op3);
}

@@ -63,8 +63,8 @@ svint32_t test_svabalt_s32(svint32_t op1, svint16_t op2, svint16_t op3)
//
svint64_t test_svabalt_s64(svint64_t op1, svint32_t op2, svint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_s64'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_s64,,)(op1, op2, op3);
}

@@ -80,8 +80,8 @@ svint64_t test_svabalt_s64(svint64_t op1, svint32_t op2, svint32_t op3)
//
svuint16_t test_svabalt_u16(svuint16_t op1, svuint8_t op2, svuint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_u16'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_u16,,)(op1, op2, op3);
}

@@ -97,8 +97,8 @@ svuint16_t test_svabalt_u16(svuint16_t op1, svuint8_t op2, svuint8_t op3)
//
svuint32_t test_svabalt_u32(svuint32_t op1, svuint16_t op2, svuint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_u32'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_u32,,)(op1, op2, op3);
}

@@ -114,8 +114,8 @@ svuint32_t test_svabalt_u32(svuint32_t op1, svuint16_t op2, svuint16_t op3)
//
svuint64_t test_svabalt_u64(svuint64_t op1, svuint32_t op2, svuint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_u64'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_u64,,)(op1, op2, op3);
}

@@ -135,8 +135,8 @@ svuint64_t test_svabalt_u64(svuint64_t op1, svuint32_t op2, svuint32_t op3)
//
svint16_t test_svabalt_n_s16(svint16_t op1, svint8_t op2, int8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_s16'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_s16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_s16,,)(op1, op2, op3);
}

@@ -156,8 +156,8 @@ svint16_t test_svabalt_n_s16(svint16_t op1, svint8_t op2, int8_t op3)
//
svint32_t test_svabalt_n_s32(svint32_t op1, svint16_t op2, int16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_s32'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_s32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_s32,,)(op1, op2, op3);
}

@@ -177,8 +177,8 @@ svint32_t test_svabalt_n_s32(svint32_t op1, svint16_t op2, int16_t op3)
//
svint64_t test_svabalt_n_s64(svint64_t op1, svint32_t op2, int32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_s64'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_s64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_s64,,)(op1, op2, op3);
}

@@ -198,8 +198,8 @@ svint64_t test_svabalt_n_s64(svint64_t op1, svint32_t op2, int32_t op3)
//
svuint16_t test_svabalt_n_u16(svuint16_t op1, svuint8_t op2, uint8_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_u16'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_u16'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_u16,,)(op1, op2, op3);
}

@@ -219,8 +219,8 @@ svuint16_t test_svabalt_n_u16(svuint16_t op1, svuint8_t op2, uint8_t op3)
//
svuint32_t test_svabalt_n_u32(svuint32_t op1, svuint16_t op2, uint16_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_u32'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_u32'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_u32,,)(op1, op2, op3);
}

@@ -240,7 +240,7 @@ svuint32_t test_svabalt_n_u32(svuint32_t op1, svuint16_t op2, uint16_t op3)
//
svuint64_t test_svabalt_n_u64(svuint64_t op1, svuint32_t op2, uint32_t op3)
{
// overload-warning@+2 {{implicit declaration of function 'svabalt'}}
// expected-warning@+1 {{implicit declaration of function 'svabalt_n_u64'}}
// overload-warning@+2 {{call to undeclared function 'svabalt'; ISO C99 and later do not support implicit function declarations}}
// expected-warning@+1 {{call to undeclared function 'svabalt_n_u64'; ISO C99 and later do not support implicit function declarations}}
return SVE_ACLE_FUNC(svabalt,_n_u64,,)(op1, op2, op3);
}