[docs] [issue25361] Is python-3-5-0.exe compiled with SSE2 instrutions? If so should we mention this?
eryksun
report at bugs.python.org
Sat Oct 10 14:10:17 CEST 2015
eryksun added the comment:
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
----------
nosy: +eryksun
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue25361>
_______________________________________
More information about the docs
mailing list