-
Notifications
You must be signed in to change notification settings - Fork 391
Rustup #364
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
Closed
Closed
Rustup #364
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
2671cf3
Update to some cleanups in rustc
oli-obk a23e587
stop using Instance::def_ty
arielb1 5147655
Merge branch 'master' into def_ty
oli-obk 30496f5
update compiletest dependency
dwrensha 03aa876
pass typecheck
dwrensha cabdc55
update log deps
dwrensha 33af320
update for rust/47205
dwrensha d289c0f
partially deal with rust/46479
dwrensha 9e04368
Rustup
bjorn3 3e339bc
rustup
bjorn3 9be04c0
Rustup
bjorn3 a204cb4
Add stack guard shim
bjorn3 aa5972d
Get the tests one step further
oli-obk 1e094e5
WIP fix alignment issue
bjorn3 3038274
Dont claim to have marked static initialized
bjorn3 bad9fa5
Use elem align as src align in copy intrinsic
bjorn3 5db2aba
Hack: copy init_static from rustc CompileTimeEvaluator to try to fix …
bjorn3 896996b
Maybe prevent marking statics as immutable
bjorn3 907e67f
Fix init_static
bjorn3 5831309
travis: cache build dir
bjorn3 a86348b
Fix it
bjorn3 57e63b8
Fix (try 2)
bjorn3 654cd94
FIx (try 3)
bjorn3 6e60b79
Fix (try 4)
bjorn3 3656c03
Partially fix it
bjorn3 2137351
Rustup
bjorn3 5b8781c
Fix some more tests with some unsafe code
bjorn3 054b0db
Remove unsafe code
bjorn3 77413d7
Some cleanups
bjorn3 2e1b165
Update Cargo.lock and some improvements
bjorn3 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 hidden or 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
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.
No, no recursive copy. if you have
Then BAR would end up referring to a copy of FOO instead of referring to it directly.
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.
We can't evaluate the static in the same EvalContext as far as I know, so we have to copy it anyway. A cache could be used just like
ecx.memory.data.mut_static
to prevent duplication.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.
You can do it. Just push a stackframe for it as you had before 907e67f
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.
But the
while ecx.step()? {}
will step out of the frame present at the beginning of theinit_static
function.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.
ah, you can solve that by recording the stack size before pushing the frame (
self.frames().len()
) in a variable and looping until you're back at the same frame.