[OpenMP][NFC] Simplify targetDataEnd conditions for CopyMember
authorJoel E. Denny <jdenny.ornl@gmail.com>
Tue, 10 Aug 2021 16:23:15 +0000 (12:23 -0400)
committerJoel E. Denny <jdenny.ornl@gmail.com>
Tue, 10 Aug 2021 16:29:55 +0000 (12:29 -0400)
commit2ced1f338ae05260b01d9293e9dba27b90a2bfed
tree3051d9f3fc63cde374c3231aa1e7b4637393236e
parent497b57ad0b9ee34aeb8c56e9f47332912b50d58c
[OpenMP][NFC] Simplify targetDataEnd conditions for CopyMember

targetDataEnd and targetDataBegin compute CopyMember/copy differently,
and I don't see why they should.  This patch eliminates one of those
differences by making a simplifying NFC change to targetDataEnd.

The change is NFC as follows.  The change only affects the case when
`!UNIFIED_SHARED_MEMORY || HasCloseModifier`.  In that case, the
following points are always true:

* The value of CopyMember is relevant later only if DelEntry = false.
* DelEntry = false only if one of the following is true:
    * IsLast = false.  In this case, it's always true that CopyMember
      = false = IsLast.
    * `MEMBER_OF && !PTR_AND_OBJ` is true.  In this case, CopyMember =
      IsLast.
* Thus, if CopyMember is relevant, CopyMember = IsLast.

Reviewed By: grokos

Differential Revision: https://reviews.llvm.org/D105990
openmp/libomptarget/src/omptarget.cpp