Mazdak Farrokhzad
ca297f8cf4
DefId{Map,Set} -> rustc::hir::def_id
2020-01-04 19:01:42 +01:00
Vadim Petrochenkov
70f1d57048
Rename syntax_pos
to rustc_span
in source code
2020-01-01 09:15:18 +03:00
Camille GILLOT
36f95ab3fa
Fallout in other crates.
2019-12-27 19:20:28 +01:00
Mark Rousskov
a06baa56b9
Format the world
2019-12-22 17:42:47 -05:00
Camille GILLOT
4f1c88be46
Use Arena inside hir::EnumDef.
2019-12-21 23:32:42 +01:00
Matthew Jasper
96dc03bad7
Remove uniform_array_move_out
passes
...
These passes were buggy, MIR building is now responsible for
canonicalizing `ConstantIndex` projections and `MoveData` is responsible
for splitting `Subslice` projections.
2019-12-09 20:43:22 +00:00
Paul Daniel Faria
756aa1e46c
rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn
...
rustc_codegen_ssa: Fix BodyAndCache reborrow to Body and change instances of body() call to derefence
rustc_mir: Fix BodyAndCache reborrow to Body and change intances of body() call to derefence
2019-12-05 22:58:41 -05:00
Paul Daniel Faria
9978574c9e
Fix rebasing errors, convert some BodyCache::body() calls to reborrows
2019-12-02 08:43:01 -05:00
Paul Daniel Faria
64654ce1f1
Fix type errors created during rebasing
2019-12-02 08:42:24 -05:00
Paul Daniel Faria
b2fe254c98
Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, rename all body_cache back to body
2019-12-02 08:40:56 -05:00
Paul Daniel Faria
ab657e3b6b
Fix typo
2019-12-02 08:38:16 -05:00
Paul Daniel Faria
67b7a78231
Fix tidy errors
2019-12-02 08:38:16 -05:00
Paul Daniel Faria
4de31b26d1
Fix remaining compilation issues
2019-12-02 08:37:04 -05:00
Paul Daniel Faria
fc6b58d0a8
Simplify BodyCache impl and fix all remaining type errors in librustc_mir (lifetime errors still exist)
2019-12-02 08:35:08 -05:00
Paul Daniel Faria
649c73f96d
Simplify Cache wrapper to single type, impl Deref on it, fix all compilation errors in librustc_codegen_ssa
2019-12-02 08:30:30 -05:00
Paul Daniel Faria
9b335ce1a6
Move predecessors cache back to its own type
...
This ensures that the cache can be properly ignored during encoding and decoding.
Fix panics that arose due to lack of encoding
2019-12-02 08:30:30 -05:00
Paul Daniel Faria
52cc85f008
Address nits and remove unneeded pass
2019-12-02 08:30:30 -05:00
Paul Daniel Faria
8e8c97e5fd
Ensure predecessors are recomputed at critical points, fixes panics
2019-12-02 08:30:30 -05:00
Paul Daniel Faria
2b31456068
Add pass to ensure predecessors cache is generated after optimization
2019-12-02 08:30:30 -05:00
Mazdak Farrokhzad
2f00e86cb5
Introduce MIR optimizations for simplifying x?
on Result
s.
...
This optimization depends on inlining for the identity
conversions introduced by the lowering of the `?`.
To take advantage of `SimplifyArmIdentity`, `-Z mir-opt-level=2`
is required because that triggers the inlining MIR optimization.
2019-11-21 20:05:16 +01:00
Dylan MacKenzie
ea95e94f51
Fix nits from review
2019-11-15 10:33:52 -08:00
Dylan MacKenzie
056edc0d48
Use a bespoke type for the result of mir_const_qualif
2019-11-15 10:33:52 -08:00
Dylan MacKenzie
6d4e2042f9
Remove qualify_consts
completely
2019-11-15 10:33:52 -08:00
Dylan MacKenzie
55da0c0368
Use new const-checker for mir_const_qualif
...
Now `mir_const_qualif` must be called for `static`s and `const fn`s as
well as `const`s since it is responsible for const-checking. We return
the qualifs in the return place for everything, even though they will
only be used for `const`s.
2019-11-15 10:33:32 -08:00
bors
c296b2d830
Auto merge of #65694 - wesleywiser:uninhabited_enum_variants_pass, r=oli-obk
...
[mir-opt] Implement pass to remove branches on uninhabited variants
Based on discussion [here](https://github.com/rust-lang/rust/pull/64890#discussion_r333612125 ), this is a pass to eliminate dead code that is caused by branching on an enum with uninhabited variants.
r? @oli-obk
2019-11-09 23:01:06 +00:00
Dylan MacKenzie
b316384e14
Use new PromoteTemps
for promotion
2019-11-08 15:00:20 -08:00
Wesley Wiser
cbe2f6095a
Implement pass to remove branches on uninhabited variants
2019-11-06 21:10:29 -05:00
Santiago Pastorino
d32c2865d6
Intern place projection
2019-10-22 10:33:36 -03:00
csmoe
64f61c7888
remove indexed_vec re-export from rustc_data_structures
2019-09-29 16:48:31 +00:00
Dylan MacKenzie
fc92d3b820
Add dataflow-based const validation
2019-09-28 07:06:52 -07:00
Mazdak Farrokhzad
dfd365f3e4
cleanup dead ast-borrowck / migrate-mode code.
2019-09-27 19:48:07 +02:00
Wesley Wiser
e63b992030
Resolve PR comments
2019-08-22 06:36:31 -04:00
Wesley Wiser
9fdf5b5551
Remove unnecessary Option
2019-08-22 06:36:31 -04:00
Wesley Wiser
34fe28bc67
Fix tidy
2019-08-22 06:36:31 -04:00
Wesley Wiser
73814654b2
Move promoted out of mir::Body
2019-08-22 06:36:30 -04:00
Wesley Wiser
666180c324
Move 'tcx lifetime on MirPass
2019-08-22 06:36:30 -04:00
Mazdak Farrokhzad
632ce7402f
Rollup merge of #62801 - bjorn3:remove_lower_128bit_ops, r=alexcrichton
...
Remove support for -Zlower-128bit-ops
It is broken and unused
cc https://github.com/rust-lang/rust/issues/58969
blocked https://github.com/rust-lang-nursery/compiler-builtins/pull/302 (removes definitions of the lang items removed in this PR)
r? @alexcrichton
2019-07-26 18:56:43 +02:00
Steven Fackler
91fa898975
Stabilize the type_name intrinsic in core::any
...
Closes rust-lang/rfcs#1428
2019-07-24 21:35:49 -07:00
bjorn3
3427a14bdf
Remove support for -Zlower-128bit-ops
...
It is broken and unused
2019-07-19 14:21:06 +02:00
bors
d36b7f6944
Auto merge of #62322 - wesleywiser:promoted_query, r=oli-obk
...
Add a query to get the `promoted`s for a `mir::Body`
This is a builidng block toward removing a lot of duplicated code
between miri and the cosnt-propagator pass.
See this thread for more info:
https://rust-lang.zulipchat.com/#narrow/stream/189540-t-compiler.2Fwg-mir-opt/topic/Using.20.60InterpCx.60.20more/near/169030661
r? @spastorino but feel free to hand it off to somebody else
2019-07-16 12:19:35 +00:00
ljedrz
37d7e1f22a
rename hir::map::local_def_id_from_hir_id to local_def_id
2019-07-04 12:53:12 +02:00
Jeremy Stucki
0477e07272
Remove needless lifetimes
2019-07-03 10:00:26 +02:00
Wesley Wiser
57c98d3392
Add a query to get the promoted
s for a mir::Body
...
This is a builidng block toward removing a lot of duplicated code
between miri and the cosnt-propagator pass.
See this thread for more info:
https://rust-lang.zulipchat.com/#narrow/stream/189540-t-compiler.2Fwg-mir-opt/topic/Using.20.60InterpCx.60.20more/near/169030661
2019-07-02 20:52:58 -04:00
Eduard-Mihai Burtescu
b25b466a88
rustc: remove 'x: 'y bounds (except from comments/strings).
2019-06-18 18:10:21 +03:00
ljedrz
d996c4d5a3
remove _by_hir_id if there is no NodeId counterpart
2019-06-17 18:57:21 +02:00
Eduard-Mihai Burtescu
afc39bbf24
Run rustfmt --file-lines ...
for changes from previous commits.
2019-06-14 18:58:32 +03:00
Eduard-Mihai Burtescu
f3f9d6dfd9
Unify all uses of 'gcx and 'tcx.
2019-06-14 18:58:23 +03:00
Eduard-Mihai Burtescu
fff08cb043
Run rustfmt --file-lines ...
for changes from previous commits.
2019-06-12 13:38:28 +03:00
Eduard-Mihai Burtescu
17cdd356da
rustc: replace TyCtxt<'tcx, 'gcx, 'tcx>
with TyCtxt<'gcx, 'tcx>
.
2019-06-12 13:38:27 +03:00
Eduard-Mihai Burtescu
2441253508
Fix fallout from deny(unused_lifetimes)
.
2019-06-12 13:38:27 +03:00