--- Comment #8 from roebel at ircam dot fr 2008-01-28 10:00 ---
For completeness :
I now use this function that was proposed in
PR 323. It seems to solve my issue. Thanks for the pointer!
inline
void set_math_double_precision() {
fpu_control_t fpu_control ;
_FPU_GETCW(fpu_c
--- Comment #7 from pinskia at gcc dot gnu dot org 2008-01-28 01:18 ---
(In reply to comment #6)
> Am I wrong, here ?
Semi, what is happening is the values for std::less is being stored in
the fpr register and that is really a 80bit register and not a 64bit fp
register. -mpc64 is anot
--- Comment #6 from roebel at ircam dot fr 2008-01-28 00:14 ---
Andrew,
while -ffloat-store fixes the problem, this solution is obviously not
acceptable. Moreover, here the problem is not that I compare floats
using <= the problem is that std::set::insert(double) compares
set elements
--- Comment #5 from pinskia at gcc dot gnu dot org 2008-01-27 23:17 ---
Even though -mfpmath=sse is used, x87 is used in some cases still and what you
are seeing is an effect of PR 323. Closing as a duplicate. You should be more
careful with your comparison loop of FP values.
*** Thi
--- Comment #4 from roebel at ircam dot fr 2008-01-27 23:05 ---
yes indeed, that fixes the problem.
now, does that mean holding double values in a set
is not possible?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34992
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
CC||pinskia at gcc dot gnu dot
|