Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upRefactor call & function handling in trans, enable MIR bootstrap. #32080
Conversation
eddyb
force-pushed the
eddyb:transcendent
branch
from
2fbb50c
to
90130dc
Mar 6, 2016
alexcrichton
assigned
nikomatsakis
Mar 6, 2016
This comment has been minimized.
This comment has been minimized.
|
(just making sure an assignment is given, feel free to delegate elsewhere) |
eddyb
force-pushed the
eddyb:transcendent
branch
from
90130dc
to
ee6c793
Mar 6, 2016
This was referenced Mar 6, 2016
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
|
Status: I can build
The only run-pass test that only fails in stage2 is @rust-lang/tools If I provide a flag to enable MIR trans for everything, and an attribute to mark functions which can't be yet properly translated via MIR, would it be possible to have buildbot ensure MIR doesn't regress? |
eddyb
force-pushed the
eddyb:transcendent
branch
from
b7e69e9
to
40f3bc9
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
|
eddyb
force-pushed the
eddyb:transcendent
branch
2 times, most recently
from
934c483
to
5024b6d
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
@eddyb I'd be fine at least adding a MIR bot! If it's a Do you think MIR will want platform coverage as well? A Linux/OSX/Windows builder, or just one with it enabled? |
eddyb
force-pushed the
eddyb:transcendent
branch
from
5024b6d
to
c8ba80b
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
@alexcrichton Before the next snapshot, Sadly, it doesn't look like tests inherit We'll want at least a non-MSVC and a MSVC builder, because of the differences in how unwinding works there. |
eddyb
changed the title
[WIP] Refactor how calls and functions are handled across trans.
[WIP] Refactor call & function handling in trans, enable MIR bootstrap.
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
Ok, sounds like a linux + MSVC builder, and can you add this as a |
eddyb
force-pushed the
eddyb:transcendent
branch
from
c8ba80b
to
23b378d
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
@alexcrichton Does that last commit look good? |
This comment has been minimized.
This comment has been minimized.
|
Looks good to me! |
eddyb
force-pushed the
eddyb:transcendent
branch
from
7d5f75a
to
afcafe6
Mar 9, 2016
This comment has been minimized.
This comment has been minimized.
|
Down to 9 run-pass MIR failures:
I'll just start tagging them with |
eddyb
referenced this pull request
Mar 10, 2016
Closed
Mir: casting &str to *const str will cast twice #30612
eddyb
changed the title
[WIP] Refactor call & function handling in trans, enable MIR bootstrap.
Refactor call & function handling in trans, enable MIR bootstrap.
Mar 10, 2016
eddyb
force-pushed the
eddyb:transcendent
branch
6 times, most recently
from
76a4fa2
to
0c413a8
Mar 10, 2016
eddyb
force-pushed the
eddyb:transcendent
branch
from
099445b
to
e177207
Mar 18, 2016
This comment has been minimized.
This comment has been minimized.
|
@bors r=nikomatsakis force |
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
bors
added a commit
that referenced
this pull request
Mar 18, 2016
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
|
@bors r=nikomatsakis force |
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
bors
added a commit
that referenced
this pull request
Mar 18, 2016
This comment has been minimized.
This comment has been minimized.
bors
merged commit b12dcde
into
rust-lang:master
Mar 18, 2016
eddyb
deleted the
eddyb:transcendent
branch
Mar 18, 2016
This was referenced Mar 18, 2016
This comment has been minimized.
This comment has been minimized.
|
Pretty impressive that translation still ends up being faster! |
eddyb commentedMar 6, 2016
Non-Rust and Rust ABIs were combined into a common codepath, which means:
__rust_abi"clown shoes" shim for C->Rust FFI is gone, fixes #10116.Additionally, MIR support for calling intrinsics (through old trans) was implemented.🚀 and do a complete bootstrap.
Alongside assorted fixes, it enabled MIR to launch
To try it yourself,
./configure --enable-orbitormake RUSTFLAGS="-Z orbit".