edf-hpc / verrou

floating-point errors checker
https://edf-hpc.github.io/verrou/vr-manual.html
GNU General Public License v2.0
49 stars 13 forks source link

Dealing with a verrou-unstable compiler intrinsic #20

Open HadrienG2 opened 6 years ago

HadrienG2 commented 6 years ago

I just discovered that the way the Rust compiler performs u64 -> f64 conversions is not stable under verrou's cool new --rounding-mode=float if the sub operation is being instrumented. Fair enough, I wouldn't really expect a cast to survive unexpected rounding occurring in the middle. The problem is that since casts are compiler intrinsics, they do not have associated symbols, so it does not seem to be possible to roll an exclude rule for them. What would you do in this kind of cases?