summaryrefslogtreecommitdiff
path: root/checklink/Fuzz.ml
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-07-24 08:05:35 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-07-24 08:05:35 +0000
commit04ff02a9f4bc4f766a450e5463729102ee26882e (patch)
tree8aa397a531c75a3f634f068ff08293718c7f9fe6 /checklink/Fuzz.ml
parenta19eb81876d9739b569b946ccdbf2778d2e9aca7 (diff)
Update for single-precision floats. Calls to vararg functions remain
to be updated. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2544 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'checklink/Fuzz.ml')
-rw-r--r--checklink/Fuzz.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/checklink/Fuzz.ml b/checklink/Fuzz.ml
index fb7bee7..d7947ee 100644
--- a/checklink/Fuzz.ml
+++ b/checklink/Fuzz.ml
@@ -113,13 +113,14 @@ let ok_fuzz elfmap str byte fuzz =
| Zero_symbol -> false
| Stub(_) -> true
| Jumptable -> true
- | Float_literal(_) ->
+ | Float_literal(_) -> (* FIXME: this shouldn't be a false positive! *)
(* False positive: 0. becomes -0. *)
not (
(byte = a)
&& (fuz = 0x80) (* sign bit *)
&& String.sub str byte 8 = "\000\000\000\000\000\000\000\000"
)
+ | Float32_literal(_) -> true
(* padding is allowed to be non-null, but won't be recognized as padding, but
as unknown, which is not an ERROR *)
| Padding -> false