一些问题 when using xnamath

一个sse的指令问题:

MOVAPS 在src或者dst不是16byte align的时候会crash。

所以在使用std::vector<XMMATRIX>的时候就要加一个aligned allocator。

 

stl对其编译问题:

另外就是一个std::vector的一个函数void resize(size_type _Newsize, _Ty _Val)

这个很郁闷,在_Ty是aligned的类型的时候(__declspec(align(16))这种)会编译不过,因为mscompiler不支持参数的align。

搜索了很多之后,最根本解决方案还是替掉stl,自己来实现这些container。

这个,目前肯定不会因为这个东西来做这么工作量大的coding。

 

所以直接hack进vector的代码了,改成void resize(size_type _Newsize, const _Ty& _Val)。


原文链接: http://blog.csdn.net/ccanan/article/details/5334283

你可能感兴趣的:(一些问题 when using xnamath)