【发布时间】:2020-07-22 19:40:13
【问题描述】:
我正在寻找一种将双精度转换为 _m128 以利用内在指令的方法。
我尝试使用:
double d = 7654321.1234567;
_m128 ret = *reinterpret_cast<__m128*>(d);
但我当然得到了消息:
error: invalid cast from type ‘double’ to type ‘__m128* {aka __vector(4) float*}’
任何帮助将不胜感激,内联汇编解决方案很好~
【问题讨论】:
-
__m128 ret = *reinterpret_cast<__m128*>(d);->__m128 ret = *reinterpret_cast<__m128*>(&d);
标签: c++ assembly sse inline-assembly intrinsics