[llvm-dev] [RFC][LangRef][AliasAnalysis] Clarify `noalias` affects only modified objects

Finkel, Hal J. via llvm-dev llvm-dev at lists.llvm.org
Thu Feb 20 17:18:49 PST 2020


For AA-based memory-dependency analysis, this makes sense to me. read/read aliasing doesn't affect anything.

My only questions is: is there any concern that this might confuse instrumentation passes, or similar, which might do something even for read/read cases? Does anyone know of any other use cases that might be affected by this?

 -Hal

Hal Finkel
Lead, Compiler Technology and Programming Languages
Leadership Computing Facility
Argonne National Laboratory

________________________________
From: Johannes Doerfert
Sent: Thursday, February 20, 2020 5:46 PM
To: LLVM-Dev
Cc: Finkel, Hal J.
Subject: [RFC][LangRef][AliasAnalysis] Clarify `noalias` affects only modified objects

I would like to clarify that `noalias` on arguments matches `restrict`
in C99. In particular, objects need to be modified for the `noalias` to
be "effective". We basically apply this reasoning already in various
parts but I want to make it explicit now.

The wording change and the reasons are explained in
  https://reviews.llvm.org/D74935

Please let me know if there are concerns.

Thanks,
  Johannes
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200221/a6130d91/attachment.html>


More information about the llvm-dev mailing list