Skip to content

Commit c897e06

Browse files
author
Daniel Kroening
authored
Merge pull request diffblue#733 from tautschnig/float-lib
Float-point library implementation
2 parents e2204fc + 45d7f08 commit c897e06

File tree

4 files changed

+1595
-5
lines changed

4 files changed

+1595
-5
lines changed

src/ansi-c/ansi_c_internal_additions.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,18 @@ void ansi_c_internal_additions(std::string &code)
197197
"long double __CPROVER_infl(void);\n"
198198
"int __CPROVER_thread_local __CPROVER_rounding_mode="+
199199
std::to_string(config.ansi_c.rounding_mode)+";\n"
200+
"int __CPROVER_isgreaterf(float f, float g);\n"
201+
"int __CPROVER_isgreaterd(double f, double g);\n"
202+
"int __CPROVER_isgreaterequalf(float f, float g);\n"
203+
"int __CPROVER_isgreaterequald(double f, double g);\n"
204+
"int __CPROVER_islessf(float f, float g);\n"
205+
"int __CPROVER_islessd(double f, double g);\n"
206+
"int __CPROVER_islessequalf(float f, float g);\n"
207+
"int __CPROVER_islessequald(double f, double g);\n"
208+
"int __CPROVER_islessgreaterf(float f, float g);\n"
209+
"int __CPROVER_islessgreaterd(double f, double g);\n"
210+
"int __CPROVER_isunorderedf(float f, float g);\n"
211+
"int __CPROVER_isunorderedd(double f, double g);\n"
200212

201213
// absolute value
202214
"int __CPROVER_abs(int x);\n"

src/ansi-c/library/cprover.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ double __CPROVER_inf(void);
9292
float __CPROVER_inff(void);
9393
long double __CPROVER_infl(void);
9494
//extern int __CPROVER_thread_local __CPROVER_rounding_mode;
95+
int __CPROVER_isgreaterd(double f, double g);
9596

9697
// absolute value
9798
int __CPROVER_abs(int);

0 commit comments

Comments
 (0)