This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/33109] ICE: segfault while compiling c++ code



------- Comment #2 from tim at klingt dot org  2007-08-18 18:47 -------
it seems to be related to massive recursive template instantiation of the
following code:

namespace detail
{
    template <int n>
    always_inline void zerovec_simd_mp_iteration(float *dst, __m128 const &
zero)
    {
        __m128 *out = (__m128*) dst;
        *out = zero;
        zerovec_simd_mp_iteration<n-4>((float*)++out, zero);
    }

    template <>
    always_inline void zerovec_simd_mp_iteration<0>(float *dst, __m128 const &
zero)
    {
    }
}

template <int n>
always_inline void zerovec_simd_mp(float *dst)
{
    const __m128 zero = _mm_setzero_ps();
    detail::zerovec_simd_mp_iteration<n>(dst, zero);
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33109


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]