Hi Tobias!

Thanks for picking this up!

Yes, in this patch I'd not updated any target except the posix one and left updating to the next patch in the series.

The reason I chose to do that was that the way I'd split patches 3 and 4 left patch 3 with some tricky behaviour that disappears with the application of patch 4.

That tricky behaviour requires change in the backend of other targets (on top of dummy changes in declarations), and I don't have the setup to test the the correctness of these other targets so didn't want to leave a "seemingly correct, but actually broken" mid-state.

I tried to highlight it in the "points I would like feedback on" section in the cover letter on the patch.

Do you think that it might be sensible to merge the two patches into one to avoid a broken intermediate state?

I kept them separate mostly to help with clarity of each patches purpose for reviewers.

Regards,
Matthew

On 2/17/26 09:45, Tobias Burnus wrote:
*External email: Use caution opening links or attachments*


Tobias Burnus wrote:
Hi Mat,

However, first, I want to point out a compilation issue:

This fails for the GCN compilation with: […]
Glancing at it, I don't quite see why the Nvptx compilation succeeds, but it seems to work.
The wonders of incremental builds …
On the other hand, this issue is fixed by applying 4/5 on top of it. Still, it would be useful to have a patch that doesn't intermittently break building the (GCN) compiler.
... nor the Nvptx build.

For nvptx, the fail is:

In file included from /home/tob/repos/gcc/libgomp/config/nvptx/task.c:41:
/home/tob/repos/gcc/libgomp/config/nvptx/../../task.c: In function 
‘gomp_barrier_handle_tasks’:
/home/tob/repos/gcc/libgomp/config/nvptx/../../task.c:1573:10: error: too many 
arguments to function ‘gomp_barrier_has_completed’; expected 2, have 3
  1573 |       && gomp_barrier_has_completed (state, &team->barrier, 
use_cancel))
       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~                         ~~~~~~~~~~
In file included from /home/tob/repos/gcc/libgomp/libgomp.h:219,
                  from /home/tob/repos/gcc/libgomp/config/nvptx/task.c:31:
/home/tob/repos/gcc/libgomp/config/nvptx/bar.h:181:1: note: declared here
   181 | gomp_barrier_has_completed (gomp_barrier_state_t state, gomp_barrier_t 
*bar)
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/tob/repos/gcc/libgomp/config/nvptx/../../task.c:1583:11: error: too many 
arguments to function ‘gomp_team_barrier_done’; expected 2, have 3
  1583 |           gomp_team_barrier_done (&team->barrier, state, use_cancel);
       |           ^~~~~~~~~~~~~~~~~~~~~~                         ~~~~~~~~~~

Tobias


Reply via email to