aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-09-05 11:53:38 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-09-07 00:57:44 +0200
commit5c86c487ea5e3c6d4a56d7c98b39e33b6b4a28f5 (patch)
tree9bd3a8f572f064d447b0e0b4d79c316ee77071dc
parent78d7bdb29a9256681219366422b95a39d1e02faf (diff)
downloadsparse-5c86c487ea5e3c6d4a56d7c98b39e33b6b4a28f5.tar.gz
builtin: add declaration for __builtin_fma{,f,l}()
The motivation for this is to experiment with adding infrastructure for the linearization of builtins. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--builtin.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/builtin.c b/builtin.c
index 2e9be8be..26b612dc 100644
--- a/builtin.c
+++ b/builtin.c
@@ -490,6 +490,9 @@ static const struct builtin_fn builtins_common[] = {
{ "__builtin_ffs", &int_ctype, 0, { &int_ctype }, .op = &ffs_op },
{ "__builtin_ffsl", &int_ctype, 0, { &long_ctype }, .op = &ffs_op },
{ "__builtin_ffsll", &int_ctype, 0, { &llong_ctype }, .op = &ffs_op },
+ { "__builtin_fma", &double_ctype, 0, { &double_ctype, &double_ctype, &double_ctype }},
+ { "__builtin_fmaf", &float_ctype, 0, { &float_ctype, &float_ctype, &float_ctype }},
+ { "__builtin_fmal", &ldouble_ctype, 0, { &ldouble_ctype, &ldouble_ctype, &ldouble_ctype }},
{ "__builtin_frame_address", &ptr_ctype, 0, { &uint_ctype }},
{ "__builtin_free", &void_ctype, 0, { &ptr_ctype }},
{ "__builtin_huge_val", &double_ctype, 0 },