diff options
author | Michael Stefaniuc <mstefani@redhat.com> | 2015-03-12 00:19:19 +0100 |
---|---|---|
committer | Christopher Li <sparse@chrisli.org> | 2015-03-13 10:46:11 -0700 |
commit | 95940a8d5c7cc6ec8f42479cdcaed189957ba09f (patch) | |
tree | 412174774d86ae53d09babe73b4ed8f6ba946c73 | |
parent | 40791b94c56b1a6da2a0ddeb1f9d5c9d64de8f93 (diff) | |
download | sparse-95940a8d5c7cc6ec8f42479cdcaed189957ba09f.tar.gz |
Add the __builtin functions needed for INFINITY and nan().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.com>
Signed-off-by: Christopher Li <sparse@chrisli.org>
-rw-r--r-- | lib.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -876,6 +876,17 @@ void declare_builtin_functions(void) add_pre_buffer("extern int __builtin_islessgreater(float, float);\n"); add_pre_buffer("extern int __builtin_isunordered(float, float);\n"); + /* And some INFINITY / NAN stuff.. */ + add_pre_buffer("extern double __builtin_huge_val(void);\n"); + add_pre_buffer("extern float __builtin_huge_valf(void);\n"); + add_pre_buffer("extern long double __builtin_huge_vall(void);\n"); + add_pre_buffer("extern double __builtin_inf(void);\n"); + add_pre_buffer("extern float __builtin_inff(void);\n"); + add_pre_buffer("extern long double __builtin_infl(void);\n"); + add_pre_buffer("extern double __builtin_nan(const char *);\n"); + add_pre_buffer("extern float __builtin_nanf(const char *);\n"); + add_pre_buffer("extern long double __builtin_nanl(const char *);\n"); + /* And some __FORTIFY_SOURCE ones.. */ add_pre_buffer ("extern __SIZE_TYPE__ __builtin_object_size(void *, int);\n"); add_pre_buffer ("extern void * __builtin___memcpy_chk(void *, const void *, __SIZE_TYPE__, __SIZE_TYPE__);\n"); |