On 03/19/2018 03:55 PM, Cesar Philippidis wrote:
Note that this changes ordering of the vector-neutering jump and
worker-neutering jump at the end. In principle, this should not be
harmful, but it violates the invariant that vector-neutering
branch-around code should be as short-lived as possible. So, this needs
to be fixed.
I've found this issue by adding verification of the neutering, as
attached below.
ACK, thanks. I'll take a closer look at this.
I've got a tentative patch at
https://gcc.gnu.org/bugzilla/attachment.cgi?id=43707 ( PR84952 -
"[nvptx] bar.sync generated in divergent code" ).
Thanks,
- Tom