[PATCH] D123531: [GlobalsModRef][FIX] Ensure we honor synchronizing effects of intrinsics

John McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 15 11:26:43 PDT 2022


rjmccall added a comment.

`readnone` etc. surely encompass the entire behavior of the call, which of course includes any callbacks it might make.  And synchronization needs to be understood as effectively a store, since synchronizing with another thread which has done a store guarantees the visibility of that store on this thread; and thus `readonly` etc. must imply `nosync`.  So whatever `nocallback` means, it must be finer-grained, suitable for situations where the stronger attributes cannot be used.

I think it would be a huge shame if we had to go update a million testcases just to compensate for `nocallback` being added when there's already a stronger attribute on the intrinsic.  That does not seem like a good use of anyone's time.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123531/new/

https://reviews.llvm.org/D123531



More information about the llvm-commits mailing list