This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU/SI: Incomplete shader binaries need to finish execution at the end
ClosedPublic

Authored by mareko on Mar 10 2016, 11:44 AM.

Diff Detail

Event Timeline

mareko updated this revision to Diff 50323.Mar 10 2016, 11:44 AM
mareko retitled this revision from to AMDGPU/SI: Incomplete shader binaries need to finish execution at the end.
mareko updated this object.
mareko added reviewers: tstellarAMD, arsenm.

Is there any way you can reduce the testcase?

Is there any way you can reduce the testcase?

Not to my knowledge. I tried to replace several of conditional br jumps with unconditional br jumps and it always moved the ending block to the end or failed to compile.

Note that we know of only 2 shaders which reproduce the issue and none of them come from piglit. One of them comes from the MATE WM and the other one is from WebGL. If it were easy to reproduce, we would have more than that.

mareko updated this revision to Diff 50435.Mar 11 2016, 8:40 AM
mareko edited edge metadata.

Updated the test.

tstellarAMD accepted this revision.Mar 14 2016, 7:24 AM
tstellarAMD edited edge metadata.

LGTM.

This revision is now accepted and ready to land.Mar 14 2016, 7:24 AM
arsenm edited edge metadata.Mar 14 2016, 9:01 AM

Can we add a pseudo for this instead of checkin for the special case with s_endpgm?

test/CodeGen/AMDGPU/ret_jump.ll
4

Unnecessary

This revision was automatically updated to reflect the committed changes.