Skip to content

Conversation

@igaray
Copy link
Contributor

@igaray igaray commented Apr 17, 2019

@spastorino
Copy link
Member

spastorino commented Apr 17, 2019

The diagram was made by @ehuss, @nnethercote build a first explanation with text.
I was trying to ask in the other issue to @ehuss if you were comfortable by adding the diagram to rustc-guides.

@ehuss
Copy link
Contributor

ehuss commented Apr 17, 2019

Sure, you're free to use it. Here's the source file if you want to edit it: https://gist.github.com/ehuss/70eafa935cf21f0d67533790dcafc18e That can be edited in https://www.draw.io/. Just keep in mind that this is a simplification. If there are non-host targets, its a bit different (described here), and passing flags like --keep-stage will change what happens. Also, rustdoc can be built at different stages depending on various things.

@igaray
Copy link
Contributor Author

igaray commented Apr 17, 2019

I'll add in those caveats, thank you

@igaray igaray changed the title Added rust phases diagram and explanation [WIP] Added rust phases diagram and explanation Apr 18, 2019
Copy link
Contributor

@mark-i-m mark-i-m left a comment

Choose a reason for hiding this comment

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

Thanks! This is helpful addition.

A couple of small nits, but other than that r=me 🙂

@mark-i-m mark-i-m added the S-waiting-on-author Status: this PR is waiting for additional action by the OP label Apr 24, 2019
@igaray
Copy link
Contributor Author

igaray commented Apr 29, 2019

Update: pushed some more content and almost done but still missing some important info and editing. Will r= when done.

@igaray
Copy link
Contributor Author

igaray commented Apr 29, 2019

r=mark-i-im

@jonas-schievink @dwijnand @mark-i-m @ehuss @Mark-Simulacrum
Please review the incorporated text, as they are based mostly off of your comments. I tried hard to be clear, non-repetitive and most of all, factually correct. I know the diff is large so if you have the opportunity maybe fetching the branch and reviewing the rendered markdown locally would be easier. Thank you for your time.

@igaray igaray changed the title [WIP] Added rust phases diagram and explanation Added rust phases diagram and explanation Apr 29, 2019
Copy link
Contributor

@mark-i-m mark-i-m left a comment

Choose a reason for hiding this comment

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

Looks good to me :)

I’m fine with merging this now, but i will leave it open for a day or so for the others you cc’ed.

Thanks!

on). It will also be used by the stage (N+1) compiler to link against itself.
This is somewhat intuitive if one thinks of the stage (N+1) compiler as "just"
another program we are building with the stage N compiler. In some ways, `rustc`
(the binary, not the `rustbuild` step) could be thought of as one of the few
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm not sure I understand this sentence. rustc links to libstd/libcore?

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, but IIUC, bootstrap treats libstd/libcore as "just another crate" that we are linking to our program. In other words, one can think of the compiler as a no_core program that cross-compiles and links with its own versions of the standard library.

@mark-i-m
Copy link
Contributor

mark-i-m commented May 6, 2019

@igaray Sorry for the delay. Can you rebase? After that I think we can merge. This PR has already undergone more scrutiny than most.

Thanks for your patience!

@igaray
Copy link
Contributor Author

igaray commented May 15, 2019

Rebased but chalk links are broken again. Will rebase again after #322 is merged

Added rustc build phase diagram and explanation
@mark-i-m mark-i-m merged commit 673b4a4 into rust-lang:master May 15, 2019
@igaray igaray deleted the x_py_phases_diagram_and_explanation branch May 15, 2019 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-author Status: this PR is waiting for additional action by the OP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants