I've encapsulated the __128i data type for clarity. Here's a fragment of the class, with a very simple function that seems to me like it should inline...
Code: Select all
class xmm128i
{
private:
__m128i m_data;
public:
xmm128i( __m128i *source )
{ m_data = _mm_load_si128( source ); }
xmm128i( __m128i source ): m_data(source) { }
xmm128i( xmm const &source )
{ _mm_load_si128( &source.As128i ); }
~xmm128i() { }
operator __m128i()
{ return m_data; }
// very simple operator ...
xmm128i operator &( __m128i const &other )
{ return xmm128i( _mm_and_si128( m_data, other ) ); }
// many more operators ...
}
Does anyone have any idea what's going on?!? I'm using Visual C++ 2008.
Thanks for any help you can provide. I'm rather frustrated