mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-22 02:00:00 +03:00
Rollup merge of #72908 - RalfJung:false-edge, r=matthewjasper
rename FalseEdges -> FalseEdge There's just a single false edge in this terminator, not multiple of them. r? @matthewjasper @jonas-schievink
This commit is contained in:
@@ -357,7 +357,7 @@ fn discover_masters<'tcx>(
|
||||
| TerminatorKind::Unreachable
|
||||
| TerminatorKind::SwitchInt { .. }
|
||||
| TerminatorKind::Yield { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => { /* nothing to do */ }
|
||||
TerminatorKind::Call { cleanup: unwind, .. }
|
||||
|
||||
@@ -1030,7 +1030,7 @@ fn codegen_terminator(
|
||||
mir::TerminatorKind::GeneratorDrop | mir::TerminatorKind::Yield { .. } => {
|
||||
bug!("generator ops in codegen")
|
||||
}
|
||||
mir::TerminatorKind::FalseEdges { .. } | mir::TerminatorKind::FalseUnwind { .. } => {
|
||||
mir::TerminatorKind::FalseEdge { .. } | mir::TerminatorKind::FalseUnwind { .. } => {
|
||||
bug!("borrowck false edges in codegen")
|
||||
}
|
||||
|
||||
|
||||
@@ -1160,7 +1160,7 @@ pub enum TerminatorKind<'tcx> {
|
||||
|
||||
/// A block where control flow only ever takes one real path, but borrowck
|
||||
/// needs to be more conservative.
|
||||
FalseEdges {
|
||||
FalseEdge {
|
||||
/// The target normal control flow will take.
|
||||
real_target: BasicBlock,
|
||||
/// A block control flow could conceptually jump to, but won't in
|
||||
@@ -1314,7 +1314,7 @@ pub fn successors(&self) -> Successors<'_> {
|
||||
Some(t).into_iter().chain(slice::from_ref(u))
|
||||
}
|
||||
SwitchInt { ref targets, .. } => None.into_iter().chain(&targets[..]),
|
||||
FalseEdges { ref real_target, ref imaginary_target } => {
|
||||
FalseEdge { ref real_target, ref imaginary_target } => {
|
||||
Some(real_target).into_iter().chain(slice::from_ref(imaginary_target))
|
||||
}
|
||||
}
|
||||
@@ -1348,7 +1348,7 @@ pub fn successors_mut(&mut self) -> SuccessorsMut<'_> {
|
||||
Some(t).into_iter().chain(slice::from_mut(u))
|
||||
}
|
||||
SwitchInt { ref mut targets, .. } => None.into_iter().chain(&mut targets[..]),
|
||||
FalseEdges { ref mut real_target, ref mut imaginary_target } => {
|
||||
FalseEdge { ref mut real_target, ref mut imaginary_target } => {
|
||||
Some(real_target).into_iter().chain(slice::from_mut(imaginary_target))
|
||||
}
|
||||
}
|
||||
@@ -1364,7 +1364,7 @@ pub fn unwind(&self) -> Option<&Option<BasicBlock>> {
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::Yield { .. }
|
||||
| TerminatorKind::SwitchInt { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => None,
|
||||
TerminatorKind::Call { cleanup: ref unwind, .. }
|
||||
| TerminatorKind::Assert { cleanup: ref unwind, .. }
|
||||
@@ -1384,7 +1384,7 @@ pub fn unwind_mut(&mut self) -> Option<&mut Option<BasicBlock>> {
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::Yield { .. }
|
||||
| TerminatorKind::SwitchInt { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => None,
|
||||
TerminatorKind::Call { cleanup: ref mut unwind, .. }
|
||||
| TerminatorKind::Assert { cleanup: ref mut unwind, .. }
|
||||
@@ -1598,7 +1598,7 @@ pub fn fmt_head<W: Write>(&self, fmt: &mut W) -> fmt::Result {
|
||||
msg.fmt_assert_args(fmt)?;
|
||||
write!(fmt, ")")
|
||||
}
|
||||
FalseEdges { .. } => write!(fmt, "falseEdges"),
|
||||
FalseEdge { .. } => write!(fmt, "falseEdge"),
|
||||
FalseUnwind { .. } => write!(fmt, "falseUnwind"),
|
||||
InlineAsm { template, ref operands, options, .. } => {
|
||||
write!(fmt, "asm!(\"{}\"", InlineAsmTemplatePiece::to_string(template))?;
|
||||
@@ -1683,7 +1683,7 @@ pub fn fmt_successor_labels(&self) -> Vec<Cow<'static, str>> {
|
||||
}
|
||||
Assert { cleanup: None, .. } => vec!["".into()],
|
||||
Assert { .. } => vec!["success".into(), "unwind".into()],
|
||||
FalseEdges { .. } => vec!["real".into(), "imaginary".into()],
|
||||
FalseEdge { .. } => vec!["real".into(), "imaginary".into()],
|
||||
FalseUnwind { unwind: Some(_), .. } => vec!["real".into(), "cleanup".into()],
|
||||
FalseUnwind { unwind: None, .. } => vec!["real".into()],
|
||||
InlineAsm { destination: Some(_), .. } => vec!["".into()],
|
||||
|
||||
@@ -74,8 +74,8 @@ fn super_fold_with<F: TypeFolder<'tcx>>(&self, folder: &mut F) -> Self {
|
||||
Abort => Abort,
|
||||
Return => Return,
|
||||
Unreachable => Unreachable,
|
||||
FalseEdges { real_target, imaginary_target } => {
|
||||
FalseEdges { real_target, imaginary_target }
|
||||
FalseEdge { real_target, imaginary_target } => {
|
||||
FalseEdge { real_target, imaginary_target }
|
||||
}
|
||||
FalseUnwind { real_target, unwind } => FalseUnwind { real_target, unwind },
|
||||
InlineAsm { template, ref operands, options, line_spans, destination } => InlineAsm {
|
||||
@@ -134,7 +134,7 @@ fn super_visit_with<V: TypeVisitor<'tcx>>(&self, visitor: &mut V) -> bool {
|
||||
| Return
|
||||
| GeneratorDrop
|
||||
| Unreachable
|
||||
| FalseEdges { .. }
|
||||
| FalseEdge { .. }
|
||||
| FalseUnwind { .. } => false,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -429,7 +429,7 @@ fn super_terminator_kind(&mut self,
|
||||
TerminatorKind::Abort |
|
||||
TerminatorKind::GeneratorDrop |
|
||||
TerminatorKind::Unreachable |
|
||||
TerminatorKind::FalseEdges { .. } |
|
||||
TerminatorKind::FalseEdge { .. } |
|
||||
TerminatorKind::FalseUnwind { .. } => {
|
||||
}
|
||||
|
||||
|
||||
@@ -215,7 +215,7 @@ fn visit_terminator_kind(&mut self, kind: &TerminatorKind<'tcx>, location: Locat
|
||||
TerminatorKind::Goto { target: _ }
|
||||
| TerminatorKind::Abort
|
||||
| TerminatorKind::Unreachable
|
||||
| TerminatorKind::FalseEdges { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseEdge { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseUnwind { real_target: _, unwind: _ } => {
|
||||
// no data used, thus irrelevant to borrowck
|
||||
}
|
||||
|
||||
@@ -770,7 +770,7 @@ fn visit_terminator_before_primary_effect(
|
||||
| TerminatorKind::Resume
|
||||
| TerminatorKind::Return
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::FalseEdges { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseEdge { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseUnwind { real_target: _, unwind: _ } => {
|
||||
// no data used, thus irrelevant to borrowck
|
||||
}
|
||||
@@ -814,7 +814,7 @@ fn visit_terminator_after_primary_effect(
|
||||
| TerminatorKind::Call { .. }
|
||||
| TerminatorKind::Drop { .. }
|
||||
| TerminatorKind::DropAndReplace { .. }
|
||||
| TerminatorKind::FalseEdges { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseEdge { real_target: _, imaginary_target: _ }
|
||||
| TerminatorKind::FalseUnwind { real_target: _, unwind: _ }
|
||||
| TerminatorKind::Goto { .. }
|
||||
| TerminatorKind::SwitchInt { .. }
|
||||
|
||||
@@ -1547,7 +1547,7 @@ fn check_terminator(
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::Unreachable
|
||||
| TerminatorKind::Drop { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => {
|
||||
// no checks needed for these
|
||||
@@ -1843,7 +1843,7 @@ fn check_iscleanup(&mut self, body: &Body<'tcx>, block_data: &BasicBlockData<'tc
|
||||
self.assert_iscleanup(body, block_data, cleanup, true);
|
||||
}
|
||||
}
|
||||
TerminatorKind::FalseEdges { real_target, imaginary_target } => {
|
||||
TerminatorKind::FalseEdge { real_target, imaginary_target } => {
|
||||
self.assert_iscleanup(body, block_data, real_target, is_cleanup);
|
||||
self.assert_iscleanup(body, block_data, imaginary_target, is_cleanup);
|
||||
}
|
||||
|
||||
@@ -453,7 +453,7 @@ fn join_state_into_successors_of<A>(
|
||||
propagate(target, exit_state);
|
||||
}
|
||||
|
||||
FalseEdges { real_target, imaginary_target } => {
|
||||
FalseEdge { real_target, imaginary_target } => {
|
||||
propagate(real_target, exit_state);
|
||||
propagate(imaginary_target, exit_state);
|
||||
}
|
||||
|
||||
@@ -203,7 +203,7 @@ fn visit_terminator(&mut self, terminator: &mir::Terminator<'tcx>, location: Loc
|
||||
TerminatorKind::Abort
|
||||
| TerminatorKind::Assert { .. }
|
||||
| TerminatorKind::Call { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::Goto { .. }
|
||||
|
||||
@@ -365,7 +365,7 @@ fn gather_terminator(&mut self, term: &Terminator<'tcx>) {
|
||||
| TerminatorKind::Resume
|
||||
| TerminatorKind::Abort
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::Unreachable => {}
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@ pub(super) fn eval_terminator(
|
||||
|
||||
// These should never occur for MIR we actually run.
|
||||
DropAndReplace { .. }
|
||||
| FalseEdges { .. }
|
||||
| FalseEdge { .. }
|
||||
| FalseUnwind { .. }
|
||||
| Yield { .. }
|
||||
| GeneratorDrop => span_bug!(
|
||||
|
||||
@@ -649,7 +649,7 @@ fn visit_terminator_kind(&mut self, kind: &mir::TerminatorKind<'tcx>, location:
|
||||
| mir::TerminatorKind::Assert { .. } => {}
|
||||
mir::TerminatorKind::GeneratorDrop
|
||||
| mir::TerminatorKind::Yield { .. }
|
||||
| mir::TerminatorKind::FalseEdges { .. }
|
||||
| mir::TerminatorKind::FalseEdge { .. }
|
||||
| mir::TerminatorKind::FalseUnwind { .. } => bug!(),
|
||||
}
|
||||
|
||||
|
||||
@@ -609,7 +609,7 @@ fn visit_terminator(&mut self, terminator: &Terminator<'tcx>, location: Location
|
||||
// instead.
|
||||
TerminatorKind::Abort
|
||||
| TerminatorKind::Assert { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::Goto { .. }
|
||||
|
||||
@@ -76,7 +76,7 @@ fn visit_terminator(&mut self, terminator: &Terminator<'tcx>, location: Location
|
||||
| TerminatorKind::Abort
|
||||
| TerminatorKind::Return
|
||||
| TerminatorKind::Unreachable
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. } => {
|
||||
// safe (at least as emitted during MIR construction)
|
||||
}
|
||||
|
||||
@@ -1013,7 +1013,7 @@ fn visit_terminator(&mut self, terminator: &mut Terminator<'tcx>, location: Loca
|
||||
| TerminatorKind::DropAndReplace { .. }
|
||||
| TerminatorKind::Yield { .. }
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => {}
|
||||
// Every argument in our function calls can be const propagated.
|
||||
|
||||
@@ -988,7 +988,7 @@ fn can_unwind<'tcx>(tcx: TyCtxt<'tcx>, body: &Body<'tcx>) -> bool {
|
||||
| TerminatorKind::Return
|
||||
| TerminatorKind::Unreachable
|
||||
| TerminatorKind::GeneratorDrop
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::InlineAsm { .. } => {}
|
||||
|
||||
|
||||
@@ -791,7 +791,7 @@ fn visit_terminator_kind(&mut self, kind: &mut TerminatorKind<'tcx>, loc: Locati
|
||||
}
|
||||
TerminatorKind::Abort => {}
|
||||
TerminatorKind::Unreachable => {}
|
||||
TerminatorKind::FalseEdges { ref mut real_target, ref mut imaginary_target } => {
|
||||
TerminatorKind::FalseEdge { ref mut real_target, ref mut imaginary_target } => {
|
||||
*real_target = self.update_target(*real_target);
|
||||
*imaginary_target = self.update_target(*imaginary_target);
|
||||
}
|
||||
|
||||
@@ -342,7 +342,7 @@ fn check_terminator(
|
||||
) -> McfResult {
|
||||
let span = terminator.source_info.span;
|
||||
match &terminator.kind {
|
||||
TerminatorKind::FalseEdges { .. }
|
||||
TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::Goto { .. }
|
||||
| TerminatorKind::Return
|
||||
|
||||
@@ -65,7 +65,7 @@ fn is_nop_landing_pad(
|
||||
TerminatorKind::Goto { .. }
|
||||
| TerminatorKind::Resume
|
||||
| TerminatorKind::SwitchInt { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. } => {
|
||||
terminator.successors().all(|&succ| nop_landing_pads.contains(succ))
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ fn run_pass(&self, tcx: TyCtxt<'tcx>, src: MirSource<'tcx>, body: &mut Body<'tcx
|
||||
} if (c.literal.try_eval_bool(tcx, param_env) == Some(true)) == expected => {
|
||||
TerminatorKind::Goto { target }
|
||||
}
|
||||
TerminatorKind::FalseEdges { real_target, .. } => {
|
||||
TerminatorKind::FalseEdge { real_target, .. } => {
|
||||
TerminatorKind::Goto { target: real_target }
|
||||
}
|
||||
TerminatorKind::FalseUnwind { real_target, .. } => {
|
||||
|
||||
@@ -159,7 +159,7 @@ fn visit_terminator(&mut self, terminator: &Terminator<'tcx>, location: Location
|
||||
self.check_bb(location, *drop);
|
||||
}
|
||||
}
|
||||
TerminatorKind::FalseEdges { real_target, imaginary_target } => {
|
||||
TerminatorKind::FalseEdge { real_target, imaginary_target } => {
|
||||
self.check_bb(location, *real_target);
|
||||
self.check_bb(location, *imaginary_target);
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ impl<'a, 'tcx> Builder<'a, 'tcx> {
|
||||
self.cfg.terminate(
|
||||
from_block,
|
||||
source_info,
|
||||
TerminatorKind::FalseEdges { real_target, imaginary_target: target },
|
||||
TerminatorKind::FalseEdge { real_target, imaginary_target: target },
|
||||
);
|
||||
}
|
||||
_ => self.cfg.goto(from_block, source_info, real_target),
|
||||
|
||||
@@ -128,7 +128,7 @@ fn node_examined(
|
||||
| TerminatorKind::Call { .. }
|
||||
| TerminatorKind::Drop { .. }
|
||||
| TerminatorKind::DropAndReplace { .. }
|
||||
| TerminatorKind::FalseEdges { .. }
|
||||
| TerminatorKind::FalseEdge { .. }
|
||||
| TerminatorKind::FalseUnwind { .. }
|
||||
| TerminatorKind::Goto { .. }
|
||||
| TerminatorKind::SwitchInt { .. } => ControlFlow::Continue,
|
||||
@@ -153,7 +153,7 @@ fn ignore_edge(&mut self, bb: BasicBlock, target: BasicBlock) -> bool {
|
||||
TerminatorKind::Call { ref func, .. } => self.is_recursive_call(func),
|
||||
|
||||
TerminatorKind::FalseUnwind { unwind: Some(imaginary_target), .. }
|
||||
| TerminatorKind::FalseEdges { imaginary_target, .. } => imaginary_target == target,
|
||||
| TerminatorKind::FalseEdge { imaginary_target, .. } => imaginary_target == target,
|
||||
|
||||
_ => false,
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ fn match_tuple(_1: (u32, bool, std::option::Option<i32>, u32)) -> u32 {
|
||||
}
|
||||
|
||||
bb8: {
|
||||
falseEdges -> [real: bb9, imaginary: bb1]; // scope 0 at $DIR/exponential-or.rs:8:9: 8:79
|
||||
falseEdge -> [real: bb9, imaginary: bb1]; // scope 0 at $DIR/exponential-or.rs:8:9: 8:79
|
||||
}
|
||||
|
||||
bb9: {
|
||||
|
||||
@@ -41,7 +41,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb4: {
|
||||
falseEdges -> [real: bb6, imaginary: bb5]; // scope 1 at $DIR/issue-38669.rs:7:9: 9:10
|
||||
falseEdge -> [real: bb6, imaginary: bb5]; // scope 1 at $DIR/issue-38669.rs:7:9: 9:10
|
||||
}
|
||||
|
||||
bb5: {
|
||||
|
||||
@@ -43,7 +43,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb5: {
|
||||
falseEdges -> [real: bb7, imaginary: bb6]; // scope 0 at $DIR/issue-49232.rs:9:17: 9:22
|
||||
falseEdge -> [real: bb7, imaginary: bb6]; // scope 0 at $DIR/issue-49232.rs:9:17: 9:22
|
||||
}
|
||||
|
||||
bb6: {
|
||||
|
||||
@@ -31,7 +31,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/loop_test.rs:10:5: 12:6
|
||||
falseEdge -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/loop_test.rs:10:5: 12:6
|
||||
}
|
||||
|
||||
bb3: {
|
||||
|
||||
+7
-7
@@ -39,7 +39,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb9, imaginary: bb4]; // scope 0 at $DIR/match-arm-scopes.rs:16:9: 16:22
|
||||
falseEdge -> [real: bb9, imaginary: bb4]; // scope 0 at $DIR/match-arm-scopes.rs:16:9: 16:22
|
||||
}
|
||||
|
||||
bb3: {
|
||||
@@ -47,7 +47,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
}
|
||||
|
||||
bb4: {
|
||||
falseEdges -> [real: bb18, imaginary: bb6]; // scope 0 at $DIR/match-arm-scopes.rs:16:25: 16:38
|
||||
falseEdge -> [real: bb18, imaginary: bb6]; // scope 0 at $DIR/match-arm-scopes.rs:16:25: 16:38
|
||||
}
|
||||
|
||||
bb5: {
|
||||
@@ -55,7 +55,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
}
|
||||
|
||||
bb6: {
|
||||
falseEdges -> [real: bb26, imaginary: bb7]; // scope 0 at $DIR/match-arm-scopes.rs:17:9: 17:21
|
||||
falseEdge -> [real: bb26, imaginary: bb7]; // scope 0 at $DIR/match-arm-scopes.rs:17:9: 17:21
|
||||
}
|
||||
|
||||
bb7: {
|
||||
@@ -92,7 +92,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
}
|
||||
|
||||
bb10: {
|
||||
falseEdges -> [real: bb12, imaginary: bb11]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
falseEdge -> [real: bb12, imaginary: bb11]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
}
|
||||
|
||||
bb11: {
|
||||
@@ -145,7 +145,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
StorageDead(_9); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
StorageDead(_8); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
StorageDead(_6); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
falseEdges -> [real: bb3, imaginary: bb4]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
falseEdge -> [real: bb3, imaginary: bb4]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
}
|
||||
|
||||
bb18: {
|
||||
@@ -163,7 +163,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
}
|
||||
|
||||
bb19: {
|
||||
falseEdges -> [real: bb21, imaginary: bb20]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
falseEdge -> [real: bb21, imaginary: bb20]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
}
|
||||
|
||||
bb20: {
|
||||
@@ -204,7 +204,7 @@ fn complicated_match(_1: bool, _2: (bool, bool, std::string::String)) -> i32 {
|
||||
StorageDead(_12); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
StorageDead(_8); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
StorageDead(_6); // scope 0 at $DIR/match-arm-scopes.rs:16:78: 16:79
|
||||
falseEdges -> [real: bb5, imaginary: bb6]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
falseEdge -> [real: bb5, imaginary: bb6]; // scope 0 at $DIR/match-arm-scopes.rs:16:42: 16:73
|
||||
}
|
||||
|
||||
bb24: {
|
||||
|
||||
@@ -60,11 +60,11 @@ fn full_tested_match() -> () {
|
||||
}
|
||||
|
||||
bb3: {
|
||||
falseEdges -> [real: bb6, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:16:9: 16:16
|
||||
falseEdge -> [real: bb6, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:16:9: 16:16
|
||||
}
|
||||
|
||||
bb4: {
|
||||
falseEdges -> [real: bb10, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:17:9: 17:16
|
||||
falseEdge -> [real: bb10, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:17:9: 17:16
|
||||
}
|
||||
|
||||
bb5: {
|
||||
|
||||
@@ -42,11 +42,11 @@ fn full_tested_match2() -> () {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb10, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:28:9: 28:13
|
||||
falseEdge -> [real: bb10, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:28:9: 28:13
|
||||
}
|
||||
|
||||
bb3: {
|
||||
falseEdges -> [real: bb6, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:27:9: 27:16
|
||||
falseEdge -> [real: bb6, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:27:9: 27:16
|
||||
}
|
||||
|
||||
bb4: {
|
||||
@@ -112,7 +112,7 @@ fn full_tested_match2() -> () {
|
||||
bb9: {
|
||||
StorageDead(_7); // scope 0 at $DIR/match_false_edges.rs:27:37: 27:38
|
||||
StorageDead(_6); // scope 0 at $DIR/match_false_edges.rs:27:37: 27:38
|
||||
falseEdges -> [real: bb4, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:27:20: 27:27
|
||||
falseEdge -> [real: bb4, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:27:20: 27:27
|
||||
}
|
||||
|
||||
bb10: {
|
||||
|
||||
@@ -53,11 +53,11 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb10, imaginary: bb5]; // scope 0 at $DIR/match_false_edges.rs:37:9: 37:11
|
||||
falseEdge -> [real: bb10, imaginary: bb5]; // scope 0 at $DIR/match_false_edges.rs:37:9: 37:11
|
||||
}
|
||||
|
||||
bb3: {
|
||||
falseEdges -> [real: bb6, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:36:9: 36:17
|
||||
falseEdge -> [real: bb6, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:36:9: 36:17
|
||||
}
|
||||
|
||||
bb4: {
|
||||
@@ -75,7 +75,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb5: {
|
||||
falseEdges -> [real: bb11, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:38:9: 38:16
|
||||
falseEdge -> [real: bb11, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:38:9: 38:16
|
||||
}
|
||||
|
||||
bb6: {
|
||||
@@ -117,7 +117,7 @@ fn main() -> () {
|
||||
bb9: {
|
||||
StorageDead(_8); // scope 0 at $DIR/match_false_edges.rs:36:33: 36:34
|
||||
StorageDead(_7); // scope 0 at $DIR/match_false_edges.rs:36:33: 36:34
|
||||
falseEdges -> [real: bb2, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:36:21: 36:28
|
||||
falseEdge -> [real: bb2, imaginary: bb2]; // scope 0 at $DIR/match_false_edges.rs:36:21: 36:28
|
||||
}
|
||||
|
||||
bb10: {
|
||||
@@ -176,7 +176,7 @@ fn main() -> () {
|
||||
bb14: {
|
||||
StorageDead(_12); // scope 0 at $DIR/match_false_edges.rs:38:34: 38:35
|
||||
StorageDead(_11); // scope 0 at $DIR/match_false_edges.rs:38:34: 38:35
|
||||
falseEdges -> [real: bb4, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:38:20: 38:29
|
||||
falseEdge -> [real: bb4, imaginary: bb4]; // scope 0 at $DIR/match_false_edges.rs:38:20: 38:29
|
||||
}
|
||||
|
||||
bb15: {
|
||||
|
||||
@@ -61,7 +61,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb9, imaginary: bb6]; // scope 2 at $DIR/match_test.rs:13:9: 13:14
|
||||
falseEdge -> [real: bb9, imaginary: bb6]; // scope 2 at $DIR/match_test.rs:13:9: 13:14
|
||||
}
|
||||
|
||||
bb3: {
|
||||
@@ -98,7 +98,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb6: {
|
||||
falseEdges -> [real: bb12, imaginary: bb8]; // scope 2 at $DIR/match_test.rs:14:9: 14:16
|
||||
falseEdge -> [real: bb12, imaginary: bb8]; // scope 2 at $DIR/match_test.rs:14:9: 14:16
|
||||
}
|
||||
|
||||
bb7: {
|
||||
@@ -106,7 +106,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb8: {
|
||||
falseEdges -> [real: bb13, imaginary: bb3]; // scope 2 at $DIR/match_test.rs:15:9: 15:11
|
||||
falseEdge -> [real: bb13, imaginary: bb3]; // scope 2 at $DIR/match_test.rs:15:9: 15:11
|
||||
}
|
||||
|
||||
bb9: {
|
||||
@@ -131,7 +131,7 @@ fn main() -> () {
|
||||
|
||||
bb11: {
|
||||
StorageDead(_9); // scope 2 at $DIR/match_test.rs:13:24: 13:25
|
||||
falseEdges -> [real: bb3, imaginary: bb6]; // scope 2 at $DIR/match_test.rs:13:18: 13:19
|
||||
falseEdge -> [real: bb3, imaginary: bb6]; // scope 2 at $DIR/match_test.rs:13:18: 13:19
|
||||
}
|
||||
|
||||
bb12: {
|
||||
|
||||
@@ -102,7 +102,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb3: {
|
||||
falseEdges -> [real: bb5, imaginary: bb4]; // bb3[0]: scope 3 at $DIR/region-subtyping-basic.rs:20:5: 24:6
|
||||
falseEdge -> [real: bb5, imaginary: bb4]; // bb3[0]: scope 3 at $DIR/region-subtyping-basic.rs:20:5: 24:6
|
||||
}
|
||||
|
||||
bb4: {
|
||||
|
||||
@@ -102,7 +102,7 @@ fn main() -> () {
|
||||
}
|
||||
|
||||
bb3: {
|
||||
falseEdges -> [real: bb5, imaginary: bb4]; // bb3[0]: scope 3 at $DIR/region-subtyping-basic.rs:20:5: 24:6
|
||||
falseEdge -> [real: bb5, imaginary: bb4]; // bb3[0]: scope 3 at $DIR/region-subtyping-basic.rs:20:5: 24:6
|
||||
}
|
||||
|
||||
bb4: {
|
||||
|
||||
@@ -14,7 +14,7 @@ fn match_bool(_1: bool) -> usize {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/simple-match.rs:7:9: 7:13
|
||||
falseEdge -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/simple-match.rs:7:9: 7:13
|
||||
}
|
||||
|
||||
bb3: {
|
||||
|
||||
@@ -14,7 +14,7 @@ fn match_bool(_1: bool) -> usize {
|
||||
}
|
||||
|
||||
bb2: {
|
||||
falseEdges -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/simple-match.rs:7:9: 7:13
|
||||
falseEdge -> [real: bb4, imaginary: bb3]; // scope 0 at $DIR/simple-match.rs:7:9: 7:13
|
||||
}
|
||||
|
||||
bb3: {
|
||||
|
||||
@@ -45,9 +45,9 @@
|
||||
}
|
||||
|
||||
- bb6: {
|
||||
- falseEdges -> [real: bb8, imaginary: bb7]; // scope 0 at $DIR/simplify_cfg.rs:7:9: 9:10
|
||||
- falseEdge -> [real: bb8, imaginary: bb7]; // scope 0 at $DIR/simplify_cfg.rs:7:9: 9:10
|
||||
+ bb4: {
|
||||
+ falseEdges -> [real: bb6, imaginary: bb5]; // scope 0 at $DIR/simplify_cfg.rs:7:9: 9:10
|
||||
+ falseEdge -> [real: bb6, imaginary: bb5]; // scope 0 at $DIR/simplify_cfg.rs:7:9: 9:10
|
||||
}
|
||||
|
||||
- bb7: {
|
||||
|
||||
Reference in New Issue
Block a user