This is an archive of the discontinued LLVM Phabricator instance.

[SCEV][NFC] Remove check for rewriteable types
ClosedPublic

Authored by mkazantsev on Feb 3 2023, 12:32 AM.

Details

Summary

I guess its only reason to exist is potential CT optimization, otherwise it is
just creating cohesion between this code and rewriter internals. We plan to
extend the rewriter. I'd rather not have this cohesion, unless there is a serious
reason to have it.

Diff Detail

Event Timeline

mkazantsev created this revision.Feb 3 2023, 12:32 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 3 2023, 12:32 AM
mkazantsev requested review of this revision.Feb 3 2023, 12:32 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 3 2023, 12:32 AM
mkazantsev added a comment.EditedFeb 3 2023, 12:32 AM

@nikic is it a big deal if we remove it? I mean, CT.

mkazantsev accepted this revision.Feb 6 2023, 9:16 PM

I guess I can use https://llvm-compile-time-tracker.com/ to know CT impact and revert it if it's visible.

This revision is now accepted and ready to land.Feb 6 2023, 9:16 PM
This revision was landed with ongoing or failed builds.Feb 6 2023, 9:44 PM
This revision was automatically updated to reflect the committed changes.

I put the whole stack on the compile-time tracker. This is for the patch: https://llvm-compile-time-tracker.com/compare.php?from=4f01266954b12395add2a6a87ef589126cb147fa&to=a86ad269a56d52099c9305738f5b20809b8dc7a5&stat=instructions:u

One notable change is +0.11% for mafft, but it is still relatively small. Numbers for all changes should be available under fhahn/perf/scev-expr-rewriter