This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU/SI: Use the hazard recognizer to break SMEM soft clauses
ClosedPublic

Authored by tstellarAMD on Apr 7 2016, 2:40 PM.

Details

Summary

Add support for detecting hazards in SMEM soft clauses, so that we only
break the clauses when necessary, either by adding s_nop or re-ordering
other alu instructions.

Diff Detail

Repository
rL LLVM

Event Timeline

tstellarAMD retitled this revision from to AMDGPU/SI: Use the hazard recognizer to break SMEM soft clauses.
tstellarAMD updated this object.
tstellarAMD added a reviewer: arsenm.
tstellarAMD added a subscriber: llvm-commits.
nhaehnle accepted this revision.Apr 12 2016, 9:48 AM
nhaehnle added a reviewer: nhaehnle.
nhaehnle added a subscriber: nhaehnle.

The re-building of the ClauseDefs and ClauseUses sets at each instruction seems wasteful especially with longer clauses, but I'll leave it up to you.

Apart from that, LGTM.

This revision is now accepted and ready to land.Apr 12 2016, 9:48 AM
This revision was automatically updated to reflect the committed changes.