From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.ispras.ru (mail.ispras.ru [83.149.199.84]) by sourceware.org (Postfix) with ESMTPS id 3904F384E7A4 for ; Sat, 24 Dec 2022 10:18:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 3904F384E7A4 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=ispras.ru Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=ispras.ru Received: from [10.10.3.121] (unknown [10.10.3.121]) by mail.ispras.ru (Postfix) with ESMTPS id AAFB1419E9F0; Sat, 24 Dec 2022 10:18:02 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 mail.ispras.ru AAFB1419E9F0 Date: Sat, 24 Dec 2022 13:18:02 +0300 (MSK) From: Alexander Monakov To: "Jose E. Marchesi" cc: Richard Biener , Qing Zhao , gcc-patches@gcc.gnu.org Subject: Re: [PATCH V2] Disable sched1 in functions that call setjmp In-Reply-To: <87edsp86ni.fsf@oracle.com> Message-ID: <1a49a999-b0ac-84e4-d4dc-f366c86b06b0@ispras.ru> References: <0ad07be0-876d-cc24-6cdb-6b94690dfc52@ispras.ru> <64AC0724-25B0-4A85-AA9E-8A53A82C8A6B@gmail.com> <87edsp86ni.fsf@oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,SPF_HELO_NONE,SPF_PASS,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 Sat, 24 Dec 2022, Jose E. Marchesi wrote: > However, there is something I don't understand: wouldn't sched2 > introduce the same problem when -fsched2-use-superblocks is specified? Superblocks are irrelevant, a call instruction does not end a basic block and the problematic motion happens within a BB on your testcase. Didn't you ask about this already? > In that case, the option a) would need to be expanded to disable sched2 > as well, and b) wouldn't have effect (!after_reload)? See my response to Qing Zhao, I think due to special-casing of pseudos that are live at setjmp during register allocation, sched2 will not move them in such manner (they should be assigned to memory and I don't expect sched2 will move such MEMs across calls). But of course there may be holes in this theory. On some targets disabling sched2 is not so easy because it's responsible for VLIW packing (bundling on ia64). Alexander