1 // RUN: %clang_cc1 -triple=powerpc64-unknown-linux-gnu -target-cpu pwr8\
2 // RUN: -target-feature +altivec -fsyntax-only -verify %s
3 // RUN: %clang_cc1 -triple=powerpc64le-unknown-linux-gnu -target-cpu pwr8\
4 // RUN: -target-feature +altivec -fsyntax-only -verify %s
5 // RUN: %clang_cc1 -triple=powerpc64le-unknown-linux-gnu -target-cpu pwr10 \
6 // RUN: -target-feature +vsx -target-feature -power10-vector \
7 // RUN: -fsyntax-only -verify %s
9 // Test 'vector bool __int128' type.
11 // These should have errors.
12 __vector
bool __int128 v1_bi128
; // expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
13 __vector __bool __int128 v2_bi128
; // expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
14 vector
bool __int128 v3_bi128
; // expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
15 vector __bool __int128 v4_bi128
; // expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
16 __vector
bool unsigned __int128 v5_bi128
; // expected-error {{cannot use 'unsigned' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
17 __vector
bool signed __int128 v6_bi128
; // expected-error {{cannot use 'signed' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
18 vector
bool unsigned __int128 v7_bi128
; // expected-error {{cannot use 'unsigned' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
19 vector
bool signed __int128 v8_bi128
; // expected-error {{cannot use 'signed' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
20 __vector __bool
signed __int128 v9_bi128
; // expected-error {{cannot use 'signed' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}
21 vector __bool
signed __int128 v10_bi128
; // expected-error {{cannot use 'signed' with '__vector bool'}} expected-error {{use of '__int128' with '__vector bool' requires VSX support enabled (on POWER10 or later)}}