aboutsummaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-11-18 21:07:29 +0100
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-11-18 21:07:29 +0100
commit8384d27c122ec4ca4b7ad0f524df52b61a49c66a (patch)
treed86ff8780c4435d3b4fe92b5251e0f9b447b86c7 /common
parent362bdda28ca3c4dcc992575cbbe9400b64425990 (diff)
parente6e036b3f285d2f3ba2a5036a413eb9c7d7534cd (diff)
downloadcompcert-kvx-8384d27c122ec4ca4b7ad0f524df52b61a49c66a.tar.gz
compcert-kvx-8384d27c122ec4ca4b7ad0f524df52b61a49c66a.zip
Merge branch 'master' (Absint 3.8) into kvx-work-merge3.8
Diffstat (limited to 'common')
-rw-r--r--common/AST.v2
-rw-r--r--common/Builtins0.v6
2 files changed, 7 insertions, 1 deletions
diff --git a/common/AST.v b/common/AST.v
index 268e13d5..979db4b9 100644
--- a/common/AST.v
+++ b/common/AST.v
@@ -105,7 +105,7 @@ Lemma rettype_eq: forall (t1 t2: rettype), {t1=t2} + {t1<>t2}.
Proof. generalize typ_eq; decide equality. Defined.
Global Opaque rettype_eq.
-Fixpoint proj_rettype (r: rettype) : typ :=
+Definition proj_rettype (r: rettype) : typ :=
match r with
| Tret t => t
| Tint8signed | Tint8unsigned | Tint16signed | Tint16unsigned => Tint
diff --git a/common/Builtins0.v b/common/Builtins0.v
index 8da98314..d84c9112 100644
--- a/common/Builtins0.v
+++ b/common/Builtins0.v
@@ -332,6 +332,7 @@ End LOOKUP.
Inductive standard_builtin : Type :=
| BI_select (t: typ)
| BI_fabs
+ | BI_fabsf
| BI_fsqrt
| BI_negl
| BI_addl
@@ -364,7 +365,9 @@ Definition standard_builtin_table : list (string * standard_builtin) :=
:: ("__builtin_sel", BI_select Tfloat)
:: ("__builtin_sel", BI_select Tsingle)
:: ("__builtin_fabs", BI_fabs)
+ :: ("__builtin_fabsf", BI_fabsf)
:: ("__builtin_fsqrt", BI_fsqrt)
+ :: ("__builtin_sqrt", BI_fsqrt)
:: ("__builtin_negl", BI_negl)
:: ("__builtin_addl", BI_addl)
:: ("__builtin_subl", BI_subl)
@@ -396,6 +399,8 @@ Definition standard_builtin_sig (b: standard_builtin) : signature :=
mksignature (Tint :: t :: t :: nil) t cc_default
| BI_fabs | BI_fsqrt =>
mksignature (Tfloat :: nil) Tfloat cc_default
+ | BI_fabsf =>
+ mksignature (Tsingle :: nil) Tsingle cc_default
| BI_negl =>
mksignature (Tlong :: nil) Tlong cc_default
| BI_addl | BI_subl | BI_i64_umulh| BI_i64_smulh
@@ -428,6 +433,7 @@ Program Definition standard_builtin_sem (b: standard_builtin) : builtin_sem (sig
| _ => None
end) _ _
| BI_fabs => mkbuiltin_n1t Tfloat Tfloat Float.abs
+ | BI_fabsf => mkbuiltin_n1t Tsingle Tsingle Float32.abs
| BI_fsqrt => mkbuiltin_n1t Tfloat Tfloat Float.sqrt
| BI_negl => mkbuiltin_n1t Tlong Tlong Int64.neg
| BI_addl => mkbuiltin_v2t Tlong Val.addl _ _