This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author skrah
Recipients brian.curtin, loewis, nadeem.vawda, skrah, vstinner
Date 2012-09-22.11:09:28
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
> Given all the problems, I'll stop using PGO on all branches and
> as the compiler apparently generates bad code.

That is probably the best solution.

The problem in memoryview.c:pack_single() is that Visual Studio optimizes the
memcpy() to mov instructions, but exchanges the low and high dwords:

unsigned __int64 llu = 1;

do { unsigned __int64 x; 
     x = (unsigned __int64)llu; 
     // At this point x=llu is in edx=1 and ecx=0.
     // The memcpy() is optimized to:
     //    mov dword ptr [esi], ecx
     //    mov dword ptr [esi+4], edx
     memcpy(ptr, (char *)&x, sizeof x); 
} while (0);
Date User Action Args
2012-09-22 11:09:29skrahsetrecipients: + skrah, loewis, vstinner, nadeem.vawda, brian.curtin
2012-09-22 11:09:29skrahsetmessageid: <>
2012-09-22 11:09:28skrahlinkissue15993 messages
2012-09-22 11:09:28skrahcreate