This is an archive of the discontinued LLVM Phabricator instance.

[Unroll] Add an option to control complete unrolling
ClosedPublic

Authored by skatkov on Sep 18 2019, 3:34 AM.

Details

Summary

Add an ability to specify the max full unroll count for LoopUnrollPass pass
in pass options.

Diff Detail

Event Timeline

skatkov created this revision.Sep 18 2019, 3:34 AM
Herald added a project: Restricted Project. · View Herald TranscriptSep 18 2019, 3:34 AM

I might be in need for the morning coffee, but I cant find the actual use of UP.FullUnrollMaxCount...

fedor.sergeev requested changes to this revision.Sep 18 2019, 9:54 PM

I might be in need for the morning coffee, but I cant find the actual use of UP.FullUnrollMaxCount...

Ugh... I was looking for that use in the new code, but it is there in the old code, sorry.

So this patch just adds a pass-level option to provide to an existing control.

Looked through the tests and it seems that we have no tests to check this existing control (no use of -unroll-full-max-count option).
Can you, please, extend your test to check:

  • for actual "max" functionality, where max is non-zero and trip-count is either more or less than the max
  • both ways of controlling this max-count (-passes and direct option)

Thanks!

This revision now requires changes to proceed.Sep 18 2019, 9:54 PM
skatkov updated this revision to Diff 220815.Sep 18 2019, 10:28 PM

More tests are added.

fedor.sergeev accepted this revision.Sep 18 2019, 10:48 PM

Great, thanks a lot!

This revision is now accepted and ready to land.Sep 18 2019, 10:48 PM
This revision was automatically updated to reflect the committed changes.