diff options
author | Checkmate50 <dgeisler50@gmail.com> | 2016-06-06 21:09:06 -0600 |
---|---|---|
committer | Checkmate50 <dgeisler50@gmail.com> | 2016-06-06 21:09:06 -0600 |
commit | 5cff8cd77c629ec8e48a2498b1e704173306586a (patch) | |
tree | 8ab0b6fbda08b12e9b2635efdb5806371197c58c /Test/floats/float14.bpl | |
parent | c19c2495497d0dfa7aaf871cf833cd5e5f986d33 (diff) |
finished testing, fixed several minor compiler bugs
Diffstat (limited to 'Test/floats/float14.bpl')
-rw-r--r-- | Test/floats/float14.bpl | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Test/floats/float14.bpl b/Test/floats/float14.bpl new file mode 100644 index 00000000..46c1b07d --- /dev/null +++ b/Test/floats/float14.bpl @@ -0,0 +1,17 @@ +// RUN: %boogie -proverWarnings:1 "%s" > "%t" +// RUN: %diff "%s.expect" "%t" + +function {:builtin "(_ to_fp 11 53) RNE"} TO_FLOAT64_INT(int) returns (float64); +function {:builtin "(_ to_fp 11 53) RNE"} TO_FLOAT64_REAL(real) returns (float64); + +procedure main() returns () { + var x : float64; + var y : float64; + var r : float64; + + x := TO_FLOAT64_INT(77617); + y := TO_FLOAT64_INT(33096); + r := y*y*y*y*y*y * TO_FLOAT64_REAL(333.75) + x*x * (x*x*y*y*TO_FLOAT64_INT(11) - y*y*y*y*y*y - y*y*y*y * TO_FLOAT64_INT(121) - TO_FLOAT64_INT(2)) + y*y*y*y*y*y*y*y * TO_FLOAT64_REAL(5.5) + x / (y*TO_FLOAT64_INT(2)); + + assert(r >= TO_FLOAT64_INT(0)); +}
\ No newline at end of file |