Boost logo

Boost Users :

From: Andreas Fabri (andreas.fabri_at_[hidden])
Date: 2007-03-14 15:54:38


John Maddock wrote:
> Guillaume Melquiond wrote:
>> Quoting Andreas Fabri:
>>> even with the release candidate for 1_34 I get this error message
>>>
>>> c:/Boost/include/boost-1_34\boost/numeric/interval/hw_rounding.hpp(38)
>>> : fatal error C1189: #error : Boost.Numeric.Interval: Please specify
>>> rounding control mechanism.
>>>
>>> on AMD Turion with XP 64 and VC 2005.
>>>
>>> Can anybody fix this or give a hint what I have to find out on
>>> mt platform to fix it.
>> I have access neither to this processor nor to this operating system
>> nor to this
>> compiler, so it's a bit complicated to tell you how to fix it. Can
>> you tell me on which FPU (x87, SSE2, 3Dnow) the floating-point
>> computations are
>> executed on
>> your platform?

Hi Guillaume,

It's the AMD 64 bit processor. They are called Athlon, and Turion is
the mobile version of it. See http://en.wikipedia.org/wiki/Athlon_FX

XP64 is the 64 bit Operating system.

VC2005 on this hardware/OS can produce 32 bit code as well as 64 bit code.
I just checked and can confirm that the macro _M_X64 is defined,
whatever that means for you.

>>
>> If your platform supports the C99 fenv.h rounding control,

There is no file with such a name, and Microsoft told me earlier
to have a look at

       "ANSI _controlfp (specifcally see the _MCW_RC mask) or numeric_limits::round_style,
        if you're using STL."
       From newsgroup: https://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=435927&SiteID=1

Maybe this helps you to guide me.

  then you
>> don't have to know the FPU, you can just modify the hw_rounding.hpp
>> file at line 28 by adding a check for a macro identifying your
>> system. Please report to this mailing-list which macro you used so
>> that other users can benefit from
>> it and I
>> can put it into CVS.
>
> I believe _M_X64 might be the right macro here (but Andreas needs to check
> as I don't have a Win64 platform either). I'm not completely sure but I
> believe this platform depricates the x87 instruction set in favour of the
> SSE registers, in case that makes any difference, again Andreas would have
> to take a look at the compilers assembly output to figure that one out.
>
> BTW I believe recent Intel Win32 compiler releases do the same thing for x86
> as well (which is to say they don't use the x87 instructions just the SSE
> ones). But maybe someone more knowledgable will step in and comfirm this:
> or maybe it makes no difference?

I also have the Intel 9 compiler for (32 bit) Windows. Let me know when you
want me to check something for you.

andreas

>
> HTH, John.
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>
>


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net