1
votes

What is the difference between _m256i and _m256d and _m256? and
What is the difference between _m128i and _m128d and _m128?

2

2 Answers

3
votes

The documentation states:

The __m256 data type is used to represent the contents of the extended SSE register - the YMM register, used by the IntelĀ® AVX intrinsics. The __m256 data type can hold eight 32-bit floating-point values.

The __m256d data type can hold four 64-bit double precision floating-point values.

The __m256i data type can hold thirty-two 8-bit, sixteen 16-bit, eight 32-bit, or four 64-bit integer values.

5
votes

Rule of thumb: an i suffix is used for all integer vector types, d is for double precision floating point vector types, and when there is no suffix it's for single precision floating point vector types.