diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/abi/mangle40.C')
-rw-r--r-- | gcc/testsuite/g++.dg/abi/mangle40.C | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/abi/mangle40.C b/gcc/testsuite/g++.dg/abi/mangle40.C new file mode 100644 index 000000000..2b8300bff --- /dev/null +++ b/gcc/testsuite/g++.dg/abi/mangle40.C @@ -0,0 +1,28 @@ +// PR c++/12909 +// { dg-do compile { target i?86-*-* x86_64-*-* } } +// { dg-require-weak "" } +// { dg-require-alias "" } +// { dg-options "-mavx -Wabi -fabi-version=2" } +// { dg-final { scan-assembler "(weak|glob)\[^\n\]*_Z1fIDv4_fEvT_" } } +// { dg-final { scan-assembler "(weak|glob)\[^\n\]*_Z1fIU8__vectorfEvT_" } } +// { dg-final { scan-assembler "(weak|glob)\[^\n\]*_ZN1AIDv4_fE1tE" } } +// { dg-final { scan-assembler "(weak|glob)\[^\n\]*_ZN1AIU8__vectorfE1tE" } } + +#include <x86intrin.h> + +template <class T> +struct A +{ + static T t; +}; + +template <class T> +T A<T>::t; // { dg-warning "mangled name" } + +template <class T> +void f (T t) { } // { dg-warning "mangled name" } + +int main() +{ + f (A<__m128>::t); +} |