Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* Copyright (C) 2012,2013 Matthew Fluet. |
2 | * Copyright (C) 1999-2007 Henry Cejtin, Matthew Fluet, Suresh | |
3 | * Jagannathan, and Stephen Weeks. | |
4 | * Copyright (C) 1997-2000 NEC Research Institute. | |
5 | * | |
6 | * MLton is released under a BSD-style license. | |
7 | * See the file MLton-LICENSE for details. | |
8 | *) | |
9 | ||
10 | local | |
11 | fun 'a check (_: 'a, _: 'a) : unit = () | |
12 | ||
13 | local | |
14 | structure R1 = Primitive.Real32 | |
15 | structure R2 = PrimitiveFFI.Real32 | |
16 | in | |
17 | val () = check (R1.Math.acos, R2.Math.acos) | |
18 | val () = check (R1.Math.asin, R2.Math.asin) | |
19 | val () = check (R1.Math.atan, R2.Math.atan) | |
20 | val () = check (R1.Math.atan2, R2.Math.atan2) | |
21 | val () = check (R1.Math.cos, R2.Math.cos) | |
22 | val () = check (R1.Math.cosh, R2.Math.cosh) | |
23 | val () = check (fn () => R1.Math.e, R2.Math.eGet) | |
24 | val () = check (R1.Math.exp, R2.Math.exp) | |
25 | val () = check (R1.Math.ln, R2.Math.ln) | |
26 | val () = check (R1.Math.log10, R2.Math.log10) | |
27 | val () = check (fn () => R1.Math.pi, R2.Math.piGet) | |
28 | val () = check (R1.Math.pow, R2.Math.pow) | |
29 | val () = check (R1.Math.sin, R2.Math.sin) | |
30 | val () = check (R1.Math.sinh, R2.Math.sinh) | |
31 | val () = check (R1.Math.sqrt, R2.Math.sqrt) | |
32 | val () = check (R1.Math.tan, R2.Math.tan) | |
33 | val () = check (R1.Math.tanh, R2.Math.tanh) | |
34 | ||
35 | val () = check (R1.abs, R2.abs) | |
36 | val () = check (R1.+, R2.add) | |
37 | val () = check (R1./, R2.div) | |
38 | val () = check (R1.==, R2.equal) | |
39 | val () = check (R1.frexp, R2.frexp) | |
40 | val () = check (R1.gdtoa, R2.gdtoa) | |
41 | val () = check (R1.ldexp, R2.ldexp) | |
42 | val () = check (R1.<=, R2.le) | |
43 | val () = check (R1.<, R2.lt) | |
44 | val () = check (R1.modf, R2.modf) | |
45 | val () = check (R1.*, R2.mul) | |
46 | val () = check (R1.*+, R2.muladd) | |
47 | val () = check (R1.*-, R2.mulsub) | |
48 | val () = check (R1.~, R2.neg) | |
49 | val () = check (R1.round, R2.round) | |
50 | val () = check (R1.strtor, R2.strtor) | |
51 | val () = check (R1.-, R2.sub) | |
52 | end | |
53 | ||
54 | local | |
55 | structure R1 = Primitive.Real64 | |
56 | structure R2 = PrimitiveFFI.Real64 | |
57 | in | |
58 | val () = check (R1.Math.acos, R2.Math.acos) | |
59 | val () = check (R1.Math.asin, R2.Math.asin) | |
60 | val () = check (R1.Math.atan, R2.Math.atan) | |
61 | val () = check (R1.Math.atan2, R2.Math.atan2) | |
62 | val () = check (R1.Math.cos, R2.Math.cos) | |
63 | val () = check (R1.Math.cosh, R2.Math.cosh) | |
64 | val () = check (fn () => R1.Math.e, R2.Math.eGet) | |
65 | val () = check (R1.Math.exp, R2.Math.exp) | |
66 | val () = check (R1.Math.ln, R2.Math.ln) | |
67 | val () = check (R1.Math.log10, R2.Math.log10) | |
68 | val () = check (fn () => R1.Math.pi, R2.Math.piGet) | |
69 | val () = check (R1.Math.pow, R2.Math.pow) | |
70 | val () = check (R1.Math.sin, R2.Math.sin) | |
71 | val () = check (R1.Math.sinh, R2.Math.sinh) | |
72 | val () = check (R1.Math.sqrt, R2.Math.sqrt) | |
73 | val () = check (R1.Math.tan, R2.Math.tan) | |
74 | val () = check (R1.Math.tanh, R2.Math.tanh) | |
75 | ||
76 | val () = check (R1.abs, R2.abs) | |
77 | val () = check (R1.+, R2.add) | |
78 | val () = check (R1./, R2.div) | |
79 | val () = check (R1.==, R2.equal) | |
80 | val () = check (R1.frexp, R2.frexp) | |
81 | val () = check (R1.gdtoa, R2.gdtoa) | |
82 | val () = check (R1.ldexp, R2.ldexp) | |
83 | val () = check (R1.<=, R2.le) | |
84 | val () = check (R1.<, R2.lt) | |
85 | val () = check (R1.modf, R2.modf) | |
86 | val () = check (R1.*, R2.mul) | |
87 | val () = check (R1.*+, R2.muladd) | |
88 | val () = check (R1.*-, R2.mulsub) | |
89 | val () = check (R1.~, R2.neg) | |
90 | val () = check (R1.round, R2.round) | |
91 | val () = check (R1.strtor, R2.strtor) | |
92 | val () = check (R1.-, R2.sub) | |
93 | end | |
94 | ||
95 | in | |
96 | ||
97 | end |