https://codereview.chromium.org/817143002/diff/1/test/mjsunit/mjsunit.status
File test/mjsunit/mjsunit.status (right):
https://codereview.chromium.org/817143002/diff/1/test/mjsunit/mjsunit.status#newcode576
test/mjsunit/mjsunit.status:576: # Test does not handle increased
precision of multiply-add optimization
Drive-by: The reason we want optimization not to affect computation
results is that typically, a function will run as unoptimized code for a
while, and then get optimized when it's hot, and potentially get
deoptimized later. It would be very surprising if this caused
computation results for the same inputs to randomly change during
program execution.
Similar issues have hit us before, e.g. on ia32 where the C++ compiler
might use the 80-bit FPU for arithmetic operations in runtime functions
called from unoptimized code, whereas hand-written assembly in optimized
code would use the SSE unit (with 64 bits of precision). The solution is
to ensure that the same precision is used in all cases.
In some cases this is doable (this is why we have e.g.
CreateSqrtFunction() in codegen-<arch>.cc), but in others it could mean
that you just can't do certain optimizations (FMA sounds like an example
of this, if it depends on the optimizing compiler detecting matching
instruction patterns in user-supplied functions).
https://codereview.chromium.org/817143002/
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.