When compiling C++ code which uses the DirectXMath library structures like XMMATRIX, if local variables are declared using the "auto" keyword from functions which return such structures, the resulting assembly does not ensure these stack variables are properly aligned to a 16 byte boundary.Simply removing the "auto" keyword and replacing it with "XMMATRIX" results in correct assembly which runs without errors.
Visual Studio/Team Foundation Server/.NET Framework Tooling Version
Steps to reproduce
Product Language
Operating System
Operating System Language
Actual results
Expected results
Please wait...