-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Move monomorphize::resolve() to librustc #44896
Merged
Merged
Changes from 10 commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
baa0105
copy resolve() over to librustc
qmx 3bd09de
re-enable mir inlining across trait methods
qmx 5eb302f
always use resolve
qmx 24fc50f
make it not to be a method
qmx 8a5800e
take ParamEnv into account when resolving
qmx 081b29c
stop using monomorphize::resolve()
qmx 2922066
style fixes as requested by @eddyb
qmx 08e1f0b
fix formatting
qmx 59e778e
improve documentation for resolve()
qmx a29c770
make match exaustive
qmx b24a672
weird formatting
qmx 11e141e
stray comma
qmx File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -19,9 +19,10 @@ use common::{self, CrateContext}; | |
use consts; | ||
use declare; | ||
use llvm::{self, ValueRef}; | ||
use monomorphize::{self, Instance}; | ||
use monomorphize::Instance; | ||
use rustc::hir::def_id::DefId; | ||
use rustc::ty::TypeFoldable; | ||
use rustc::ty::{self, TypeFoldable}; | ||
use rustc::traits; | ||
use rustc::ty::subst::Substs; | ||
use type_of; | ||
|
||
|
@@ -179,5 +180,13 @@ pub fn resolve_and_get_fn<'a, 'tcx>(ccx: &CrateContext<'a, 'tcx>, | |
substs: &'tcx Substs<'tcx>) | ||
-> ValueRef | ||
{ | ||
get_fn(ccx, monomorphize::resolve(ccx.tcx(), def_id, substs)) | ||
get_fn( | ||
ccx, | ||
ty::Instance::resolve( | ||
ccx.tcx(), | ||
ty::ParamEnv::empty(traits::Reveal::All), | ||
def_id, | ||
substs,) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. nit: extra comma |
||
.unwrap() | ||
) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if this should be a query. Seems like a handy thing to cache.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we did make it a query, I'd prefer to see the provider moved into
traits/instance
or something.