From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2136) id C7AE13852757; Tue, 2 Aug 2022 12:56:57 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C7AE13852757 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Aldy Hernandez To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-1931] Limit ranger query in ipa-prop.cc to integrals. X-Act-Checkin: gcc X-Git-Author: Aldy Hernandez X-Git-Refname: refs/heads/master X-Git-Oldrev: 5e4f26441bdc89e95f0c257bc6649eed0142b939 X-Git-Newrev: e9f5b4fa4f2c93ef76e3766b3edabfaebc100741 Message-Id: <20220802125657.C7AE13852757@sourceware.org> Date: Tue, 2 Aug 2022 12:56:57 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Aug 2022 12:56:57 -0000 https://gcc.gnu.org/g:e9f5b4fa4f2c93ef76e3766b3edabfaebc100741 commit r13-1931-ge9f5b4fa4f2c93ef76e3766b3edabfaebc100741 Author: Aldy Hernandez Date: Tue Aug 2 12:14:22 2022 +0200 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: --- gcc/ipa-prop.cc | 4 ++++ 1 file changed, 4 insertions(+) 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 ()) {