Microsoft DirectX SDK XNA math not working with new beta compiler

Microsoft DirectX SDK XNA math not working with new beta compiler

Hi,

I have been using the retail Parallel Studio up to update 6 and it has been working with the DirectX SDK XNA math headers just fine. I have uninstalled the original Parallel Studio product completely (including removing the entire folder after uninstalling), and instaled Parallel Studio 2011 Beta. My installation works smoothly on most projects. I have just tried a project that I know used to work with icl, but now doesn't. The errors start right after including xnamath.h.

This continues to compile just fine with 2008 and 2010 versions of Microsoft cl.

Thanks,
John Price

Here is the output:

1> Collision9.cpp (xnamath.h is included at top of Collision9.cpp)

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(596): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(596): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(597): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(597): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1677): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1677): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1678): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1678): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1679): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->z),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1679): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->z),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1680): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->w)

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1680): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->w)

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(357): error : union "__m128" has no member "m128_f32"

1> return V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(357): error : expression must have class type

1> return V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(441): error : union "__m128" has no member "m128_f32"

1> *f = V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(441): error : expression must have class type

1> *f = V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(514): error : union "__m128" has no member "m128_u32"

1> return V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(514): error : expression must have class type

1> return V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(589): error : union "__m128" has no member "m128_u32"

1> *x = V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(589): error : expression must have class type

1> *x = V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(663): error : union "__m128" has no member "m128_f32"

1> U.m128_f32[i] = f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(663): error : expression must have class type

1> U.m128_f32[i] = f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(805): error : union "__m128" has no member "m128_f32"

1> U.m128_f32[i] = *f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(805): error : expression must have class type

1> U.m128_f32[i] = *f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2194): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2194): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2195): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2195): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2196): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2197): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2197): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2278): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2278): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2279): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2279): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2280): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2281): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2281): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2354): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2354): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2355): error : expression must have a constant value

1> Height,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2356): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2357): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2357): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2430): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2430): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2431): error : expression must have a constant value

1> Height,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2432): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2433): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2433): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2508): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2508): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2509): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2509): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2510): error : expression must have a constant value

1> -fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2510): error : expression must have a constant value

1> -fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2586): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2586): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2587): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2587): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2588): error : expression must have a constant value

1> fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2588): error : expression must have a constant value

1> fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2650): error : expression must have a constant value

1> 2.0f / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2651): error : expression must have a constant value

1> 2.0f / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2652): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2653): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2653): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2713): error : expression must have a constant value

1> 2.0f / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2714): error : expression must have a constant value

1> 2.0f / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2715): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2716): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2716): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2785): error : expression must have a constant value

1> fReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2786): error : expression must have a constant value

1> fReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2787): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2791): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2791): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2792): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2792): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2793): error : expression must have a constant value

1> -NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2863): error : expression must have a constant value

1> fReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2864): error : expression must have a constant value

1> fReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2865): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2869): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2869): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2870): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2870): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2871): error : expression must have a constant value

1> NearZ,

1> ^

1>

1> xnaCollision.cpp

1> compilation aborted for Collision9.cpp (code 2)

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(596): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(596): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(597): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(597): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1677): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1677): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->x),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1678): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1678): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->y),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1679): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->z),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1679): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->z),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1680): error : function call is not allowed in a constant expression

1> XMConvertHalfToFloat(pSource->w)

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathconvert.inl(1680): error : expression must have a constant value

1> XMConvertHalfToFloat(pSource->w)

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(357): error : union "__m128" has no member "m128_f32"

1> return V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(357): error : expression must have class type

1> return V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(441): error : union "__m128" has no member "m128_f32"

1> *f = V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(441): error : expression must have class type

1> *f = V.m128_f32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(514): error : union "__m128" has no member "m128_u32"

1> return V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(514): error : expression must have class type

1> return V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(589): error : union "__m128" has no member "m128_u32"

1> *x = V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(589): error : expression must have class type

1> *x = V.m128_u32[i];

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(663): error : union "__m128" has no member "m128_f32"

1> U.m128_f32[i] = f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(663): error : expression must have class type

1> U.m128_f32[i] = f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(805): error : union "__m128" has no member "m128_f32"

1> U.m128_f32[i] = *f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathvector.inl(805): error : expression must have class type

1> U.m128_f32[i] = *f;

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2194): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2194): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2195): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2195): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2196): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2197): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2197): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2278): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2278): error : expression must have a constant value

