Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

C++: Fix getType for experimental IR dataflow #10713

Merged
merged 5 commits into from
Oct 11, 2022

Conversation

MathiasVP
Copy link
Contributor

This PR replaces IRType with Type in the IR-based use-use dataflow library. This change is needed to remain compatible with the getType in the old AST-based dataflow library. And in fact, I think using Type here makes more sense since this is often the type people want to use for dataflow queries.

The main point of this PR is done in the last commit. The first commit is a refactoring PR that should be behavior-preserving, and the second commit is a slight performance change that reduces the number of dataflow nodes generated from IR operands.

….. n]'. This simplifies some arithmetic in a few predicates.
…t ever used for dataflow, and it should give us a slight speedup.
@MathiasVP MathiasVP requested a review from a team as a code owner October 6, 2022 16:30
@github-actions github-actions bot added the C++ label Oct 6, 2022
Copy link
Contributor

@jketema jketema left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first two commits LGTM. Related to the third commit I've one question below. I also have trouble wrapping my head around the GLValue stuff and Type0, so I think I need a voiceover for those.

@MathiasVP
Copy link
Contributor Author

@jketema 95e7985 adds a more detailed comment about missing types in the database. I also took the liberty of renaming getType0 to getTypeImpl to limit (but probably not eliminate 😂) confusion about the predicate.

Copy link
Contributor

@jketema jketema left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants