This is an archive of the discontinued LLVM Phabricator instance.

InstructionSimplify: End our long national nightmare of ever-growing Simplify* arguments.
ClosedPublic

Authored by dberlin on Apr 24 2017, 12:07 PM.

Details

Summary

Expose the internal query structure, start using it.

Note: This is the most minimal change possible i could create. I have
trivial followups, like fixing the one use of const FastMathFlags &,
the renaming of CtxI to be consistent, etc.

This should be NFC.

Diff Detail

Repository
rL LLVM

Event Timeline

dberlin created this revision.Apr 24 2017, 12:07 PM
dberlin added inline comments.Apr 24 2017, 12:09 PM
include/llvm/Analysis/InstructionSimplify.h
50 ↗(On Diff #96441)

I considered docs, but i'm not even sure what i'd say here.
They are straightforward enough that we never documented them before.

Remove MaxRecurse from the structure that was accidentally left in this change.

davide accepted this revision.Apr 25 2017, 2:55 PM

Please go for it, this was really unbearable.

include/llvm/Analysis/InstructionSimplify.h
64–66 ↗(On Diff #96443)

We should really remove them at some point.

This revision is now accepted and ready to land.Apr 25 2017, 2:55 PM

For the follow-up as they're just cleaning more these functions with 2^aleph_zero arguments feel free to commit them without pre-commit reviews as they're obvious goodness.

This revision was automatically updated to reflect the committed changes.