diff options
| author | Guillaume Melquiond | 2020-10-01 20:34:40 +0200 |
|---|---|---|
| committer | Guillaume Melquiond | 2020-11-13 15:14:34 +0100 |
| commit | 136454f306c8d4de83b8f37201307205a7c57786 (patch) | |
| tree | 8a6c93f3eda996091d79fbcb3bcfc326fccdd5fb /Makefile.common | |
| parent | b6fadbf6f08860609961f6dbad8a036346925265 (diff) | |
Inline the functions from coq_float64.h.
Since the code is compiled in -fPIC mode, the compiler cannot inline the
functions, due to the ABI mandating the ability to interpose visible
symbols. Hiding the symbols of coq_float64.h would work, except that they
float64.ml needs to reference them. (See #13124 for more details.)
This commit improves performances by 7% on the following code.
From Coq Require Import Int63 BinPos PrimFloat.
Definition foo n :=
let two := of_int63 2 in
Pos.iter (fun x => sub (mul x two) two) two n.
Time Eval vm_compute in foo 100000000.
If we consider only the floating-point operations (by ignoring the cost of
the loop), the speedup is actually 30%.
Diffstat (limited to 'Makefile.common')
0 files changed, 0 insertions, 0 deletions
