【发布时间】:2015-03-11 13:24:00
【问题描述】:
这是正常工作的代码:
char a[100];
for (int i = 0; i < 100; i++)
a[i] = 0;
__m128i x = _mm_load_si128((__m128i *) a);
但是如果我动态分配内存,VS 2013 会中断:
char *a = new char[100];
for (int i = 0; i < 100; i++)
a[i] = 0;
__m128i x = _mm_load_si128((__m128i *) a);
如何同时使用动态内存和对齐加载指令?
【问题讨论】:
-
我想我完全误解了这个问题。是否有错误消息或内存实际上没有按要求对齐?
-
第二个中断,如果我使用对齐的加载指令。
-
我检查了您的代码,它在我的控制台应用程序上运行良好。没有错误。
-
没有语法错误。但还是打断了。