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 mark.dickinson
Recipients eric.smith, jcea, mark.dickinson, python-dev, samuel.iseli
Date 2012-02-02.14:40:05
SpamBayes Score 1.1686615e-07
Marked as misclassified No
Message-id <1328193606.51.0.652966566786.issue13889@psf.upfronthosting.co.za>
In-reply-to
Content
> Hi Marc, the changes to the pythoncore.vcproj Visual-Studio file define > the HAVE_VC_FUNC_FOR_X87 symbol.

Okay, makes sense.  I was distracted by the spurious reordering of in the diff for pythoncore.vcproj.

Just to be clear, the intent of the patch is that the FPU state is *always* switched on Windows prior to calling the dtoa.c functions;  is that right?

Things to think about:

 - can we avoid *writing* to the x87 / SSE control word if no change is necessary (as is currently done with the gcc code)?  We want to avoid unnecessary FPU pipeline flushes.

 - we need to make sure that the patch works on 64-bit.  There's a bit of text at:

    http://msdn.microsoft.com/en-us/library/c9676k6h.aspx

   that suggests that in x64 mode, setting the precision is an error.

 - what happens if the x87 and SSE2 control words have different precisions?  Does the patch restore both those precisions correctly?

 - in the patch, isn't new387controlword unused?

I'm not sure that this part of the patch can go into the maintenance branches (2.7, 3.2);  if this is a new feature (and I think it is, but I'm willing to be persuaded otherwise), it can only target 3.3.
History
Date User Action Args
2012-02-02 14:40:06mark.dickinsonsetrecipients: + mark.dickinson, jcea, eric.smith, python-dev, samuel.iseli
2012-02-02 14:40:06mark.dickinsonsetmessageid: <1328193606.51.0.652966566786.issue13889@psf.upfronthosting.co.za>
2012-02-02 14:40:05mark.dickinsonlinkissue13889 messages
2012-02-02 14:40:05mark.dickinsoncreate