Skip to content

[sil-inliner] Respect the @inline(__always) and @_transparent even if inlining of generics is disabled #9794

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 3 commits into from
May 20, 2017

Conversation

swiftix
Copy link
Contributor

@swiftix swiftix commented May 19, 2017

  • If some functions are explicitly annotated by developers as @inline(__always) or @_transparent, they should always be a subject for the inlining of generics, even if this kind of inlining is not enabled currently for all functions.

  • Also add a small fix to inline transparent functions by the performance inliner as if they are always inline functions

This is a second attempt to land it. Let's do more testing before merging.

swiftix added 3 commits May 19, 2017 15:08
… inlining of generics is disabled

If some functions are explicitly annotated by developers as @inline(__always) or @_transparent, they should always be a subject for the inlining of generics, even if this kind of inlining is not enabled currently for all functions.
…nce inliner as if they are always inline functions
@swiftix
Copy link
Contributor Author

swiftix commented May 19, 2017

@swift-ci please test

@swiftix swiftix merged commit 70578b8 into swiftlang:master May 20, 2017
@swiftix
Copy link
Contributor Author

swiftix commented May 20, 2017

@milseman @shajrawi I merged this commit again. It passed all tests on Linux and MacOS. If it fails again on CI bots, could you try to force a clean build? It could be that the issues we've seen last time were because the incremental bots had some issues with their cached state.

@shajrawi
Copy link

I just queued a clean command on the linux bots - just in case

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