Skip to content

Add the majority of the remaining optimizer passes #23

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

Merged
merged 1 commit into from
Jan 13, 2017

Conversation

CodaFi
Copy link
Member

@CodaFi CodaFi commented Jan 12, 2017

Commented passes require parameters that we cannot provide if we're
going to keep the existing lookup mechanism.

Commented passes require parameters that we cannot provide if we're
going to keep the existing lookup mechanism.  We need to be clever about
argument saturation for parametrized optimizations.
@harlanhaskins
Copy link
Member

I'd be up for not using this lookup mechanism then...

@CodaFi
Copy link
Member Author

CodaFi commented Jan 12, 2017

It would be a shame to ditch it because of two pass families. I think there's a way to be clever about passing the arguments through and maintaining the existing lookup scheme. What that is, ¯_(ツ)_/¯.

@harlanhaskins
Copy link
Member

Is a switch statement that much worse than a static dict? Pretty sure Swift will compile this into a jump table based on the descriminating bits in the enum, so it shouldn't have a performance penalty

@CodaFi
Copy link
Member Author

CodaFi commented Jan 12, 2017

Mhm. The alternative I was thinking of probably won't work. OK, a big-honking jump table it will be.

Copy link
Member

@harlanhaskins harlanhaskins left a comment

Choose a reason for hiding this comment

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

I...think this is worse. Hard to expand later.

@CodaFi
Copy link
Member Author

CodaFi commented Jan 13, 2017

I'll revert this and leave the comments in so we can return to this.

@CodaFi
Copy link
Member Author

CodaFi commented Jan 13, 2017

As long as the root is GTG:

⛵️

@CodaFi CodaFi merged commit bec0881 into llvm-swift:master Jan 13, 2017
@CodaFi CodaFi deleted the dont-pass-me-by branch January 13, 2017 01:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants