Commit ee429bdf by Marc Glisse Committed by Marc Glisse

re PR c++/57509 (Segmentation fault when using __builtin_shuffle in templated class.)

2013-06-28  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/57509
	* g++.dg/ext/pr57509.C: Pass vectors by reference to avoid warnings.

From-SVN: r200511
parent 1572e697
2013-06-28 Marc Glisse <marc.glisse@inria.fr>
PR c++/57509
* g++.dg/ext/pr57509.C: Pass vectors by reference to avoid warnings.
2013-06-28 Kirill Yukhin <kirill.yukhin@intel.com>
* gcc.target/i386/bmi-1.c: Extend with new instrinsic.
......
......@@ -4,8 +4,8 @@
template <bool> struct enable_if {};
template <> struct enable_if<true> {typedef void type;};
template <class T> void f (T& v) { v = __builtin_shuffle (v, v); }
template <class T> void g (T) {}
template <class T> auto g (T x) -> typename enable_if<sizeof(__builtin_shuffle(x,x))!=2>::type {}
template <class T> void g (T const&) {}
template <class T> auto g (T const& x) -> typename enable_if<sizeof(__builtin_shuffle(x,x))!=2>::type {}
typedef int v4i __attribute__((vector_size(4*sizeof(int))));
typedef float v4f __attribute__((vector_size(4*sizeof(float))));
int main(){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment