This is an archive of the discontinued LLVM Phabricator instance.

[SCEV] Do not bother creating separate SCEVUnknown for unreachable nodes
ClosedPublic

Authored by mkazantsev on Jan 31 2019, 11:22 PM.

Details

Summary

Currently, SCEV creates SCEVUnknown for every node of unreachable code. If we
have a huge amounts of such code, we will be littering SE with these nodes. We could
just state that they all are undef and save some memory.

Diff Detail

Repository
rL LLVM

Event Timeline

mkazantsev created this revision.Jan 31 2019, 11:22 PM
sanjoy accepted this revision.Feb 1 2019, 9:04 PM

This is fine, but IMO mapping them to undef feels cleaner conceptually.

This revision is now accepted and ready to land.Feb 1 2019, 9:04 PM

Makes sense, undef works fine, too.

mkazantsev updated this revision to Diff 184989.Feb 3 2019, 8:59 PM
mkazantsev edited the summary of this revision. (Show Details)

Remade to undef.

This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptFeb 3 2019, 9:04 PM