[valgrind] [Bug 442168] Floating-point erroneous behavior with memecheck with regards to class (isfinite(), etc.)

2021-09-08 Thread Xavier Roche
https://bugs.kde.org/show_bug.cgi?id=442168

--- Comment #2 from Xavier Roche  ---
Additional notes: isolating the faulty function

static double (*volatile pvalidate)(double a) = validate;  // used in
minimalTest
double validate(double a)
{
return std::isfinite(a) ? a : 1.0f;
}

The difference between the correctly executed code under valgrind and the
faulty one:

 _Z8validated:   # @_Z8validated
pushq   %rax
.cfi_def_cfa_offset 16
-   movsd   %xmm0, (%rsp)   # 8-byte Spill
+   vmovsd  %xmm0, (%rsp)   # 8-byte Spill
callq  
_Z8isfiniteIdENSt3__19enable_ifIXaasr3std13is_arithmeticIT_EE5valuesr3std14numeric_limitsIS2_EE12has_infinityEbE4typeES2_
-   movsd   (%rsp), %xmm0   # 8-byte Reload
+   vmovsd  (%rsp), %xmm0   # 8-byte Reload
 # xmm0 = mem[0],zero
testb   %al, %al
jne .LBB6_2
 # %bb.1:
-   movsd   .LCPI6_0(%rip), %xmm0   # xmm0 = mem[0],zero
+   vmovsd  .LCPI6_0(%rip), %xmm0   # xmm0 = mem[0],zero
 .LBB6_2:
popq%rax
retq

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 442168] Floating-point erroneous behavior with memecheck with regards to class (isfinite(), etc.)

2021-09-08 Thread Xavier Roche
https://bugs.kde.org/show_bug.cgi?id=442168

--- Comment #1 from Xavier Roche  ---
Bug also present with valgrind-3.18.0.GIT
(cadf0432290b0bc147c7b5dd54c63bc94986743c)

-- 
You are receiving this mail because:
You are watching all bug changes.