This is an archive of the discontinued LLVM Phabricator instance.

[OpenMP] Manually unroll the argument copy loop
ClosedPublic

Authored by jhuber6 on Sep 2 2021, 9:16 AM.

Details

Summary

The unroll pragma did not properly work as the loop bound was not known
when we optimize the runtime and we then added a "unroll disable"
metadata which prevented unrolling later when the bounds were known.
For now we manually unroll to make sure up to 16 elements are handled
nicely. This helps optimizations to look through the argument passing.

Diff Detail

Event Timeline

jdoerfert created this revision.Sep 2 2021, 9:16 AM
jdoerfert requested review of this revision.Sep 2 2021, 9:16 AM
Herald added a project: Restricted Project. · View Herald TranscriptSep 2 2021, 9:16 AM
Herald added a subscriber: sstefan1. · View Herald Transcript
jhuber6 accepted this revision.Sep 2 2021, 9:42 AM

LGTM

This revision is now accepted and ready to land.Sep 2 2021, 9:42 AM
jhuber6 commandeered this revision.Mar 21 2022, 4:57 PM
jhuber6 edited reviewers, added: jdoerfert; removed: jhuber6.
This revision now requires review to proceed.Mar 21 2022, 4:57 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 21 2022, 4:57 PM
jhuber6 updated this revision to Diff 417135.Mar 21 2022, 4:57 PM

Update for new runtime.

This revision is now accepted and ready to land.Mar 21 2022, 4:58 PM
This revision was automatically updated to reflect the committed changes.