On 09/26/2013 04:47 PM, John Reiser wrote: >>> The likely cause is __float128 operations being performed as "double >>> precision" >>> of two __float80 by the Intel math library for x86_64. Memcheck-3.8.1 >>> implements >>> __float80 operations as __float64 (ordinary IEEE-754 'double'.) > >> Thanks for analyzing this! I assume this means that a fix will be rather >> complex? > > Nearly every user whose programs utilize 80-bit x86 floating point > is disappointed by memcheck's 64-bit implementation of 80-bit operations. > This situation is many years old. The fix requires a major effort > of design and implementation.
I'd say it would take about 2-3 weeks for a developer that is familiar with the VEX IR and the x86_64 front and back ends, to do this. It is complex in that it requires changes to the front end, back end, and to register allocation. It would also be necessary to check that the changes don't cause performance regressions for (real) 64-bit FP insns on x86_64. So it's not impossible, but given the number and urgency of some of the other bugs we're faced with, it has so far been difficult to make a case for allocating developer resources to this. J ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users