public inbox for fortran@gcc.gnu.org
 help / color / mirror / Atom feed
From: Mikael Morin <morin-mikael@orange.fr>
To: Thomas Koenig <tkoenig@netcologne.de>,
	Harald Anlauf <anlauf@gmx.de>,
	Richard Biener <richard.guenther@gmail.com>
Cc: gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org
Subject: Re: [PATCH 09/10] fortran: Support clobbering of variable subreferences [PR88364]
Date: Wed, 21 Sep 2022 20:56:12 +0200	[thread overview]
Message-ID: <cce9913a-33a9-2810-b34a-3b8c7e8a2eea@orange.fr> (raw)
In-Reply-To: <da330cf1-f6a7-cd56-1a25-40dd6280e81b@netcologne.de>

Le 21/09/2022 à 11:57, Thomas Koenig a écrit :
> 
> 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).
> 
> Obviously, "clobber" means taking a big stick and hitting the beast
> in question over the head with it :-)
> 
> 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}

I Hope it helps.

  reply	other threads:[~2022-09-21 18:57 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-16 20:24 [PATCH 00/10] fortran: clobber fixes [PR41453] Mikael Morin
2022-09-16 20:24 ` [PATCH 01/10] fortran: Move the clobber generation code Mikael Morin
2022-09-16 20:24 ` [PATCH 02/10] fortran: Fix invalid function decl clobber ICE [PR105012] Mikael Morin
2022-09-16 20:24 ` [PATCH 03/10] fortran: Move clobbers after evaluation of all arguments [PR106817] Mikael Morin
2022-09-16 20:24 ` [PATCH 04/10] fortran: Support clobbering with implicit interfaces [PR105012] Mikael Morin
2022-09-16 20:24 ` [PATCH 05/10] fortran: Support clobbering of reference variables [PR41453] Mikael Morin
2022-09-16 20:24 ` [PATCH 06/10] fortran: Support clobbering of SAVE variables [PR87395] Mikael Morin
2022-09-16 20:24 ` [PATCH 07/10] fortran: Support clobbering of ASSOCIATE variables [PR87397] Mikael Morin
2022-09-16 20:24 ` [PATCH 08/10] fortran: Support clobbering of allocatables and pointers [PR41453] Mikael Morin
2022-09-16 20:24 ` [PATCH 09/10] fortran: Support clobbering of variable subreferences [PR88364] Mikael Morin
2022-09-17 17:03   ` Thomas Koenig
2022-09-17 19:33     ` Mikael Morin
2022-09-17 19:49       ` Bernhard Reutner-Fischer
2022-09-17 19:50       ` Mikael Morin
2022-09-17 21:24         ` Bernhard Reutner-Fischer
2022-09-18  6:12       ` Richard Biener
2022-09-18  9:10         ` Mikael Morin
2022-09-18 10:23           ` Thomas Koenig
2022-09-18 18:32             ` Harald Anlauf
2022-09-18 20:55               ` Mikael Morin
2022-09-19  7:11                 ` Mikael Morin
2022-09-19 19:46                 ` Harald Anlauf
2022-09-19 20:50                   ` Mikael Morin
2022-09-20  6:54                     ` Thomas Koenig
2022-09-20  8:46                       ` Mikael Morin
2022-09-20 21:08                     ` Harald Anlauf
2022-09-20 21:08                       ` Harald Anlauf
2022-09-21  9:57                       ` Thomas Koenig
2022-09-21 18:56                         ` Mikael Morin [this message]
2022-09-21 19:12                           ` Harald Anlauf
2022-09-21 19:12                             ` Harald Anlauf
2022-09-18 20:43             ` Mikael Morin
2022-09-18 10:48           ` Richard Biener
2022-09-19  7:31             ` Mikael Morin
2022-09-19  7:58               ` Richard Biener
2022-09-16 20:24 ` [PATCH 10/10] fortran: Support clobbering of derived types [PR41453] Mikael Morin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cce9913a-33a9-2810-b34a-3b8c7e8a2eea@orange.fr \
    --to=morin-mikael@orange.fr \
    --cc=anlauf@gmx.de \
    --cc=fortran@gcc.gnu.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=richard.guenther@gmail.com \
    --cc=tkoenig@netcologne.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).