Remove the 'body
lifetime on FilterInformation
.
It's not needed.
This commit is contained in:
parent
bf662eb808
commit
c6111c0e80
1 changed files with 9 additions and 9 deletions
|
@ -359,8 +359,8 @@ impl<'a, 'tcx> MutVisitor<'tcx> for Merger<'a, 'tcx> {
|
||||||
//
|
//
|
||||||
// This section enforces bullet point 2
|
// This section enforces bullet point 2
|
||||||
|
|
||||||
struct FilterInformation<'a, 'body, 'alloc, 'tcx> {
|
struct FilterInformation<'a, 'alloc, 'tcx> {
|
||||||
body: &'body Body<'tcx>,
|
body: &'a Body<'tcx>,
|
||||||
points: &'a DenseLocationMap,
|
points: &'a DenseLocationMap,
|
||||||
live: &'a SparseIntervalMatrix<Local, PointIndex>,
|
live: &'a SparseIntervalMatrix<Local, PointIndex>,
|
||||||
candidates: &'a mut Candidates<'alloc>,
|
candidates: &'a mut Candidates<'alloc>,
|
||||||
|
@ -446,7 +446,7 @@ enum CandidateFilter {
|
||||||
Remove,
|
Remove,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a, 'body, 'alloc, 'tcx> FilterInformation<'a, 'body, 'alloc, 'tcx> {
|
impl<'a, 'alloc, 'tcx> FilterInformation<'a, 'alloc, 'tcx> {
|
||||||
/// Filters the set of candidates to remove those that conflict.
|
/// Filters the set of candidates to remove those that conflict.
|
||||||
///
|
///
|
||||||
/// The steps we take are exactly those that are outlined at the top of the file. For each
|
/// The steps we take are exactly those that are outlined at the top of the file. For each
|
||||||
|
@ -464,12 +464,12 @@ impl<'a, 'body, 'alloc, 'tcx> FilterInformation<'a, 'body, 'alloc, 'tcx> {
|
||||||
/// before the statement/terminator will correctly report locals that are read in the
|
/// before the statement/terminator will correctly report locals that are read in the
|
||||||
/// statement/terminator to be live. We are additionally conservative by treating all written to
|
/// statement/terminator to be live. We are additionally conservative by treating all written to
|
||||||
/// locals as also being read from.
|
/// locals as also being read from.
|
||||||
fn filter_liveness<'b>(
|
fn filter_liveness(
|
||||||
candidates: &mut Candidates<'alloc>,
|
candidates: &mut Candidates<'alloc>,
|
||||||
points: &DenseLocationMap,
|
points: &DenseLocationMap,
|
||||||
live: &SparseIntervalMatrix<Local, PointIndex>,
|
live: &SparseIntervalMatrix<Local, PointIndex>,
|
||||||
write_info_alloc: &'alloc mut WriteInfo,
|
write_info: &'alloc mut WriteInfo,
|
||||||
body: &'b Body<'tcx>,
|
body: &Body<'tcx>,
|
||||||
) {
|
) {
|
||||||
let mut this = FilterInformation {
|
let mut this = FilterInformation {
|
||||||
body,
|
body,
|
||||||
|
@ -478,7 +478,7 @@ impl<'a, 'body, 'alloc, 'tcx> FilterInformation<'a, 'body, 'alloc, 'tcx> {
|
||||||
candidates,
|
candidates,
|
||||||
// We don't actually store anything at this scope, we just keep things here to be able
|
// We don't actually store anything at this scope, we just keep things here to be able
|
||||||
// to reuse the allocation.
|
// to reuse the allocation.
|
||||||
write_info: write_info_alloc,
|
write_info,
|
||||||
// Doesn't matter what we put here, will be overwritten before being used
|
// Doesn't matter what we put here, will be overwritten before being used
|
||||||
at: Location::START,
|
at: Location::START,
|
||||||
};
|
};
|
||||||
|
@ -820,9 +820,9 @@ fn is_local_required(local: Local, body: &Body<'_>) -> bool {
|
||||||
/////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////
|
||||||
// MIR Dump
|
// MIR Dump
|
||||||
|
|
||||||
fn dest_prop_mir_dump<'body, 'tcx>(
|
fn dest_prop_mir_dump<'tcx>(
|
||||||
tcx: TyCtxt<'tcx>,
|
tcx: TyCtxt<'tcx>,
|
||||||
body: &'body Body<'tcx>,
|
body: &Body<'tcx>,
|
||||||
points: &DenseLocationMap,
|
points: &DenseLocationMap,
|
||||||
live: &SparseIntervalMatrix<Local, PointIndex>,
|
live: &SparseIntervalMatrix<Local, PointIndex>,
|
||||||
round: usize,
|
round: usize,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue