diff options
author | Kostis Sagonas <[email protected]> | 2011-02-02 12:29:59 +0200 |
---|---|---|
committer | Niclas Axelsson <[email protected]> | 2011-02-14 17:25:15 +0100 |
commit | 6c9a53e0e155dae4325fb104a4108cd6446940f3 (patch) | |
tree | 99de695e2d54dfafb115782a49c0f6ad8b430335 /lib/hipe/icode/hipe_beam_to_icode.erl | |
parent | b397a5b6d3dce5ad0be19a7bac262d6f636a666d (diff) | |
download | otp-6c9a53e0e155dae4325fb104a4108cd6446940f3.tar.gz otp-6c9a53e0e155dae4325fb104a4108cd6446940f3.tar.bz2 otp-6c9a53e0e155dae4325fb104a4108cd6446940f3.zip |
Fix bug in the simplification of inexact comparisons
On 31/1/2011 Paul Guyot reported a bug in the native code compilation
of inexact equality/inequality tests between floats and integers. The
relevant test was:
f(X) ->
Y = X / 2,
Y == 0.
and hipe erroneously evaluated the calls f(0) and f(0.0) to 'false'.
The culprit was in the simplification code of the Icode range analysis
which used an erroneous test (lists:any/1 instead of lists:all/1).
Diffstat (limited to 'lib/hipe/icode/hipe_beam_to_icode.erl')
0 files changed, 0 insertions, 0 deletions