1> TwoNearZ / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2279): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2279): error : expression must have a constant value

1> TwoNearZ / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2280): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2281): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2281): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2354): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2354): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2355): error : expression must have a constant value

1> Height,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2356): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2357): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2357): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2430): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2430): error : expression must have a constant value

1> Height / AspectRatio,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2431): error : expression must have a constant value

1> Height,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2432): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2433): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2433): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2508): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2508): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2509): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2509): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2510): error : expression must have a constant value

1> -fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2510): error : expression must have a constant value

1> -fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2586): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2586): error : expression must have a constant value

1> TwoNearZ*ReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2587): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2587): error : expression must have a constant value

1> TwoNearZ*ReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2588): error : expression must have a constant value

1> fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2588): error : expression must have a constant value

1> fRange * NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2650): error : expression must have a constant value

1> 2.0f / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2651): error : expression must have a constant value

1> 2.0f / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2652): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2653): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2653): error : expression must have a constant value

1> -fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2713): error : expression must have a constant value

1> 2.0f / ViewWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2714): error : expression must have a constant value

1> 2.0f / ViewHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2715): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2716): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2716): error : expression must have a constant value

1> fRange * NearZ

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2785): error : expression must have a constant value

1> fReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2786): error : expression must have a constant value

1> fReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2787): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2791): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2791): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2792): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2792): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2793): error : expression must have a constant value

1> -NearZ,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2863): error : expression must have a constant value

1> fReciprocalWidth,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2864): error : expression must have a constant value

1> fReciprocalHeight,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2865): error : expression must have a constant value

1> fRange,

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2869): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2869): error : expression must have a constant value

1> -(ViewLeft + ViewRight),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2870): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2870): error : expression must have a constant value

1> -(ViewTop + ViewBottom),

1> ^

1>

1>C:\\Program Files (x86)\\Microsoft DirectX SDK (February 2010)\\Include\\xnamathmatrix.inl(2871): error : expression must have a constant value

1> NearZ,

1> ^

1>

1> compilation aborted for xnaCollision.cpp (code 2)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

7 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi,

I have done some investigation into this since my first post and have found that Intel has an article about the incompatibility of the MS __128 type and the Intel __128 type. It seems that MS is using an old Intel xmmintrin.h header (1985-1999) while Intel is using the newer (1985-2010) version.

I have also found that the MS compiler accepts non-constants incode such as:

XMVECTOR V = { FooRetunsFloat(prtVar->x), FooReturnsFloat(ptrVar->y), 0.0f, 0.0f };

while the Intel Compiler only accepts constants such as;

XMVECTOR V = { 2.3f, 3.5f, 0.0f, 0.0f };

These incompatibilities seem to explain my previous post. However, anyone wishing to use the MS DirectX SDK now and in the future are not going to be able to use an Intel compiler if they use DirectX math because MS has depreciated the math from DirectX 9/10 (D3DX math) and is using XNA math in DirectX 11 and forward.

My project depends on the Intel compiler and the parallel extensions it offers. I have Parallel Studio for this exact purpose. It also depends on DirectX 11 to display large data-sets in real-time. I'm sure that I'm not the only Intel customer that will find themselves in this situation.

Any thoughts on this would be much appreciated.

Thanks,
John Price

We are aware of this issue, and we are investigating the problem.

Hi,

I have implemented my own solution for the time being by re-writing the XNA math library to work with icl. I have renamed the headers i_xnamath.h etc., and have a test project that uses much of the funtionality. I would be willing to share the test project and my Intel XNA math headers with Intel if it would be of any help.

Please let me know if there is any interest and I will provide a zip file.

Thanks,

John Price

Please do. Itwould be useful to take a look.

Hi,

You will find everything in the attachment Collision.zip

I am using the Feburary 2010 DirectX SDK. My Intel XNA math headers are in the main project folder - "Collision". You could use a diff tool against the SDK XNA math headers to see my changes. Everything seems to work, but I'm no SSE expert. If you see a better way to do something, I'm interested in hearing about it.

Thanks,
John Price

Attachments: 

AttachmentSize
Downloadapplication/zip Collision.zip579.87 KB

This issue is resolved with the latest compiler available with Intel Parallel Studio 2011.

Leave a Comment

Please sign in to add a comment. Not a member? Join today