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

Port divide-by-constant magic number optimizations from simple_preopt to ISLE mid-end #6049

Open
fitzgen opened this issue Mar 17, 2023 · 2 comments
Labels
cranelift:mid-end clif-to-clif related passes, legalizations, etc... isle Related to the ISLE domain-specific language

Comments

@fitzgen
Copy link
Member

fitzgen commented Mar 17, 2023

This is the old simple preopt stuff for some number divided/remaindered by a non-power-of-two constant:

The ISLE + e-graphs mid-end work replaced simple_preopt, but never ported these magic constants over. We should port them over.

HOWEVER, right now we can't replace potentially-trapping instructions in ISLE, and we need that ability to do this.

@fitzgen fitzgen added isle Related to the ISLE domain-specific language cranelift:mid-end clif-to-clif related passes, legalizations, etc... labels Mar 17, 2023
@github-actions
Copy link

Subscribe to Label Action

cc @cfallin, @fitzgen

This issue or pull request has been labeled: "isle"

Thus the following users have been cc'd because of the following labels:

  • cfallin: isle
  • fitzgen: isle

To subscribe or unsubscribe from this label, edit the .github/subscribe-to-label.json configuration file.

Learn more.

@jameysharp
Copy link
Contributor

Specifically, this depends on #5908.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cranelift:mid-end clif-to-clif related passes, legalizations, etc... isle Related to the ISLE domain-specific language
Projects
None yet
Development

No branches or pull requests

2 participants