From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id B7BB73858D1E for ; Tue, 24 Jan 2023 12:54:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B7BB73858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1674564843; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=BRiD1I23FooLtocHziqW7B7Ij/ChHg78VBFugh3yDJ0=; b=fRmtqZYVE3TvO+L+MRFGHvEeiMUm9z+xwTyxu/4v4gTlZcJTJNT4oBpXLwoymL6HNQBJww mZSHGlzuMWeePFeUKvND6J0KjzgmZqie/N7UQtIadSs5J8C08DNeb7WiLu7MIXoM+zZuCl q50LMOaKkolhfSn2DWjx8XG2wfbm/HI= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-482-QJnT-_HxMyyTqRPWVkTLiA-1; Tue, 24 Jan 2023 07:53:59 -0500 X-MC-Unique: QJnT-_HxMyyTqRPWVkTLiA-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 80AA4858F09; Tue, 24 Jan 2023 12:53:59 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.39.192.223]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3AC6B2026D4B; Tue, 24 Jan 2023 12:53:59 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.17.1/8.17.1) with ESMTPS id 30OCruaO518119 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 24 Jan 2023 13:53:56 +0100 Received: (from jakub@localhost) by tucnak.zalov.cz (8.17.1/8.17.1/Submit) id 30OCrt1n518118; Tue, 24 Jan 2023 13:53:55 +0100 Date: Tue, 24 Jan 2023 13:53:55 +0100 From: Jakub Jelinek To: Richard Biener Cc: gcc-patches@gcc.gnu.org Subject: Re: [PATCH] tree-optimization/108500 - avoid useless fast-query compute in CFG cleanup Message-ID: Reply-To: Jakub Jelinek References: <20230124123707.D802C139FB@imap2.suse-dmz.suse.de> MIME-Version: 1.0 In-Reply-To: <20230124123707.D802C139FB@imap2.suse-dmz.suse.de> X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spam-Status: No, score=-3.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Tue, Jan 24, 2023 at 01:37:07PM +0100, Richard Biener wrote: > CFG cleanup computes dominators before the loop over blocks looking > for merging opportunities. That computes also the fast-query DFS > numbers but that's a bit pointless since any CFG cleanup will invalidate > them immediately (they are re-computed before fixing up loops). > The following avoids this and fixes the SIGSEGV due to the deep > recursion in assign_dfs_numbers after inlining very many small > functions. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, it's a border-line > regression and the following doesn't really avoid the deep recursion > but instead cleans up the CFG before eventually doing it. Not very happy with adding extra argument to 110 callers of this function, but guess we can live with it. Ok. > PR tree-optimization/108500 > * dominance.h (calculate_dominance_info): Add parameter > to indicate fast-query compute, defaulted to true. > * dominance.cc (calculate_dominance_info): Honor > fast-query compute parameter. > * tree-cfgcleanup.cc (cleanup_tree_cfg_noloop): Do > not compute the dominator fast-query DFS numbers. Jakub