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 eryksun
Recipients docs@python, eryksun, lac, paul.moore, steve.dower, tim.golden, zach.ware
Date 2015-10-10.12:10:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1444479017.05.0.0332061077722.issue25361@psf.upfronthosting.co.za>
In-reply-to
Content
With Visual Studio 2010 and earlier, SSE support had to be explicitly enabled. Starting with VS2012 it's on by default [1]:

    Because the x86 compiler generates code that uses SSE2 
    instructions by default, you must specify /arch:IA32 to 
    disable generation of SSE and SSE2 instructions for x86 
    processors.

For 3.5, the 32-bit build does use SSE2 instructions. For example, float_add uses the addsd instruction (opcode F2 0F 58):

    0:000> s python35!float_add l100 f2 0f 58
    71f6c5d8  f2 0f 58 44 24 08 8b 0d-84 11 18 72 f2 0f 11 44  ..XD$......r...D
    0:000> u 71f6c5d8 l3
    python35!float_add+0x98:
    71f6c5d8 f20f58442408    addsd   xmm0,mmword ptr [esp+8]
    71f6c5de 8b0d84111872    mov     ecx,dword ptr [python35!free_list (72181184)]
    71f6c5e4 f20f11442410    movsd   mmword ptr [esp+10h],xmm0

Thus 3.5 doesn't support older CPUs that lack SSE2, such as the AMD Athlon XP. I didn't check the installer itself, but that would be a pointless exercise.

[1]: https://msdn.microsoft.com/en-us/library/7t5yh4fd
History
Date User Action Args
2015-10-10 12:10:17eryksunsetrecipients: + eryksun, paul.moore, tim.golden, docs@python, zach.ware, steve.dower, lac
2015-10-10 12:10:17eryksunsetmessageid: <1444479017.05.0.0332061077722.issue25361@psf.upfronthosting.co.za>
2015-10-10 12:10:17eryksunlinkissue25361 messages
2015-10-10 12:10:16eryksuncreate