From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by sourceware.org (Postfix) with ESMTPS id DB6D43858438; Wed, 21 Sep 2022 19:12:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DB6D43858438 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1663787567; bh=Jb2FVozILYWMBqY4uYrFlc+Pg7eQabxQ05+MWTh3iLI=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=joWNS/fe+T/MYDuubdWc8MrCFH8rEgAddz4NFBKvNT2uwiIJzLK2ihowctszSbjCV voV3Mv2JmDNjVWTnt0EH3kS+Wz8pYffWH7+BHaXOkrboGG23S5J6/30ngugkt20TQC lxMC8g0hIyGk6CWoI8Qthqm7Uarz1ClCyVVdNpac= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.178.29] ([93.207.89.8]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mjj87-1oyZBk1TDP-00lBh2; Wed, 21 Sep 2022 21:12:47 +0200 Message-ID: <343c9635-96c3-1c5d-0890-8962a7125a15@gmx.de> Date: Wed, 21 Sep 2022 21:12:43 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: [PATCH 09/10] fortran: Support clobbering of variable subreferences [PR88364] To: Mikael Morin , Thomas Koenig , Richard Biener Cc: gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org Newsgroups: gmane.comp.gcc.fortran,gmane.comp.gcc.patches References: <20220916202439.549820-1-mikael@gcc.gnu.org> <20220916202439.549820-10-mikael@gcc.gnu.org> <3edab734-f5bb-5557-ff98-b0ce47d7c510@orange.fr> <3ef8c5c4-35a1-fa60-2a2d-a7bb3fbd35fc@gmx.de> <9996bd59-9cf1-12df-faa5-7d546e5732f7@orange.fr> <6ac60050-2298-df01-1345-d53c868ed5d9@gmx.de> <0a36f845-13fb-5046-7731-87f4832e8deb@orange.fr> Content-Language: en-US From: Harald Anlauf In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:7lbmGfD0MHs+8TH9qr480BPOLQLgzQ4T36Qq9RwvInVYL9jNrwQ j/GM0lfKmKam868DFC8w7kV9dwevRiWplL5mJeCDZdQlcw0IIcZf82rZOU5ZRyCu8ImBAWp ewEg2Sju0rCUugBYi/u2WZTMxcyE6liy3LMZKbvQhxr9CA0qPWHk8+GiPSU24a04Mz/stlH aWSZKARTHVFB9eEBHx7qw== X-UI-Out-Filterresults: notjunk:1;V03:K0:N1RIe7bVJRY=:+hCCG/OpWO4PrX4tGg9EcM nMCIABDHluH2EhTqCGjxpmFpJ5AehC0w1er7w+cVWRV5ioGSu24hmeDyceX7EGjcoytyXD29t qIlVkdS7pmk/R+vG7VtLGIubtuZYYEu3Et3h5t9JhQkSlRXPh97XFXHSmjeWjpLpqV+wCHe4U BjZfe3sPSZmfizFwhV8HYBcKjvQXgmPGdZ189CddbXR7nCDJB/SmFAQpCPXjRsSe9Ad/pZp25 RibryUR8/FB+AHCkb0kbnlV9xBBPMz1TC4PFhGOiVIDFLjyNEdbTdCbIMfHSUSpIodBKpS7Ax 7dgzeMvy9zcr9D6faQDJ2yQklpjUhP17JZLCNSRvwxg/wHBxdQabkAUVARc1Dw9WLM5sqg/SQ WKImIDsNqxgBCNwgsjI1UIY9S6SZ6ZYdPH/MnxocMpG4xIow/bYgRk9algLk42/YgkTbLaM/N GzIzPeYjR557BbQJ1cluFh40owebAZBKM1AQBMaE9fbD8QAQRiRKuMC0qBId0MTj8C/ILypU7 xcN3XhUQpAoQ1L59SwfusbWGB7Jnai1u3C1b2mp5pVOuJvE/T+pGp3TOCS6Ogmya1pAJ1e82u aBGA8ZCyxpwobBs+dmw+CE9I4SiF7UV6u14Ys8aRCxwp4c47MR7W4s4Fz2X6t/Q/VPLjZzInz YfjBqASVR0KQMheaCBXN2LKOJjxyyhnYSyGG1U7+8IU/6cMuHR3i5n7OqrsTDZW+P3t7y3jHV ZeUu2go23UzQ5LpGlf1Enp5EnhhPRwFZ62cXGp5zTF4dn2q840av1FM7Cgw1BwacSHDLr9mbJ ZlnaSIGpVHM7pHYylwsMy6rNrchfFz90CZepfa62dXXBuMlbt7FauzHI9Y8Br8dokXssMexWm 2PiA215Y0y0g5q8ks+fRMkUlTSIKZUInm9Vil4pTPRrqDMmP8qMqK9yoJ0JbSovlGgk3epyeu yX6X9TAzMVn6FqRDUpE0LK/ZKtn3rg51XEnA7NvWB3HHUOCJII+79mKmTBxSefI/VP1xykmpx bhvFFTqCo/JQ8MYVrF+pu73vkFu/ZO3rGEdP4HvqavaQ99NAvajx7w0nbMGFk9xGobPvKR/dn 2LnYy1AKf6L/L8H7kNRZX5EajXvEnu3VrsqjeFPtQHOc7gNZ2Xao1D9MrvpDhqa+qE6jhxZkL CTbfI= X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,NICE_REPLY_A,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,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: Message-ID: <20220921191243.R7d3bsSDh2wTTXg5NsafZJ_nFdK63nez91SlFb5aoxc@z> Hi Mikael, Am 21.09.22 um 20:56 schrieb Mikael Morin: > Le 21/09/2022 =C3=A0 11:57, Thomas Koenig a =C3=A9crit=C2=A0: >> >> Hi Harald, >> >>> I think I understand much of what is said, but I feel that I do >>> not really understand what *clobber* means for the different >>> beasts we are discussing (although I have an impression of what >>> it means for a scalar object). >> >> More seriously: My understanding of a clobber it is a hint to >> the middle end that the value in question will not be used, >> and that operations leading to this value can be removed, >> unless they are used otherwise. >> > My understanding is that "clobber" means "overwrite with garbage" for > all the beasts we have been discussing, which translates to nothing in > the final code, but can be used by the optimizers as Thomas said. > > This is a bit off-topic but clobbers model registers having their values > changed unpredictably or by ways unknown to the compiler, in the backend > code, or in inline assembly statements. > Here is an excerpt from rtl.texi: >> @item (clobber @var{x}) >> Represents the storing or possible storing of an unpredictable, >> undescribed value into @var{x} ah, I missed that file. I only found references to assembly, and references to registers etc. were not really helpful here. It also says: > If @var{x} is @code{(mem:BLK (const_int 0))} or > @code{(mem:BLK (scratch))}, it means that all memory > locations must be presumed clobbered. ... so this goes into the direction I was thinking of. > I Hope it helps. >