diff options
| author | gingerBill <bill@gingerbill.org> | 2018-08-21 21:43:38 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2018-08-21 21:43:38 +0100 |
| commit | 54fe9f3eb145d171f0277a90c19ce6da09832742 (patch) | |
| tree | 6832fc74fc54fa9bb1af04e4fa99f8476862c2ca /src | |
| parent | cbc6c2666bc3e88a29745a214456618262b09971 (diff) | |
Improve min dep for min/max/abs/clamp
Diffstat (limited to 'src')
| -rw-r--r-- | src/check_expr.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 8c9efd71b..8b143cf36 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -3503,8 +3503,8 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32 { Type *bt = base_type(a.type); - if (bt == t_f32) add_package_dependency(c, "runtime", "__min_f32"); - if (bt == t_f64) add_package_dependency(c, "runtime", "__min_f64"); + if (are_types_identical(bt, t_f32)) add_package_dependency(c, "runtime", "__min_f32"); + if (are_types_identical(bt, t_f64)) add_package_dependency(c, "runtime", "__min_f64"); } } @@ -3622,10 +3622,10 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32 { Type *bt = base_type(operand->type); - if (bt == t_f32) add_package_dependency(c, "runtime", "__abs_f32"); - if (bt == t_f64) add_package_dependency(c, "runtime", "__abs_f64"); - if (bt == t_complex64) add_package_dependency(c, "runtime", "__abs_complex64"); - if (bt == t_complex128) add_package_dependency(c, "runtime", "__abs_complex128"); + if (are_types_identical(bt, t_f32)) add_package_dependency(c, "runtime", "__abs_f32"); + if (are_types_identical(bt, t_f64)) add_package_dependency(c, "runtime", "__abs_f64"); + if (are_types_identical(bt, t_complex64)) add_package_dependency(c, "runtime", "__abs_complex64"); + if (are_types_identical(bt, t_complex128)) add_package_dependency(c, "runtime", "__abs_complex128"); } } @@ -3725,11 +3725,11 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32 { Type *bt = base_type(x.type); - if (bt == t_f32) { + if (are_types_identical(bt, t_f32)) { add_package_dependency(c, "runtime", "__min_f32"); add_package_dependency(c, "runtime", "__max_f32"); } - if (bt == t_f64) { + if (are_types_identical(bt, t_f64)) { add_package_dependency(c, "runtime", "__min_f64"); add_package_dependency(c, "runtime", "__max_f64"); } |