From: Aldy Hernandez Date: Tue, 2 Aug 2022 10:14:22 +0000 (+0200) Subject: Limit ranger query in ipa-prop.cc to integrals. X-Git-Tag: basepoints/gcc-14~5276 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e9f5b4fa4f2c93ef76e3766b3edabfaebc100741;p=thirdparty%2Fgcc.git Limit ranger query in ipa-prop.cc to integrals. ipa-* still works on legacy value_range's which only support integrals. This patch limits the query to integrals, as to not get a floating point range that can't exist in an irange. gcc/ChangeLog: * ipa-prop.cc (ipa_compute_jump_functions_for_edge): Limit ranger query to integrals. --- diff --git a/gcc/ipa-prop.cc b/gcc/ipa-prop.cc index fb8f97397dc..ca5b9f31570 100644 --- a/gcc/ipa-prop.cc +++ b/gcc/ipa-prop.cc @@ -2303,6 +2303,10 @@ ipa_compute_jump_functions_for_edge (struct ipa_func_body_info *fbi, { if (TREE_CODE (arg) == SSA_NAME && param_type + /* Limit the ranger query to integral types as the rest + of this file uses value_range's, which only hold + integers and pointers. */ + && irange::supports_p (TREE_TYPE (arg)) && get_range_query (cfun)->range_of_expr (vr, arg) && !vr.undefined_p ()) {